@luminocity/lemonate-gateway 8.2.26 → 8.2.27

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.
@@ -1,4 +1,4 @@
1
- !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("short-unique-id"),require("axios"),require("axios-retry"),require("isomorphic-ws"),require("form-data"),require("jszip")):"function"==typeof define&&define.amd?define(["exports","short-unique-id","axios","axios-retry","isomorphic-ws","form-data","jszip"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self)["lemonate-gateway"]={},e["short-unique-id"],e.axios,e["axios-retry"],e["isomorphic-ws"],e["form-data"],e.jszip)}(this,(function(e,t,a,n,i,r,s){"use strict";class o{func;owner;constructor(e,t){this.func=e,this.owner=t}}class l{_debugMode=!1;_listeners=new Map;_onceListeners=new Map;_catchAllListeners=[];_capturedEvents=new Map;_capturedAccumulatedDuration=0;constructor(){}setDebugMode(e){this._debugMode&&!e&&(console.log("Captured events: ",this._capturedEvents),console.log(`Total duration: ${this._capturedAccumulatedDuration}ms`)),this._debugMode=e,this._capturedEvents=new Map,this._capturedAccumulatedDuration=0}$clear(){this._listeners.clear(),this._onceListeners.clear()}clearCatchAllListeners(){this._catchAllListeners=[]}listenerCount(e){let t=0;return t+=this._listeners.get(e)?.length||0,t+=this._onceListeners.get(e)?.length||0,t}$hasListener(e){return this.listenerCount(e)>0}$catchAll(e,t){this._catchAllListeners.push(new o(e,t))}$on(e,t,a){let n;this._listeners.has(e)?n=this._listeners.get(e):(n=[],this._listeners.set(e,n)),n.push(new o(t,a))}$once(e,t,a){let n;this._onceListeners.has(e)?n=this._onceListeners.get(e):(n=[],this._onceListeners.set(e,n)),n.push(new o(t,a))}$off(e,t,a){let n=0;if(this._listeners.has(e)){n+=this._listeners.get(e).removeByFilterFunc((e=>e.func===t&&e.owner===a))}if(this._onceListeners.has(e)){n+=this._onceListeners.get(e).removeByFilterFunc((e=>e.func===t&&e.owner===a))}return n}$offByOwner(e,t){let a=0;if(this._listeners.has(e)){a+=this._listeners.get(e).removeByFilterFunc((e=>e.owner===t))}if(this._onceListeners.has(e)){a+=this._onceListeners.get(e).removeByFilterFunc((e=>e.owner===t))}return a}$emitSync(e,...t){const a=[],n=performance.now();let i=0;try{for(const n of this._catchAllListeners.values())try{const r=n.func.call(n.owner,e,...t);r&&r.then&&a.push(r),i++}catch(e){console.error(e)}if(this._listeners.has(e)){const n=this._listeners.get(e);for(const e of n)try{const n=e.func.call(e.owner,...t);n&&n.then&&a.push(n),i++}catch(e){console.error(e)}}if(this._onceListeners.has(e)){const n=this._onceListeners.get(e);for(const e of n)try{const n=e.func.call(e.owner,...t);n&&n.then&&a.push(n),i++}catch(e){console.error(e)}this._onceListeners.set(e,[])}}catch(e){console.error(e)}if(this._debugMode&&"log"!==e){const t=performance.now(),r=Math.floor(t-n);let s=this._capturedEvents.get(e);s?(s.count++,s.duration+=r,s.promises+=a.length,s.sentTo+=i):(s={eventType:e,count:1,duration:r,promises:a.length,sentTo:i},this._capturedEvents.set(e,s)),r>3&&console.log(`Expensive event ${e}: ${r}ms`)}return a.length>0?Promise.all(a):null}$emit(e,...t){return new Promise((a=>{a(this.$emitSync(e,...t))}))}}const u=new l;class c{type;itemId;elementId;target;prop;value;oldValue;createdAt=Date.now();moveTargetArray;moveTargetArrayIndex;moveTargetElementId;start;length;position;elementsToDelete;field;fieldId;isLink;bundleIndex=0;_undoFunction;_redoFunction;constructor(e,t,a,n,i,r,s){this.type=e,this.itemId=t,this.elementId=a,this.target=n,this.prop=i,this.value=r,this.oldValue=s}async undo(){this._undoFunction&&await this._undoFunction()}async redo(){this._redoFunction&&await this._redoFunction()}setUndoFunction(e){this._undoFunction=e}setRedoFunction(e){this._redoFunction=e}setMoveTarget(e,t,a){this.moveTargetArray=e,this.moveTargetArrayIndex=t,this.moveTargetElementId=a}setRange(e,t){this.start=e,this.length=t}setPosition(e){this.position=e}setElementsToDelete(e){this.elementsToDelete=e}setField(e){this.field=e}setFieldId(e){this.fieldId=e}setIsLink(e){this.isLink=e}clone(){return Object.assign(new c,this)}isWithinMergeDeltaOf(e,t){return Math.abs(e.createdAt-this.createdAt)<=t}isMergeableWith(e,t){if(!this.isWithinMergeDeltaOf(e,t))return!1;const a=e.type===this.type&&e.itemId===this.itemId&&e.elementId===this.elementId&&e.target===this.target&&e.prop===this.prop,n=void 0!==e.value&&void 0!==e.oldValue&&void 0===e.start&&void 0===e.length&&void 0===e.position&&void 0===e.elementsToDelete;return a&&n}merge(e,t){if(!this.isMergeableWith(e,t))return null;let a=this.clone();return a.value=e.value,a.createdAt=e.createdAt,a._redoFunction=e._redoFunction,a}}const d=new t({dictionary:"hex",length:12});let p=(new Date).valueOf();var h={createItemOrBlockID:function(){return d.rnd()},createFieldID:function(){return(p++).toString()},createGUID:function(){return d.rnd()},createGeneratedItemId:function(){return"gen_"+this.createGUID()},toUserFriendlyName:function(e){return e.replace(/_./g,(e=>e.charAt(1).toUpperCase())).replace(/([a-z])([A-Z])/g,"$1 $2").replace(/^(.)/,(e=>e.toUpperCase()))},assert:function(e,t){e||console.error(`ASSERTION FAILED: '${e}' is untrue: ${t}`)},matchItemIdAndObject:(e,t)=>!(!e||!t)&&(e._id===t||e===t._id),getDepth(e,t=new WeakSet){if(null===e||"object"!=typeof e)return 1;const a=e;if(t.has(a))return 0;t.add(a);const n=Array.isArray(a)?a:Object.values(a);let i=0;for(const e of n){const a=this.getDepth(e,t);a>i&&(i=a)}return 1+i},areValuesEqual(e,t,a=3){if(e===t)return!0;if("number"==typeof e&&"number"==typeof t)return isNaN(e)&&isNaN(t);if(null==e||null==t||typeof e!=typeof t)return!1;if("object"!=typeof e)return!1;if(Array.isArray(e)!==Array.isArray(t))return!1;if(e._id&&e._id!==t._id)return!1;const n=Object.keys(e),i=Object.keys(t);if(n.length!==i.length)return!1;for(let i of n){if(!Object.prototype.hasOwnProperty.call(t,i))return!1;if(a>0&&!this.areValuesEqual(e[i],t[i],a-1))return!1}return!0},startTimer(e){const t=Date.now();return e&&console.log(`[TIMER] - ${e}`),function(e){const a=Date.now()-t;e?console.log(`[TIMER] - ${e}: ${a}ms`):console.log(`[TIMER] - ${a}ms`)}},dataURItoBlob(e){const t=e.split(",")[0].split(":")[1].split(";")[0],a=atob(e.split(",")[1]),n=[];for(let e=0;e<a.length;e++)n.push(a.charCodeAt(e));return new Blob([new Uint8Array(n)],{type:t})},xmur3(e){let t=1779033703^e.length;for(let a=0;a<e.length;a++)t=Math.imul(t^e.charCodeAt(a),3432918353),t=t<<13|t>>>19;return()=>(t=Math.imul(t^t>>>16,2246822507),t=Math.imul(t^t>>>13,3266489909),t^=t>>>16,t>>>0)},mulberry32:e=>()=>{let t=e+=1831565813;return t=Math.imul(t^t>>>15,1|t),t^=t+Math.imul(t^t>>>7,61|t),((t^t>>>14)>>>0)/4294967296},hslToRgb(e,t,a){const n=(1-Math.abs(2*a-1))*t,i=e/60,r=n*(1-Math.abs(i%2-1));let[s,o,l]=[0,0,0];[s,o,l]=i>=0&&i<1?[n,r,0]:i<2?[r,n,0]:i<3?[0,n,r]:i<4?[0,r,n]:i<5?[r,0,n]:[n,0,r];const u=a-n/2;return[Math.round(255*(s+u)),Math.round(255*(o+u)),Math.round(255*(l+u))]},rgbToHex:(e,t,a)=>"#"+[e,t,a].map((e=>e.toString(16).padStart(2,"0"))).join(""),colorFromString(e,t={}){const{minS:a=.72,maxS:n=.97,minL:i=.48,maxL:r=.62,return:s="hex"}=t,o=this.xmur3(e)(),l=this.mulberry32(o),u=Math.floor(360*l()),c=a+l()*(n-a),d=i+l()*(r-i);if("hsl"===s)return`hsl(${u} ${Math.round(100*c)}% ${Math.round(100*d)}%)`;const[p,h,f]=this.hslToRgb(u,c,d);return"rgb"===s?`rgb(${p}, ${h}, ${f})`:this.rgbToHex(p,h,f)},async downloadFile(e,t){if(e.startsWith("blob:")){const t=await fetch(e),a=await t.blob();return{data:a,mimeType:a.type}}return a.get(e,{responseType:"blob",onDownloadProgress:e=>{if(t&&e.total){const a=Math.round(100*e.loaded/e.total);t(a,e.total,e.loaded)}}})}};const f=new Set(["dependantFields","conditionFields","dependenciesInitialized","_hidden","_updateConditions","userData"]),m=new Set(["__proto__","__ob__","isSelected","isDirty","options","_hidden","_updateConditions","dependantFields","conditionFields","separatorFields","dependenciesInitialized","order","inject","type","datatype","minValue","maxValue","id","_id","linkableTypes","info","userData"]),y=new Set(["isSelected","isDirty","_hidden","_updateConditions","options","dependantFields","conditionFields","separatorFields","dependenciesInitialized","id","_id","linkableTypes","info","userData"]);class g{suppressDirty=!1;undoManager;_promises=[];_capturePromises=!1;_profiledEvents=[];_profiling=!1;_profilerStartTime=0;_profiledCount=0;static _instance;static get instance(){return this._instance||(this._instance=new this)}constructor(){}suppressDirtyFlag(e){this.suppressDirty=e}setUndoManager(e){this.undoManager=e}isUndoManagerActive(){return this.undoManager?.getEnabled()}_postUndoManagerEvent(e){this.undoManager&&(y.has(e.prop)||this.undoManager.event(e))}setItemDirty(e,t,a,n){this.suppressDirty||e.isDirty||a===n||m.has(t)||e.markDirty()}capturePromise(e){try{return this._capturePromises=!0,e(),Promise.all(this._promises)}finally{this._capturePromises=!1,this._promises=[]}}startProfiling(){this._profiling=!0,this._profiledEvents=[],this._profiledCount=0,this._profilerStartTime=performance.now(),u.setDebugMode(!0)}endProfiling(){const e=performance.now()-this._profilerStartTime;u.setDebugMode(!1),console.log("Profiled events: ",this._profiledEvents),console.log(`Profiling took ${e}ms`)}_addPromise(e){this._capturePromises&&this._promises.push(e)}_proxyObject(e,t,a,n){const i=this;if(!e)throw"_proxyObject(): Object is not defined. Cannot create proxy!";if(!a)throw"_proxyObject(): Item is not defined. Cannot create proxy!";if(!n)throw"_proxyObject(): Options is not defined. Cannot create proxy!";return new Proxy(e,{set:function(r,s,o){if(f.has(s))return Reflect.set(r,s,o);const l=performance.now();let d=i.isUndoManagerActive();const p=Reflect.get(r,s);if(h.areValuesEqual(p,o))return!0;let m=Reflect.set(r,s,o);function y(i,o){const l=new c(n.proxyEventTypeName,a._id,t?t.id:null,r,s,i,o);return n.isField&&(l.setField(e.name),l.setFieldId(e.id)),void 0!==n.isLink&&l.setIsLink(n.isLink),l}n.changeDoesNotMakeItemDirty||(h.matchItemIdAndObject(p,o)?d=!1:i.setItemDirty(a,s,p,o));const g=y(o,p);d&&(g.setUndoFunction((()=>{Reflect.set(r,s,g.oldValue);const e=y(g.oldValue,g.value);u.$emitSync("proxy:valueChange",e),n.changeEventFunc(e)})),g.setRedoFunction((()=>{Reflect.set(r,s,g.value);const e=y(g.value,g.oldValue);u.$emitSync("proxy:valueChange",e),n.changeEventFunc(e)}))),n.changeEventFunc(g),d&&i._postUndoManagerEvent(g),u.$emitSync("proxy:valueChange",g);const b=performance.now();return i._profiledCount++,i._profiledEvents.push({event:g,type:"object",duration:b-l}),m}})}_proxyArray(e,t,a,n){const i=this;if(!e)throw"_proxyArray(): Array is not defined. Cannot create proxy!";if(!a)throw"_proxyArray(): Item is not defined. Cannot create proxy!";if(!n)throw"_proxyArray(): Options is not defined. Cannot create proxy!";return new Proxy(e,{set(e,r,s){const o=performance.now(),l=Reflect.get(e,r);let d=Reflect.set(e,r,s);if("length"!==r&&"__proto__"!==r){const p=i.isUndoManagerActive();function h(i,s){const o=new c("arraySetValue",a._id,t?t.id:null,e,r,i,s);return n.field&&(o.setField(n.field.name),o.setFieldId(n.field.id)),o}n.changeDoesNotMakeItemDirty||i.setItemDirty(a,r,l,s);const f=h(s,l);p&&(f.setUndoFunction((()=>{const t=h(f.oldValue,f.value),a=parseInt(r);if(void 0===f.oldValue&&e.length-1===a){const n=e.pop();t.setElementsToDelete([n]),t.setRange(a,1)}else Reflect.set(e,r,f.oldValue);u.$emitSync("proxy:valueChange",t),n.deleteEventFunc(t)})),f.setRedoFunction((()=>{Reflect.set(e,r,f.value);const t=h(f.value,f.oldValue);u.$emitSync("proxy:valueChange",t),n.addEventFunc(t)}))),n.addEventFunc(f),p&&i._postUndoManagerEvent(f),u.$emitSync("proxy:valueChange",f);const m=performance.now();i._profiledCount++,i._profiledEvents.push({event:f,type:"set_array",duration:m-o})}return d},get(r,s){if("splice"===s){const e=Reflect.get(r,s);return function(...o){const l=o[0],d=o[1],p=[];for(let e=l;e<l+d;e++){const t=r[e];p.push(t)}function h(e,i,s){const o=new c("arraySpliceRemove",a._id,t?t.id:null,r);return n.field&&(o.setField(n.field.name),o.setFieldId(n.field.id)),o.setRange(e,i),o.setElementsToDelete(s),o}function f(e,i){const o=new c("arraySpliceAdd",a._id,t?t.id:null,r,s,i);return n.field&&(o.setField(n.field.name),o.setFieldId(n.field.id)),o.setPosition(e),o}if(e.apply(r,o),i.setItemDirty(a,s,!0,!1),d>0&&o.length<3){const e=i.isUndoManagerActive(),t=h(l,d,p);e&&(t.setUndoFunction((()=>{r.splice(l,0,...p);const e=f(l,p);u.$emitSync("proxy:valueChange",e),n.addEventFunc(e)})),t.setRedoFunction((()=>{r.splice(l,d);const e=h(l,d,p);u.$emitSync("proxy:valueChange",e),n.deleteEventFunc(e)}))),n.deleteEventFunc(t),e&&i._postUndoManagerEvent(t),u.$emitSync("proxy:valueChange",t)}else if(o.length>2){const e=o.slice(2),t=f(l,e);t.setPosition(l),t.setUndoFunction((()=>{r.splice(l,e.length);const t=h(l,e.length,e);u.$emitSync("proxy:valueChange",t),n.deleteEventFunc(t)})),t.setRedoFunction((()=>{r.splice(l,0,...e);const t=f(l,e);u.$emitSync("proxy:valueChange",t),n.addEventFunc(t)})),n.addEventFunc(t),i._postUndoManagerEvent(t),u.$emitSync("proxy:valueChange",t)}}}return"moveToArray"===s?function(e,o,l){const d=r,p=t,{array:h,element:f}=o.getTargetArrayAndElement();function m(e,t,a,n){n=void 0===n?a.length:n;const i=Reflect.get(e,"splice").apply(e,[t,1]);if(i.length>0){const e=i[0];return Reflect.get(a,"splice").apply(a,[n,0,e]),e}return null}const y=m(d,e,h,l);if(y){function g(e,n,i,r,s,o){const l=new c("arrayMoveToArray",a._id,t?t.id:null,e,void 0,o);return l.setRange(n,1),l.setMoveTarget(i,r,s?s.id:null),l}i.setItemDirty(a,s,!0,!1);const b=i.isUndoManagerActive(),v=g(d,e,o,l,f,y);b&&(v.setUndoFunction((()=>{const t=m(h,l,d,e),a=g(o,l,d,e,p,t);u.$emitSync("proxy:valueChange",a),n.moveEventFunc(a)})),v.setRedoFunction((()=>{const t=m(d,e,h,l),a=g(d,e,o,l,f,t);u.$emitSync("proxy:valueChange",a),n.moveEventFunc(a)}))),n.moveEventFunc(v),b&&i._postUndoManagerEvent(v),u.$emitSync("proxy:valueChange",v)}}:"getTargetArrayAndElement"===s?function(){return{array:e,element:t}}:("move"===s&&console.warn("'move' prop is not implemented in Proxifier"),Reflect.get(r,s))}})}proxyBlockArray(e,t,a){return this._proxyArray(e,t,a,{addEventFunc:e=>{this._addPromise(u.$emit("itemRepo:blockAdded",e))},deleteEventFunc:e=>{this._addPromise(u.$emit("itemRepo:blockDeleted",e))},moveEventFunc:e=>{this._addPromise(u.$emit("itemRepo:blockMoved",e))}})}proxyListArray(e,t,a){return this._proxyArray(e,null,a,{field:t,addEventFunc:function(e){u.$emit("itemRepo:listEntryAdded",e)},deleteEventFunc:function(e){u.$emit("itemRepo:listEntryDeleted",e)}})}proxyScriptArray(e,t,a){return this._proxyArray(e,t,a,{addEventFunc:function(e){u.$emit("itemRepo:scriptAdded",e)},deleteEventFunc:function(e){u.$emit("itemRepo:scriptDeleted",e)}})}proxyBlock(e,t){return this._proxyObject(e,e,t,{isLink:!0,changeEventFunc:function(e){u.$emit("itemRepo:fieldChanged",e),u.$emit("itemRepo:linkChanged",e)},proxyEventTypeName:"blockSetValue"})}proxyGraphBlock(e,t){return this._proxyObject(e,e,t,{isLink:!0,changeEventFunc:function(e){u.$emit("itemRepo:graphNodeChanged",e)},proxyEventTypeName:"blockSetValue"})}proxyGraphBlockArray(e,t){return this._proxyArray(e,t,t,{addEventFunc:function(e){u.$emit("itemRepo:graphNodeAdded",e)},deleteEventFunc:function(e){u.$emit("itemRepo:graphNodeDeleted",e)}})}proxyConnection(e,t){return this._proxyObject(e,t,t,{changeEventFunc:function(e){u.$emit("itemRepo:graphConnectionChanged",e)},proxyEventTypeName:"connectionSetValue"})}proxyConnectionArray(e,t){return this._proxyArray(e,e,t,{addEventFunc:function(e){u.$emit("itemRepo:graphConnectionAdded",e)},deleteEventFunc:function(e){u.$emit("itemRepo:graphConnectionDeleted",e)}})}proxyItemField(e,t){const a="Link"===e.type;return this._proxyObject(e,null,t,{isLink:a,isField:!0,changeEventFunc:function(e){u.$emit("itemRepo:fieldChanged",e),a&&u.$emit("itemRepo:linkChanged",e)},proxyEventTypeName:"itemFieldSetValue"})}proxyGraphBlockField(e,t,a){return this._proxyObject(e,t,a,{isLink:"Link"===e.type,isField:!0,changeEventFunc:function(e){u.$emit("itemRepo:graphNodeFieldChanged",e)},proxyEventTypeName:"blockFieldSetValue"})}proxyBlockField(e,t,a){const n="Link"===e.type;return this._proxyObject(e,t,a,{isLink:n,isField:!0,changeEventFunc:function(e){u.$emit("itemRepo:fieldChanged",e),n&&u.$emit("itemRepo:linkChanged",e)},proxyEventTypeName:"blockFieldSetValue"})}proxyScriptItem(e,t,a){return this._proxyObject(e,t,a,{isLink:!0,changeEventFunc:function(e){u.$emit("itemRepo:scriptItemChanged",e)},proxyEventTypeName:"scriptItemSetValue"})}proxyScriptFieldsArray(e,t,a){return this._proxyArray(e,t,a,{addEventFunc:function(e){u.$emit("itemRepo:scriptFieldAdded",e)},deleteEventFunc:function(e){u.$emit("itemRepo:scriptFieldDeleted",e)},changeDoesNotMakeItemDirty:!0})}proxyScriptField(e,t,a){return this._proxyObject(e,t,a,{isLink:!1,isField:!0,changeEventFunc:function(e){u.$emit("itemRepo:scriptFieldChanged",e)},proxyEventTypeName:"itemScriptFieldSetValue",changeDoesNotMakeItemDirty:!1})}proxyCustomFieldsArray(e,t){return this._proxyArray(e,null,t,{addEventFunc:function(e){u.$emit("itemRepo:customFieldAdded",e)},deleteEventFunc:function(e){u.$emit("itemRepo:customFieldDeleted",e)},changeDoesNotMakeItemDirty:!0})}proxyCustomField(e,t){return this._proxyObject(e,null,t,{isLink:!1,isField:!0,changeEventFunc:function(e){u.$emit("itemRepo:customFieldChanged",e)},proxyEventTypeName:"itemCustomFieldSetValue",changeDoesNotMakeItemDirty:!1})}}class b{level;name;times;durations=[];childrenMap=new Map;children=[];parent;constructor(e,t,a,n){this.name=e,this.level=t,this.times=[a],this.parent=n}}class v{startTime=0;endTime=0;startIteration=0;currentLevel=0;root=new b("root",0,0,void 0);currentEntry;active=!1;static _instance;static get instance(){return this._instance||(this._instance=new this)}constructor(){this.currentEntry=this.root}start(){this.startTime=performance.now(),this.startIteration=this.startTime,this.root=new b("root",0,0,void 0),this.currentEntry=this.root,this.currentLevel=0,this.active=!0}end(e=!1){this.active=!1,this.endTime=performance.now()-this.startTime,this.root.durations.push(this.endTime-this.root.times[0]),e&&this.printResults()}_iterate(e,t){e(t=t||this.root);for(const a of t.children)this._iterate(e,a)}getResults(){const e=[];function t(e){return Math.round(1e3*e)/1e3}function a(e){return e.reduce(((e,t)=>e+t),0)}return this._iterate((function(n){const i=t(a(n.times)/n.times.length),r=t(a(n.durations)/n.durations.length),s=t(a(n.durations)),o=t(s-n.children.reduce(((e,t)=>e+a(t.durations)),0));e.push({name:"".padStart(2*n.level," .")+n.name,executions:n.times.length,avgTimeStartMs:i,avgTimeEndMs:t(i+r),avgDurationMs:r,totalDurationMs:s,selfDurationMs:o})})),e}printResults(){console.table(this.getResults(),["name","executions","avgTimeStartMs","avgTimeEndMs","avgDurationMs","totalDurationMs","selfDurationMs"])}newIteration(){this.startIteration=performance.now(),this.currentLevel=0}async asyncBlock(e,t){if(!this.active)return t();let a;try{return a=this.beginBlock(e),await t()}finally{this.endBlock(a)}}block(e,t){if(!this.active)return t();let a;try{return a=this.beginBlock(e),t()}finally{this.endBlock(a)}}beginBlock(e){if(!this.active)return;this.currentLevel++;const t=performance.now()-this.startIteration;let a=this.currentEntry.childrenMap.get(e);return a?a.times.push(t):(a=new b(e,this.currentLevel,t,this.currentEntry),this.currentEntry.children.push(a),this.currentEntry.childrenMap.set(e,a)),this.currentEntry=a,a}endBlock(e){if(!e)return;const t=performance.now()-this.startIteration-e.times[e.times.length-1];e.durations.push(t),this.currentEntry=e.parent,this.currentLevel--}}class _ extends Error{constructor(e,t){super(e),t&&(this.name=t)}toString(){return this.name?`${this.name}: ${this.message}`:this.message}}class w extends _{constructor(e){super(e,"InvalidArgumentException")}}class A extends _{constructor(e){super(e,"RuntimeException")}}class k extends _{constructor(e){super(e,"LoaderException")}}class S extends _{constructor(e){super(e,"QuotaExceededException")}}class N extends _{constructor(e){super(e,"AccessDeniedException")}}let T=class{_id;name;folder;folderPath;links;attributes;userAttributes;filename;createdAt;updatedAt;version;filesize;hash;mimeType;type;packageType;createdBy;updatedBy;acl;visibility;properties;allowConversation;conversation;tags;contributors;description;shortDescription;userAttributeTemplate;categories;attachments;license;quotaUser;quotaGroup;itemSize;totalSize;flags;perceptiveHash;unpackagedSize;location;itemFlag;constructor(e){if(this._id=e._id,this.name=e.name,this.folder=e.folder,this.folderPath=e.folderPath,this.links=[],Array.isArray(e.links))for(const t of e.links)this.links.push({to:t.to,usage:t.usage});this.attributes=JSON.parse(JSON.stringify(e.attributes||{})),this.userAttributes=JSON.parse(JSON.stringify(e.userAttributes||{})),this.filename=e.filename,this.createdAt=e.createdAt,this.updatedAt=e.updatedAt,this.version={major:e.version?.major||0,minor:e.version?.minor||0,revision:e.version?.revision||1},this.filesize=e.filesize,this.hash=e.hash,this.mimeType=e.mimeType,this.type=e.type,this.packageType=e.packageType,this.createdBy=e.createdBy,this.updatedBy=e.updatedBy,this.acl=JSON.parse(JSON.stringify(e.acl||[])),this.visibility=e.visibility,this.properties=JSON.parse(JSON.stringify(e.properties||{})),this.allowConversation=e.allowConversation,this.conversation=e.conversation,this.tags=JSON.parse(JSON.stringify(e.tags||[])),this.contributors=JSON.parse(JSON.stringify(e.contributors||[])),this.description=e.description,this.shortDescription=e.shortDescription,this.userAttributeTemplate=e.userAttributeTemplate,this.categories=e.categories,this.attachments=JSON.parse(JSON.stringify(e.attachments||[])),this.license=e.license,this.quotaUser=e.quotaUser,this.quotaGroup=e.quotaGroup,this.itemSize=e.itemSize,this.totalSize=e.totalSize,this.flags=JSON.parse(JSON.stringify(e.flags||[])),this.perceptiveHash=e.perceptiveHash,this.unpackagedSize=e.unpackagedSize,this.location=e.location,this.itemFlag=JSON.parse(JSON.stringify(e.itemFlag||{}))}};class M extends T{links;thumbnails;fieldSets;fields;userFields;isAggregatedItem=!0;constructor(e){if(super(e),this.links=[],Array.isArray(e.links))for(const t of e.links)this.links.push({to:t.to,usage:t.usage,stopRecursion:t.stopRecursion});this.thumbnails=JSON.parse(JSON.stringify(e.thumbnails||[])),this.fieldSets=JSON.parse(JSON.stringify(e.fieldSets||[])),this.fields=JSON.parse(JSON.stringify(e.fields||[])),this.userFields=JSON.parse(JSON.stringify(e.userFields||[]))}}var x=[{_id:{$oid:"5e6a1ace89707feef5738292"},contentTypes:["model/splat"],fieldSets:[],fields:[],name:"Gaussian Splats",updateRequiresThumbRefresh:!0,creatableEmpty:!1},{_id:{$oid:"5e6a1ace89707feef3748569"},contentTypes:[],fieldSets:[],fields:[{label:"Scenes",type:"Separator"},{elementName:"Scene",fields:[{linkableTypes:["Scene"],type:"Link",usageAs:"Scene",mandatory:!0},{datatype:"Boolean",defaultValue:!0,displayName:"Load",name:"Load",type:"Attribute"},{datatype:"Boolean",defaultValue:!0,displayName:"Active",if:{Load:!0},name:"Active",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Primary",name:"Primary",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Exclude in packages",name:"ExcludeInPackages",type:"Attribute"},{datatype:"Transform",defaultValue:{position:{x:0,y:0,z:0},rotation:{w:1,x:0,y:0,z:0},scale:{x:1,y:1,z:1}},name:"Transform",type:"Attribute"}],name:"Scenes",type:"List"},{label:"Variable Sets",type:"Separator",collapsed:!0},{displayName:"Variable sets",elementName:"Variable set",fields:[{displayName:"Variable set",linkableTypes:["Variable Set"],type:"Link",usageAs:"VariableSet",mandatory:!0},{datatype:"String",defaultValue:"",displayName:"Name",name:"Name",type:"Attribute"}],name:"VariableSets",type:"List"},{label:"Graphics",type:"Separator",collapsed:!0},{datatype:"Enum",defaultValue:"Not defined",displayName:"Aspect ratio",info:"This determines the project's aspect ratio. If not defined, the game will run in the default aspect depending on platform and browser size",name:"AspectRatio",options:["Not defined","Standard (4:3)","Widescreen (16:9)","Ultrawide (21:9)","Custom"],type:"Attribute"},{datatype:"Float",defaultValue:1.3,minValue:.1,maxValue:10,displayName:"Custom Aspect",if:{AspectRatio:"Custom"},name:"CustomAspect",type:"Attribute"},{label:"Physics",type:"Separator",collapsed:!0},{datatype:"Boolean",defaultValue:!1,displayName:"Enabled",name:"PhysicsEnabled",type:"Attribute"},{datatype:"Vector3d",defaultValue:{x:0,y:-9.81,z:0},displayName:"Gravity",if:{PhysicsEnabled:!0},name:"Gravity",type:"Attribute"},{datatype:"LayerMatrix",defaultValue:[[0]],displayName:"Collision matrix",if:{PhysicsEnabled:!0},info:"This controls which physics object interact with which others depending on their layers",name:"CollisionMatrix",type:"Attribute"},{datatype:"StringList",defaultValue:["Default","Terrain","TransparentFX","Water"],displayName:"Layer names",fixedLength:!0,info:"Names of the layers to use with all scenegraph nodes",name:"LayerNames",type:"Attribute"},{label:"Resources",type:"Separator",collapsed:!0},{datatype:"Enum",defaultValue:"After loading everything",displayName:"Start execution",info:"This controls when the engine will start execution of the project in the player",name:"StartExecution",options:["Right away","After loading minimum LOD","After loading everything"],type:"Attribute"},{label:"Controls",type:"Separator",collapsed:!0},{datatype:"Boolean",defaultValue:!1,displayName:"Automatic pointer lock",name:"AutomaticPointerLock",type:"Attribute",info:"Enabling this will cause the mouse pointer to be locked until Escape is pressed"},{label:"Canvas Fonts",type:"Separator",collapsed:!0},{displayName:"Canvas fonts",elementName:"Font",fields:[{displayName:"Font",linkableTypes:["Font"],type:"Link",usageAs:"Font",mandatory:!0}],name:"CanvasFonts",type:"List"}],name:"Project",recursiveLoadStopsHere:!0,updateRequiresThumbRefresh:!1,creatableEmpty:!1},{_id:{$oid:"5e6a1ace24a07f56f3742569"},contentTypes:[],fieldSets:[],fields:[{elementName:"Variable",fields:[{datatype:"String",defaultValue:"Name",displayName:"Name",name:"Name",type:"Attribute"},{datatype:"Enum",defaultValue:"Integer",displayName:"Type",name:"Type",options:["Integer","Float","String","Boolean"],type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Value",if:{Type:"Boolean"},name:"BooleanValue",type:"Attribute"},{datatype:"Integer",defaultValue:0,displayName:"Value",if:{Type:"Integer"},name:"IntegerValue",type:"Attribute"},{datatype:"Float",defaultValue:0,displayName:"Value",if:{Type:"Float"},name:"FloatValue",type:"Attribute"},{datatype:"String",defaultValue:"",displayName:"Value",if:{Type:"String"},name:"StringValue",type:"Attribute"}],name:"Variables",type:"List"}],name:"Variable Set",updateRequiresThumbRefresh:!1,creatableEmpty:!0},{_id:{$oid:"5e6a1ace89707feef9173386"},contentTypes:["audio/mpeg"],fieldSets:[],fields:[{datatype:"Float",defaultValue:1,displayName:"Volume",maxValue:1,minValue:0,name:"Volume",type:"Attribute",widget:"Slider"}],name:"Audio",updateRequiresThumbRefresh:!1,creatableEmpty:!1},{_id:{$oid:"5e6a1acf89707feef917338f"},contentTypes:["*"],fieldSets:[],fields:[],name:"Binary",creatableEmpty:!1},{_id:{$oid:"5e6a1acf89707feef917337f"},contentTypes:["application/vnd.lumino.package"],fieldSets:[],fields:[],name:"Package",creatableEmpty:!1},{_id:{$oid:"5e6a1ad189707feef9173391"},contentTypes:["image/vnd.radiance"],fieldSets:[],fields:[],name:"HDR Image",creatableEmpty:!1},{_id:{$oid:"5e6a1ad189707feef9173392"},contentTypes:["image/png","image/jpeg","image/avif","image/heif"],fieldSets:[],fields:[{datatype:"Enum",defaultValue:"Linear",displayName:"Encoding",name:"Encoding",options:["Linear","sRGB"],type:"Attribute"}],name:"Image",updateRequiresThumbRefresh:!0,creatableEmpty:!1},{_id:{$oid:"5e6a1ad189707feef9173393"},contentTypes:[""],fieldSets:[],fields:[{label:"Type",type:"Separator"},{datatype:"Enum",defaultValue:"Physical",displayName:"Material type",name:"MaterialType",options:["Physical","Shader","Point","Basic","Normal","Toon","Matcap","Lambert","Phong"],type:"Attribute"},{label:"Matcap material options",type:"Separator",if:{MaterialType:"Matcap"}},{displayName:"Matcap map",linkableTypes:["Image"],type:"Link",usageAs:"Matcap",if:{MaterialType:"Matcap"}},{datatype:"Enum",defaultValue:"Repeat",displayName:"Horiz. wrapping",if:{MaterialType:"Matcap",Matcap:{$isset:!0}},name:"MatcapWrapS",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Repeat",displayName:"Vert. wrapping",if:{MaterialType:"Matcap",Matcap:{$isset:!0}},name:"MatcapWrapT",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear",displayName:"Mag filter",if:{MaterialType:"Matcap",Matcap:{$isset:!0}},name:"MatcapMagFilter",options:["Linear","Nearest"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear, Mipmap linear",displayName:"Min Filter",if:{MaterialType:"Matcap",Matcap:{$isset:!0}},name:"MatcapMinFilter",options:["Nearest","Nearest, Mipmap nearest","Nearest, Mipmap linear","Linear","Linear, Mipmap nearest","Linear, Mipmap linear"],type:"Attribute"},{datatype:"Enum",defaultValue:"1x",displayName:"Anisotropy",if:{MaterialType:"Matcap",Matcap:{$isset:!0}},name:"MatcapAnisotropy",options:["1x","2x","4x","8x","16x"],type:"Attribute"},{label:"Toon material options",type:"Separator",if:{MaterialType:"Toon"}},{displayName:"Gradient map",linkableTypes:["Image"],if:{MaterialType:"Toon"},type:"Link",usageAs:"Gradient"},{datatype:"Enum",defaultValue:"Repeat",displayName:"Horiz. wrapping",if:{MaterialType:"Toon",Gradient:{$isset:!0}},name:"GradientWrapS",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Repeat",displayName:"Vert. wrapping",if:{MaterialType:"Toon",Gradient:{$isset:!0}},name:"GradientWrapT",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Nearest",displayName:"Mag filter",if:{MaterialType:"Toon",Gradient:{$isset:!0}},name:"GradientMagFilter",options:["Nearest"],type:"Attribute"},{datatype:"Enum",defaultValue:"Nearest",displayName:"Min Filter",if:{MaterialType:"Toon",Gradient:{$isset:!0}},name:"GradientMinFilter",options:["Nearest"],type:"Attribute"},{datatype:"Enum",defaultValue:"1x",displayName:"Anisotropy",if:{MaterialType:"Toon",Gradient:{$isset:!0}},name:"GradientAnisotropy",options:["1x","2x","4x","8x","16x"],type:"Attribute"},{label:"Basic material options",type:"Separator",if:{MaterialType:"Basic"}},{datatype:"Color",defaultValue:{a:255,b:255,g:255,r:255},displayName:"Color",name:"EmissionColor",type:"Attribute",if:{MaterialType:"Basic"}},{label:"Custom shaders",type:"Separator",if:{MaterialType:"Shader"}},{displayName:"Vertex shader",linkableTypes:["Vertex Shader"],type:"Link",usageAs:"VertexShader",if:{MaterialType:"Shader"}},{displayName:"Pixel shader",linkableTypes:["Pixel Shader"],type:"Link",usageAs:"PixelShader",if:{MaterialType:"Shader"}},{label:"Point rendering",type:"Separator",if:{MaterialType:"Point"}},{datatype:"Float",defaultValue:1,displayName:"Size",if:{MaterialType:"Point"},minValue:0,name:"PointSize",type:"Attribute"},{datatype:"Boolean",defaultValue:!0,displayName:"Size attenuation",if:{MaterialType:"Point"},name:"PointSizeAttenuation",type:"Attribute"},{label:"Attenuation",type:"Separator",if:{MaterialType:"Physical"}},{datatype:"Color",defaultValue:{a:255,b:255,g:255,r:255},displayName:"Color",info:"The color that white light turns into due to absorption when reaching the attenuation distance.",name:"AttenuationColor",type:"Attribute",if:{MaterialType:"Physical"}},{datatype:"Float",defaultValue:1e3,displayName:"Distance",info:"Density of the medium given as the average distance that light travels in the medium before interacting with a particle. The value is given in world space units, and must be greater than zero.",minValue:1e-5,name:"AttenuationDistance",type:"Attribute",if:{MaterialType:"Physical"}},{label:"Diffuse",type:"Separator",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Point"},{MaterialType:"Basic"},{MaterialType:"Toon"},{MaterialType:"Matcap"},{MaterialType:"Lambert"},{MaterialType:"Phong"}]}},{datatype:"Color",defaultValue:{a:255,b:255,g:255,r:255},displayName:"Color",name:"DiffuseColor",type:"Attribute",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Point"},{MaterialType:"Toon"},{MaterialType:"Matcap"},{MaterialType:"Lambert"},{MaterialType:"Phong"}]}},{displayName:"Albedo map",linkableTypes:["Image","Composition","Video"],type:"Link",usageAs:"Albedo",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Point"},{MaterialType:"Basic"},{MaterialType:"Toon"},{MaterialType:"Matcap"},{MaterialType:"Lambert"},{MaterialType:"Phong"}]}},{datatype:"Enum",defaultValue:"Repeat",displayName:"Horiz. wrapping",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Point"},{MaterialType:"Basic"},{MaterialType:"Toon"},{MaterialType:"Matcap"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],Albedo:{$isset:!0}},name:"AlbedoWrapS",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Repeat",displayName:"Vert. wrapping",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Point"},{MaterialType:"Basic"},{MaterialType:"Toon"},{MaterialType:"Matcap"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],Albedo:{$isset:!0}},name:"AlbedoWrapT",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear",displayName:"Mag filter",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Point"},{MaterialType:"Basic"},{MaterialType:"Toon"},{MaterialType:"Matcap"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],Albedo:{$isset:!0}},name:"AlbedoMagFilter",options:["Linear","Nearest"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear, Mipmap linear",displayName:"Min Filter",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Point"},{MaterialType:"Basic"},{MaterialType:"Toon"},{MaterialType:"Matcap"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],Albedo:{$isset:!0}},name:"AlbedoMinFilter",options:["Nearest","Nearest, Mipmap nearest","Nearest, Mipmap linear","Linear","Linear, Mipmap nearest","Linear, Mipmap linear"],type:"Attribute"},{datatype:"Enum",defaultValue:"1x",displayName:"Anisotropy",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Point"},{MaterialType:"Basic"},{MaterialType:"Toon"},{MaterialType:"Matcap"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],Albedo:{$isset:!0}},name:"AlbedoAnisotropy",options:["1x","2x","4x","8x","16x"],type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Vertex Colors",name:"VertexColors",type:"Attribute"},{label:"Transparency",type:"Separator"},{datatype:"Float",defaultValue:0,displayName:"Alpha test",maxValue:1,minValue:0,name:"AlphaTest",type:"Attribute",widget:"Slider"},{datatype:"Boolean",defaultValue:!1,displayName:"Transparent",name:"Transparent",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Opacity",if:{Transparent:!0},maxValue:1,minValue:0,name:"Opacity",type:"Attribute",widget:"Slider"},{displayName:"Alpha map",linkableTypes:["Image"],type:"Link",usageAs:"Alpha",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Point"},{MaterialType:"Basic"},{MaterialType:"Toon"},{MaterialType:"Matcap"},{MaterialType:"Lambert"},{MaterialType:"Phong"}]}},{datatype:"Enum",defaultValue:"Repeat",displayName:"Horiz. wrapping",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Point"},{MaterialType:"Basic"},{MaterialType:"Toon"},{MaterialType:"Matcap"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],Alpha:{$isset:!0}},name:"AlphaWrapS",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Repeat",displayName:"Vert. wrapping",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Point"},{MaterialType:"Basic"},{MaterialType:"Toon"},{MaterialType:"Matcap"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],Alpha:{$isset:!0}},name:"AlphaWrapT",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear",displayName:"Mag filter",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Point"},{MaterialType:"Basic"},{MaterialType:"Toon"},{MaterialType:"Matcap"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],Alpha:{$isset:!0}},name:"AlphaMagFilter",options:["Linear","Nearest"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear, Mipmap linear",displayName:"Min Filter",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Point"},{MaterialType:"Basic"},{MaterialType:"Toon"},{MaterialType:"Matcap"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],Alpha:{$isset:!0}},name:"AlphaMinFilter",options:["Nearest","Nearest, Mipmap nearest","Nearest, Mipmap linear","Linear","Linear, Mipmap nearest","Linear, Mipmap linear"],type:"Attribute"},{datatype:"Enum",defaultValue:"1x",displayName:"Anisotropy",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Point"},{MaterialType:"Basic"},{MaterialType:"Toon"},{MaterialType:"Matcap"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],Alpha:{$isset:!0}},name:"AlphaAnisotropy",options:["1x","2x","4x","8x","16x"],type:"Attribute"},{label:"Emission",type:"Separator",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Toon"},{MaterialType:"Lambert"},{MaterialType:"Phong"}]}},{datatype:"Color",defaultValue:{a:255,b:0,g:0,r:0},displayName:"Color",name:"EmissiveColor",type:"Attribute",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Toon"},{MaterialType:"Lambert"},{MaterialType:"Phong"}]}},{datatype:"Float",defaultValue:1,displayName:"Intensity",maxValue:10,minValue:0,name:"EmissiveIntensity",type:"Attribute",widget:"Slider",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Toon"},{MaterialType:"Lambert"},{MaterialType:"Phong"}]}},{displayName:"Emissive map",linkableTypes:["Image"],type:"Link",usageAs:"Emissive",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Toon"},{MaterialType:"Lambert"},{MaterialType:"Phong"}]}},{datatype:"Enum",defaultValue:"Repeat",displayName:"Horiz. wrapping",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Toon"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],Emissive:{$isset:!0}},name:"EmissiveWrapS",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Repeat",displayName:"Vert. wrapping",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Toon"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],Emissive:{$isset:!0}},name:"EmissiveWrapT",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear",displayName:"Mag filter",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Toon"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],Emissive:{$isset:!0}},name:"EmissiveMagFilter",options:["Linear","Nearest"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear, Mipmap linear",displayName:"Min Filter",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Toon"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],Emissive:{$isset:!0}},name:"EmissiveMinFilter",options:["Nearest","Nearest, Mipmap nearest","Nearest, Mipmap linear","Linear","Linear, Mipmap nearest","Linear, Mipmap linear"],type:"Attribute"},{datatype:"Enum",defaultValue:"1x",displayName:"Anisotropy",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Toon"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],Emissive:{$isset:!0}},name:"EmissiveAnisotropy",options:["1x","2x","4x","8x","16x"],type:"Attribute"},{label:"Sheen",type:"Separator",if:{MaterialType:"Physical"}},{datatype:"Float",defaultValue:0,displayName:"Sheen",maxValue:1,minValue:0,name:"Sheen",type:"Attribute",if:{MaterialType:"Physical"}},{datatype:"Float",defaultValue:0,displayName:"Sheen roughness",maxValue:1,minValue:0,name:"SheenRoughness",type:"Attribute",if:{MaterialType:"Physical"}},{displayName:"Sheen roughness map",linkableTypes:["Image"],type:"Link",usageAs:"SheenRoughnessMap",if:{MaterialType:"Physical"}},{datatype:"Enum",defaultValue:"Repeat",displayName:"Horiz. wrapping",if:{MaterialType:"Physical",SheenRoughnessMap:{$isset:!0}},name:"SheenRoughnessWrapS",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Repeat",displayName:"Vert. wrapping",if:{MaterialType:"Physical",SheenRoughnessMap:{$isset:!0}},name:"SheenRoughnessWrapT",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear",displayName:"Mag filter",if:{MaterialType:"Physical",SheenRoughnessMap:{$isset:!0}},name:"SheenRoughnessMagFilter",options:["Linear","Nearest"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear, Mipmap linear",displayName:"Min Filter",if:{MaterialType:"Physical",SheenRoughnessMap:{$isset:!0}},name:"SheenRoughnessMinFilter",options:["Nearest","Nearest, Mipmap nearest","Nearest, Mipmap linear","Linear","Linear, Mipmap nearest","Linear, Mipmap linear"],type:"Attribute"},{datatype:"Enum",defaultValue:"1x",displayName:"Anisotropy",if:{MaterialType:"Physical",SheenRoughnessMap:{$isset:!0}},name:"SheenRoughnessAnisotropy",options:["1x","2x","4x","8x","16x"],type:"Attribute"},{datatype:"Color",defaultValue:{a:255,b:255,g:255,r:255},displayName:"Sheen color",name:"SheenColor",type:"Attribute",if:{MaterialType:"Physical"}},{displayName:"Sheen color map",linkableTypes:["Image"],type:"Link",usageAs:"SheenColorMap",if:{MaterialType:"Physical"}},{datatype:"Enum",defaultValue:"Repeat",displayName:"Horiz. wrapping",if:{MaterialType:"Physical",SheenColorMap:{$isset:!0}},name:"SheenColorWrapS",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Repeat",displayName:"Vert. wrapping",if:{MaterialType:"Physical",SheenColorMap:{$isset:!0}},name:"SheenColorWrapT",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear",displayName:"Mag filter",if:{MaterialType:"Physical",SheenColorMap:{$isset:!0}},name:"SheenColorMagFilter",options:["Linear","Nearest"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear, Mipmap linear",displayName:"Min Filter",if:{MaterialType:"Physical",SheenColorMap:{$isset:!0}},name:"SheenColorMinFilter",options:["Nearest","Nearest, Mipmap nearest","Nearest, Mipmap linear","Linear","Linear, Mipmap nearest","Linear, Mipmap linear"],type:"Attribute"},{datatype:"Enum",defaultValue:"1x",displayName:"Anisotropy",if:{MaterialType:"Physical",SheenColorMap:{$isset:!0}},name:"SheenColorAnisotropy",options:["1x","2x","4x","8x","16x"],type:"Attribute"},{label:"Normal",type:"Separator",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Normal"},{MaterialType:"Toon"},{MaterialType:"Matcap"},{MaterialType:"Lambert"},{MaterialType:"Phong"}]}},{displayName:"Normal map",linkableTypes:["Image"],type:"Link",usageAs:"Normal",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Normal"},{MaterialType:"Toon"},{MaterialType:"Matcap"},{MaterialType:"Lambert"},{MaterialType:"Phong"}]}},{datatype:"Vector2d",defaultValue:{x:1,y:1},displayName:"Scale",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Normal"},{MaterialType:"Toon"},{MaterialType:"Matcap"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],Normal:{$isset:!0}},maxValue:10,minValue:0,name:"NormalScale2d",type:"Attribute"},{datatype:"Enum",defaultValue:"TangentSpace",displayName:"Type",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Normal"},{MaterialType:"Toon"},{MaterialType:"Matcap"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],Normal:{$isset:!0}},name:"NormalType",options:["TangentSpace","ObjectSpace"],type:"Attribute"},{datatype:"Enum",defaultValue:"Repeat",displayName:"Horiz. wrapping",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Normal"},{MaterialType:"Toon"},{MaterialType:"Matcap"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],Normal:{$isset:!0}},name:"NormalWrapS",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Repeat",displayName:"Vert. wrapping",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Normal"},{MaterialType:"Toon"},{MaterialType:"Matcap"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],Normal:{$isset:!0}},name:"NormalWrapT",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear",displayName:"Mag filter",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Normal"},{MaterialType:"Toon"},{MaterialType:"Matcap"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],Normal:{$isset:!0}},name:"NormalMagFilter",options:["Linear","Nearest"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear, Mipmap linear",displayName:"Min Filter",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Normal"},{MaterialType:"Toon"},{MaterialType:"Matcap"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],Normal:{$isset:!0}},name:"NormalMinFilter",options:["Nearest","Nearest, Mipmap nearest","Nearest, Mipmap linear","Linear","Linear, Mipmap nearest","Linear, Mipmap linear"],type:"Attribute"},{datatype:"Enum",defaultValue:"1x",displayName:"Anisotropy",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Normal"},{MaterialType:"Toon"},{MaterialType:"Matcap"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],Normal:{$isset:!0}},name:"NormalAnisotropy",options:["1x","2x","4x","8x","16x"],type:"Attribute"},{label:"Roughness",type:"Separator",if:{MaterialType:"Physical"}},{datatype:"Float",defaultValue:1,displayName:"Roughness Intensity",maxValue:1,minValue:0,name:"RoughnessIntensity",type:"Attribute",widget:"Slider",if:{MaterialType:"Physical"}},{displayName:"Roughness map",linkableTypes:["Image"],type:"Link",usageAs:"Roughness",if:{MaterialType:"Physical"}},{datatype:"Enum",defaultValue:"Repeat",displayName:"Horiz. wrapping",if:{Roughness:{$isset:!0}},name:"RoughnessWrapS",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Repeat",displayName:"Vert. wrapping",if:{Roughness:{$isset:!0}},name:"RoughnessWrapT",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear",displayName:"Mag filter",if:{Roughness:{$isset:!0}},name:"RoughnessMagFilter",options:["Linear","Nearest"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear, Mipmap linear",displayName:"Min Filter",if:{Roughness:{$isset:!0}},name:"RoughnessMinFilter",options:["Nearest","Nearest, Mipmap nearest","Nearest, Mipmap linear","Linear","Linear, Mipmap nearest","Linear, Mipmap linear"],type:"Attribute"},{datatype:"Enum",defaultValue:"1x",displayName:"Anisotropy",if:{MaterialType:"Physical",Roughness:{$isset:!0}},name:"RoughnessAnisotropy",options:["1x","2x","4x","8x","16x"],type:"Attribute"},{label:"Metalness",type:"Separator",if:{MaterialType:"Physical"}},{datatype:"Float",defaultValue:1,displayName:"Metalness Intensity",maxValue:1,minValue:0,name:"MetalnessIntensity",type:"Attribute",widget:"Slider",if:{MaterialType:"Physical"}},{displayName:"Metalness map",linkableTypes:["Image"],type:"Link",usageAs:"Metalness",if:{MaterialType:"Physical"}},{datatype:"Enum",defaultValue:"Repeat",displayName:"Horiz. wrapping",if:{Metalness:{$isset:!0}},name:"MetalnessWrapS",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Repeat",displayName:"Vert. wrapping",if:{Metalness:{$isset:!0}},name:"MetalnessWrapT",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear",displayName:"Mag filter",if:{Metalness:{$isset:!0}},name:"MetalnessMagFilter",options:["Linear","Nearest"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear, Mipmap linear",displayName:"Min Filter",if:{Metalness:{$isset:!0}},name:"MetalnessMinFilter",options:["Nearest","Nearest, Mipmap nearest","Nearest, Mipmap linear","Linear","Linear, Mipmap nearest","Linear, Mipmap linear"],type:"Attribute"},{datatype:"Enum",defaultValue:"1x",displayName:"Anisotropy",if:{MaterialType:"Physical",Metalness:{$isset:!0}},name:"MetalnessAnisotropy",options:["1x","2x","4x","8x","16x"],type:"Attribute"},{label:"Specular",type:"Separator",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Basic"}]}},{datatype:"Float",defaultValue:1,displayName:"Specular intensity",maxValue:1,minValue:0,name:"SpecularIntensity",type:"Attribute",widget:"Slider",if:{MaterialType:"Physical"}},{displayName:"Specular intensity map",linkableTypes:["Image"],type:"Link",usageAs:"SpecularIntensityMap",if:{MaterialType:"Physical"}},{datatype:"Enum",defaultValue:"Repeat",displayName:"Horiz. wrapping",if:{MaterialType:"Physical",SpecularIntensityMap:{$isset:!0}},name:"SpecularIntensityWrapS",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Repeat",displayName:"Vert. wrapping",if:{MaterialType:"Physical",SpecularIntensityMap:{$isset:!0}},name:"SpecularIntensityWrapT",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear",displayName:"Mag filter",if:{MaterialType:"Physical",SpecularIntensityMap:{$isset:!0}},name:"SpecularIntensityMagFilter",options:["Linear","Nearest"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear, Mipmap linear",displayName:"Min Filter",if:{MaterialType:"Physical",SpecularIntensityMap:{$isset:!0}},name:"SpecularIntensityMinFilter",options:["Nearest","Nearest, Mipmap nearest","Nearest, Mipmap linear","Linear","Linear, Mipmap nearest","Linear, Mipmap linear"],type:"Attribute"},{datatype:"Enum",defaultValue:"1x",displayName:"Anisotropy",if:{MaterialType:"Physical",SpecularIntensityMap:{$isset:!0}},name:"SpecularIntensityAnisotropy",options:["1x","2x","4x","8x","16x"],type:"Attribute"},{datatype:"Color",defaultValue:{a:255,b:255,g:255,r:255},if:{MaterialType:"Physical"},displayName:"Specular color",name:"SpecularColor",type:"Attribute"},{displayName:"Specular color map",linkableTypes:["Image"],if:{MaterialType:"Physical"},type:"Link",usageAs:"SpecularColorMap"},{datatype:"Enum",defaultValue:"Repeat",displayName:"Horiz. wrapping",if:{MaterialType:"Physical",SpecularColorMap:{$isset:!0}},name:"SpecularColorWrapS",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Repeat",displayName:"Vert. wrapping",if:{MaterialType:"Physical",SpecularColorMap:{$isset:!0}},name:"SpecularColorWrapT",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear",displayName:"Mag filter",if:{MaterialType:"Physical",SpecularColorMap:{$isset:!0}},name:"SpecularColorMagFilter",options:["Linear","Nearest"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear, Mipmap linear",displayName:"Min Filter",if:{MaterialType:"Physical",SpecularColorMap:{$isset:!0}},name:"SpecularColorMinFilter",options:["Nearest","Nearest, Mipmap nearest","Nearest, Mipmap linear","Linear","Linear, Mipmap nearest","Linear, Mipmap linear"],type:"Attribute"},{datatype:"Enum",defaultValue:"1x",displayName:"Anisotropy",if:{MaterialType:"Physical",SpecularColorMap:{$isset:!0}},name:"SpecularColorAnisotropy",options:["1x","2x","4x","8x","16x"],type:"Attribute"},{label:"Ambient occlusion",type:"Separator",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Basic"},{MaterialType:"Toon"},{MaterialType:"Lambert"},{MaterialType:"Phong"}]}},{displayName:"Ambient occlusion map",linkableTypes:["Image"],type:"Link",usageAs:"AmbientOcclusion",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Basic"},{MaterialType:"Toon"},{MaterialType:"Lambert"},{MaterialType:"Phong"}]}},{datatype:"Float",defaultValue:1,displayName:"Intensity",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Basic"},{MaterialType:"Toon"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],AmbientOcclusion:{$isset:!0}},maxValue:10,minValue:0,name:"AmbientOcclusionIntensity",type:"Attribute",widget:"Slider"},{datatype:"Enum",defaultValue:"Repeat",displayName:"Horiz. wrapping",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Basic"},{MaterialType:"Toon"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],AmbientOcclusion:{$isset:!0}},name:"AmbientOcclusionWrapS",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Repeat",displayName:"Vert. wrapping",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Basic"},{MaterialType:"Toon"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],AmbientOcclusion:{$isset:!0}},name:"AmbientOcclusionWrapT",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear",displayName:"Mag filter",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Basic"},{MaterialType:"Toon"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],AmbientOcclusion:{$isset:!0}},name:"AmbientOcclusionMagFilter",options:["Linear","Nearest"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear, Mipmap linear",displayName:"Min Filter",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Basic"},{MaterialType:"Toon"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],AmbientOcclusion:{$isset:!0}},name:"AmbientOcclusionMinFilter",options:["Nearest","Nearest, Mipmap nearest","Nearest, Mipmap linear","Linear","Linear, Mipmap nearest","Linear, Mipmap linear"],type:"Attribute"},{datatype:"Enum",defaultValue:"1x",displayName:"Anisotropy",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Basic"},{MaterialType:"Toon"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],AmbientOcclusion:{$isset:!0}},name:"AmbientOcclusionAnisotropy",options:["1x","2x","4x","8x","16x"],type:"Attribute"},{label:"Clearcoat",type:"Separator",if:{MaterialType:"Physical"}},{datatype:"Float",defaultValue:0,displayName:"Intensity",maxValue:1,minValue:0,name:"ClearcoatLevel",type:"Attribute",widget:"Slider",if:{MaterialType:"Physical"}},{displayName:"Clearcoat map",linkableTypes:["Image"],type:"Link",usageAs:"Clearcoat",if:{MaterialType:"Physical"}},{datatype:"Enum",defaultValue:"Repeat",displayName:"Horiz. wrapping",if:{MaterialType:"Physical",Clearcoat:{$isset:!0}},name:"ClearcoatWrapS",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Repeat",displayName:"Vert. wrapping",if:{MaterialType:"Physical",Clearcoat:{$isset:!0}},name:"ClearcoatWrapT",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear",displayName:"Mag filter",if:{MaterialType:"Physical",Clearcoat:{$isset:!0}},name:"ClearcoatMagFilter",options:["Linear","Nearest"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear, Mipmap linear",displayName:"Min Filter",if:{MaterialType:"Physical",Clearcoat:{$isset:!0}},name:"ClearcoatMinFilter",options:["Nearest","Nearest, Mipmap nearest","Nearest, Mipmap linear","Linear","Linear, Mipmap nearest","Linear, Mipmap linear"],type:"Attribute"},{datatype:"Enum",defaultValue:"1x",displayName:"Anisotropy",if:{MaterialType:"Physical",Clearcoat:{$isset:!0}},name:"ClearcoatAnisotropy",options:["1x","2x","4x","8x","16x"],type:"Attribute"},{displayName:"Normal map",linkableTypes:["Image"],type:"Link",usageAs:"ClearcoatNormalMap",if:{MaterialType:"Physical"}},{datatype:"Vector2d",defaultValue:{x:1,y:1},displayName:"Normal scale",if:{MaterialType:"Physical",ClearcoatNormalMap:{$isset:!0}},maxValue:10,minValue:0,name:"ClearcoatNormalScale2d",type:"Attribute",widget:"Slider"},{datatype:"Enum",defaultValue:"Repeat",displayName:"Normal H-wrapping",if:{MaterialType:"Physical",ClearcoatNormalMap:{$isset:!0}},name:"ClearcoatNormalWrapS",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Repeat",displayName:"Normal V-wrapping",if:{MaterialType:"Physical",ClearcoatNormalMap:{$isset:!0}},name:"ClearcoatNormalWrapT",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear",displayName:"Normal mag filter",if:{MaterialType:"Physical",ClearcoatNormalMap:{$isset:!0}},name:"ClearcoatNormalMagFilter",options:["Linear","Nearest"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear, Mipmap linear",displayName:"Normal min Filter",if:{MaterialType:"Physical",ClearcoatNormalMap:{$isset:!0}},name:"ClearcoatNormalMinFilter",options:["Nearest","Nearest, Mipmap nearest","Nearest, Mipmap linear","Linear","Linear, Mipmap nearest","Linear, Mipmap linear"],type:"Attribute"},{datatype:"Enum",defaultValue:"1x",displayName:"Normal Anisotropy",if:{MaterialType:"Physical",ClearcoatNormalMap:{$isset:!0}},name:"ClearcoatNormalAnisotropy",options:["1x","2x","4x","8x","16x"],type:"Attribute"},{datatype:"Float",defaultValue:0,displayName:"Roughness intensity",maxValue:1,minValue:0,name:"ClearcoatRoughness",type:"Attribute",widget:"Slider",if:{MaterialType:"Physical"}},{displayName:"Roughness map",linkableTypes:["Image"],type:"Link",usageAs:"ClearcoatRoughnessMap"},{datatype:"Enum",defaultValue:"Repeat",displayName:"Roughness H-wrapping",if:{MaterialType:"Physical",ClearcoatRoughnessMap:{$isset:!0}},name:"ClearcoatRoughnessWrapS",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Repeat",displayName:"Roughness V-wrapping",if:{MaterialType:"Physical",ClearcoatRoughnessMap:{$isset:!0}},name:"ClearcoatRoughnessWrapT",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear",displayName:"Roughness mag filter",if:{MaterialType:"Physical",ClearcoatRoughnessMap:{$isset:!0}},name:"ClearcoatRoughnessMagFilter",options:["Linear","Nearest"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear, Mipmap linear",displayName:"Roughness min Filter",if:{MaterialType:"Physical",ClearcoatRoughnessMap:{$isset:!0}},name:"ClearcoatRoughnessMinFilter",options:["Nearest","Nearest, Mipmap nearest","Nearest, Mipmap linear","Linear","Linear, Mipmap nearest","Linear, Mipmap linear"],type:"Attribute"},{datatype:"Enum",defaultValue:"1x",displayName:"Roughness Anisotropy",if:{MaterialType:"Physical",ClearcoatRoughnessMap:{$isset:!0}},name:"ClearcoatRoughnessAnisotropy",options:["1x","2x","4x","8x","16x"],type:"Attribute"},{label:"Reflections and Refractions",type:"Separator",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Basic"},{MaterialType:"Lambert"},{MaterialType:"Phong"}]}},{datatype:"Float",defaultValue:.98,displayName:"Refraction ratio",if:{$or:[{MaterialType:"Basic"},{MaterialType:"Lambert"},{MaterialType:"Phong"}]},minValue:0,maxValue:1,name:"RefractionRatio",type:"Attribute"},{datatype:"Float",defaultValue:.5,displayName:"Reflectivity",maxValue:1,minValue:0,name:"Reflectivity",type:"Attribute",widget:"Slider",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Basic"},{MaterialType:"Lambert"},{MaterialType:"Phong"}]}},{datatype:"Float",defaultValue:1.5,displayName:"Index of refraction",maxValue:2.333,minValue:1,name:"IndexOfRefraction",type:"Attribute",widget:"Slider",if:{MaterialType:"Physical"}},{label:"Environment",type:"Separator",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Basic"},{MaterialType:"Lambert"},{MaterialType:"Phong"}]}},{displayName:"Environment map",linkableTypes:["HDR Image"],type:"Link",usageAs:"Environment",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Basic"},{MaterialType:"Lambert"},{MaterialType:"Phong"}]}},{datatype:"Float",defaultValue:1,displayName:"Intensity",if:{$or:[{MaterialType:"Physical"}],Environment:{$isset:!0}},maxValue:10,minValue:0,name:"EnvironmentIntensity",type:"Attribute",widget:"Slider"},{datatype:"Enum",defaultValue:"Multiply",info:"How to combine the result of the surface's color with the environment map, if any. If mix is chosen, the .reflectivity is used to blend between the two colors.",displayName:"Surface combination",name:"SurfaceEnvironmentCombination",options:["Multiply","Mix","Add"],type:"Attribute",if:{$or:[{MaterialType:"Lambert"},{MaterialType:"Basic"},{MaterialType:"Phong"}]}},{label:"Thickness",type:"Separator",if:{MaterialType:"Physical"}},{datatype:"Float",defaultValue:0,displayName:"Thickness",minValue:0,name:"Thickness",type:"Attribute",if:{MaterialType:"Physical"}},{displayName:"Thickness map",linkableTypes:["Image"],type:"Link",usageAs:"ThicknessMap",if:{MaterialType:"Physical"}},{datatype:"Enum",defaultValue:"Repeat",displayName:"Horiz. wrapping",if:{MaterialType:"Physical",ThicknessMap:{$isset:!0}},name:"ThicknessWrapS",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Repeat",displayName:"Vert. wrapping",if:{MaterialType:"Physical",ThicknessMap:{$isset:!0}},name:"ThicknessWrapT",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear",displayName:"Mag filter",if:{MaterialType:"Physical",ThicknessMap:{$isset:!0}},name:"ThicknessMagFilter",options:["Linear","Nearest"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear, Mipmap linear",displayName:"Min Filter",if:{MaterialType:"Physical",ThicknessMap:{$isset:!0}},name:"ThicknessMinFilter",options:["Nearest","Nearest, Mipmap nearest","Nearest, Mipmap linear","Linear","Linear, Mipmap nearest","Linear, Mipmap linear"],type:"Attribute"},{datatype:"Enum",defaultValue:"1x",displayName:"Anisotropy",if:{MaterialType:"Physical",ThicknessMap:{$isset:!0}},name:"ThicknessAnisotropy",options:["1x","2x","4x","8x","16x"],type:"Attribute"},{label:"Displacement",type:"Separator",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Normal"},{MaterialType:"Toon"},{MaterialType:"Matcap"},{MaterialType:"Lambert"},{MaterialType:"Phong"}]}},{displayName:"Displacement map",linkableTypes:["Image"],type:"Link",usageAs:"Displacement",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Normal"},{MaterialType:"Toon"},{MaterialType:"Matcap"},{MaterialType:"Lambert"},{MaterialType:"Phong"}]}},{datatype:"Float",defaultValue:.1,displayName:"Scale",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Normal"},{MaterialType:"Toon"},{MaterialType:"Matcap"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],Displacement:{$isset:!0}},maxValue:10,minValue:0,name:"DisplacementScale",type:"Attribute",widget:"Slider"},{datatype:"Float",defaultValue:0,displayName:"Bias",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Normal"},{MaterialType:"Toon"},{MaterialType:"Matcap"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],Displacement:{$isset:!0}},name:"DisplacementBias",type:"Attribute"},{datatype:"Enum",defaultValue:"Repeat",displayName:"Horiz. wrapping",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Normal"},{MaterialType:"Toon"},{MaterialType:"Matcap"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],Displacement:{$isset:!0}},name:"DisplacementWrapS",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Repeat",displayName:"Vert. wrapping",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Normal"},{MaterialType:"Toon"},{MaterialType:"Matcap"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],Displacement:{$isset:!0}},name:"DisplacementWrapT",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear",displayName:"Mag filter",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Normal"},{MaterialType:"Toon"},{MaterialType:"Matcap"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],Displacement:{$isset:!0}},name:"DisplacementMagFilter",options:["Linear","Nearest"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear, Mipmap linear",displayName:"Min Filter",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Normal"},{MaterialType:"Toon"},{MaterialType:"Matcap"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],Displacement:{$isset:!0}},name:"DisplacementMinFilter",options:["Nearest","Nearest, Mipmap nearest","Nearest, Mipmap linear","Linear","Linear, Mipmap nearest","Linear, Mipmap linear"],type:"Attribute"},{datatype:"Enum",defaultValue:"1x",displayName:"Anisotropy",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Normal"},{MaterialType:"Toon"},{MaterialType:"Matcap"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],Displacement:{$isset:!0}},name:"DisplacementAnisotropy",options:["1x","2x","4x","8x","16x"],type:"Attribute"},{label:"Lightmaps",type:"Separator",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Basic"},{MaterialType:"Toon"},{MaterialType:"Lambert"},{MaterialType:"Phong"}]}},{displayName:"Light map",linkableTypes:["Image"],type:"Link",usageAs:"LightMap",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Basic"},{MaterialType:"Toon"},{MaterialType:"Lambert"},{MaterialType:"Phong"}]}},{datatype:"Float",defaultValue:1,displayName:"Intensity",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Basic"},{MaterialType:"Toon"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],LightMap:{$isset:!0}},maxValue:100,minValue:0,name:"LightMapIntensity",type:"Attribute",widget:"Slider"},{datatype:"Enum",defaultValue:"Repeat",displayName:"Horiz. wrapping",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Basic"},{MaterialType:"Toon"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],LightMap:{$isset:!0}},name:"LightMapWrapS",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Repeat",displayName:"Vert. wrapping",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Basic"},{MaterialType:"Toon"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],LightMap:{$isset:!0}},name:"LightMapWrapT",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear",displayName:"Mag filter",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Basic"},{MaterialType:"Toon"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],LightMap:{$isset:!0}},name:"LightMapMagFilter",options:["Linear","Nearest"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear, Mipmap linear",displayName:"Min Filter",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Basic"},{MaterialType:"Toon"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],LightMap:{$isset:!0}},name:"LightMapMinFilter",options:["Nearest","Nearest, Mipmap nearest","Nearest, Mipmap linear","Linear","Linear, Mipmap nearest","Linear, Mipmap linear"],type:"Attribute"},{datatype:"Enum",defaultValue:"1x",displayName:"Anisotropy",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Basic"},{MaterialType:"Toon"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],LightMap:{$isset:!0}},name:"LightMapAnisotropy",options:["1x","2x","4x","8x","16x"],type:"Attribute"},{label:"Specular map options",type:"Separator",if:{$or:[{MaterialType:"Basic"},{MaterialType:"Lambert"},{MaterialType:"Phong"}]}},{datatype:"Float",defaultValue:30,displayName:"Shininess",minValue:0,name:"Shininess",type:"Attribute",widget:"Slider",if:{$or:[{MaterialType:"Phong"}]}},{datatype:"Color",defaultValue:{a:255,b:255,g:255,r:255},if:{MaterialType:"Phong"},displayName:"Specular color",name:"SpecularColor",type:"Attribute"},{displayName:"Specular map",linkableTypes:["Image"],if:{$or:[{MaterialType:"Basic"},{MaterialType:"Lambert"},{MaterialType:"Phong"}]},type:"Link",usageAs:"SpecularMap"},{datatype:"Enum",defaultValue:"Repeat",displayName:"Horiz. wrapping",if:{$or:[{MaterialType:"Basic"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],SpecularMap:{$isset:!0}},name:"SpecularWrapS",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Repeat",displayName:"Vert. wrapping",if:{$or:[{MaterialType:"Basic"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],SpecularMap:{$isset:!0}},name:"SpecularWrapT",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear",displayName:"Mag filter",if:{$or:[{MaterialType:"Basic"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],SpecularMap:{$isset:!0}},name:"SpecularMagFilter",options:["Linear","Nearest"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear, Mipmap linear",displayName:"Min Filter",if:{$or:[{MaterialType:"Basic"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],SpecularMap:{$isset:!0}},name:"SpecularMinFilter",options:["Nearest","Nearest, Mipmap nearest","Nearest, Mipmap linear","Linear","Linear, Mipmap nearest","Linear, Mipmap linear"],type:"Attribute"},{datatype:"Enum",defaultValue:"1x",displayName:"Anisotropy",if:{$or:[{MaterialType:"Basic"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],SpecularMap:{$isset:!0}},name:"SpecularAnisotropy",options:["1x","2x","4x","8x","16x"],type:"Attribute"},{label:"Transmission",type:"Separator",if:{MaterialType:"Physical"}},{datatype:"Float",defaultValue:0,displayName:"Intensity",maxValue:1,minValue:0,name:"Transmission",type:"Attribute",widget:"Slider",if:{MaterialType:"Physical"}},{displayName:"Transmission map",linkableTypes:["Image"],type:"Link",usageAs:"TransmissionMap",if:{MaterialType:"Physical"}},{datatype:"Enum",defaultValue:"Repeat",displayName:"Horiz. wrapping",if:{MaterialType:"Physical",TransmissionMap:{$isset:!0}},name:"TransmissionWrapS",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Repeat",displayName:"Vert. wrapping",if:{MaterialType:"Physical",TransmissionMap:{$isset:!0}},name:"TransmissionWrapT",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear",displayName:"Mag filter",if:{MaterialType:"Physical",TransmissionMap:{$isset:!0}},name:"TransmissionMagFilter",options:["Linear","Nearest"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear, Mipmap linear",displayName:"Min Filter",if:{MaterialType:"Physical",TransmissionMap:{$isset:!0}},name:"TransmissionMinFilter",options:["Nearest","Nearest, Mipmap nearest","Nearest, Mipmap linear","Linear","Linear, Mipmap nearest","Linear, Mipmap linear"],type:"Attribute"},{datatype:"Enum",defaultValue:"1x",displayName:"Anisotropy",if:{MaterialType:"Physical",TransmissionMap:{$isset:!0}},name:"TransmissionAnisotropy",options:["1x","2x","4x","8x","16x"],type:"Attribute"},{label:"Blending",type:"Separator"},{datatype:"Enum",defaultValue:"Normal",displayName:"Mode",name:"Blending",options:["None","Normal","Additive","Subtractive","Multiply","Custom"],type:"Attribute"},{datatype:"Enum",defaultValue:"Source alpha",displayName:"Source",name:"BlendSrc",options:["Zero","One","Source color","One minus source color","Source alpha","One minus source alpha","Destination alpha","One minus destination alpha","Destination color","One minus destination color","Source alpha saturate"],type:"Attribute",if:{Blending:"Custom"}},{datatype:"Enum",defaultValue:"One minus source alpha",displayName:"Destination",name:"BlendDest",options:["Zero","One","Source color","One minus source color","Source alpha","One minus source alpha","Destination alpha","One minus destination alpha","Destination color","One minus destination color"],type:"Attribute",if:{Blending:"Custom"}},{datatype:"Enum",defaultValue:"Add",displayName:"Equation",name:"BlendEquation",options:["Add","Subtract","Reverse subtract","Min","Max"],type:"Attribute",if:{Blending:"Custom"}},{label:"Depth test",type:"Separator"},{datatype:"Boolean",defaultValue:!0,displayName:"Active",name:"DepthTest",type:"Attribute"},{datatype:"Boolean",defaultValue:!0,displayName:"Write",if:{DepthTest:!0},name:"DepthWrite",type:"Attribute"},{datatype:"Enum",defaultValue:"Less/equal",displayName:"Mode",if:{DepthTest:!0},name:"DepthMode",options:["Never","Always","Less","Less/equal","Greater/equal","Greater","Not equal"],type:"Attribute"},{label:"Culling",type:"Separator"},{datatype:"Enum",defaultValue:"Back",displayName:"Mode",name:"Culling",options:["Front","Back","Off"],type:"Attribute"},{label:"Flat shading",type:"Separator",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Normal"},{MaterialType:"Matcap"},{MaterialType:"Lambert"},{MaterialType:"Phong"}]}},{datatype:"Boolean",defaultValue:!1,displayName:"Active",name:"FlatShading",type:"Attribute",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Normal"},{MaterialType:"Matcap"},{MaterialType:"Lambert"},{MaterialType:"Phong"}]}},{label:"Wireframe",type:"Separator",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Basic"},{MaterialType:"Normal"},{MaterialType:"Toon"},{MaterialType:"Shader"},{MaterialType:"Lambert"},{MaterialType:"Phong"}]}},{datatype:"Boolean",defaultValue:!1,displayName:"Wireframe",name:"Wireframe",type:"Attribute",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Basic"},{MaterialType:"Normal"},{MaterialType:"Toon"},{MaterialType:"Shader"},{MaterialType:"Lambert"},{MaterialType:"Phong"}]}}],name:"Material",updateRequiresThumbRefresh:!0,creatableEmpty:!0},{_id:{$oid:"5e6a1ad189707feef9173394"},contentTypes:["model/obj","model/gltf-binary","model/vnd.usdz+zip","model/draco","model/ply","model/fbx"],fieldSets:[],fields:[{linkableTypes:["Material"],type:"Link",usageAs:"Material"},{doesNotAffectThumbnail:!0,linkableTypes:["Mesh"],loadingManager:"ignore",preload:!1,type:"Link",usageAs:"USDZ"},{doesNotAffectThumbnail:!0,linkableTypes:["Mesh"],loadingManager:"ignore",preload:!1,type:"Link",usageAs:"GLB"},{datatype:"Vector3d",defaultValue:{x:0,y:0,z:0},name:"Pivot",type:"Attribute"},{datatype:"Transform",defaultValue:{position:{x:0,y:0,z:0},rotation:{w:1,x:0,y:0,z:0},scale:{x:1,y:1,z:1}},name:"DefaultTransform",displayName:"Default transform",type:"Attribute"}],name:"Mesh",updateRequiresThumbRefresh:!0,creatableEmpty:!1},{_id:{$oid:"5e6a1ad189707feef9173396"},contentTypes:[""],fields:[{label:"Camera & Composition",type:"Separator"},{datatype:"Enum",defaultValue:"Automatic user controllable camera",displayName:"Camera mode",info:"Camera to render during playback. The main camera is the one with the 'mainCamera' Tag or if only one camera exists, that is the one. Composer setting will render whatever the composition defines.",name:"CameraMode",options:["Automatic user controllable camera","Main camera","Composer"],type:"Attribute"},{linkableTypes:["Composition"],type:"Link",if:{CameraMode:"Composer"},usageAs:"Composition",mandatory:!0},{label:"Environment & Background",type:"Separator"},{datatype:"Enum",defaultValue:"None",displayName:"Background mode",name:"BackgroundMode",options:["None","Color","Image","Environment map","Shader"],type:"Attribute"},{datatype:"Float",defaultValue:0,displayName:"Background blurriness",if:{BackgroundMode:"Environment map"},maxValue:1,minValue:0,name:"BackgroundBlurriness",type:"Attribute",widget:"Slider"},{datatype:"Float",defaultValue:1,displayName:"Background intensity",if:{$or:[{BackgroundMode:"Image"},{BackgroundMode:"Environment map"}]},maxValue:10,minValue:0,name:"BackgroundIntensity",type:"Attribute",widget:"Slider"},{displayName:"Background shader",if:{BackgroundMode:"Shader"},linkableTypes:["Background Shader"],type:"Link",usageAs:"BackgroundShader",mandatory:!0},{displayName:"Background image",if:{BackgroundMode:"Image"},linkableTypes:["Image"],type:"Link",usageAs:"Background",mandatory:!0},{datatype:"Color",defaultValue:{a:255,b:255,g:255,r:255},displayName:"Background color",if:{BackgroundMode:"Color"},name:"BackgroundColor",type:"Attribute"},{displayName:"Environment map",linkableTypes:["HDR Image"],type:"Link",usageAs:"Environment"},{datatype:"Float",defaultValue:1,displayName:"Environment intensity",maxValue:10,minValue:0,name:"EnvironmentIntensity",type:"Attribute",widget:"Slider"},{datatype:"Color",defaultValue:{a:255,b:0,g:0,r:0},displayName:"Clear color",name:"ClearColor",type:"Attribute"},{label:"Rendering",type:"Separator",collapsed:!1},{datatype:"Enum",defaultValue:"PCF Shadow Map",displayName:"Shadow type",name:"ShadowType",options:["Basic Shadow Map","PCF Shadow Map","VSM Shadow Map"],type:"Attribute"}],name:"Scene",updateRequiresThumbRefresh:!0,inherits:"Prefab",creatableEmpty:!0},{_id:{$oid:"5e6a1ad189707fcef4252336"},contentTypes:[""],fieldSets:[{fields:[{label:"3D Object",type:"Separator"},{datatype:"Boolean",defaultValue:!0,displayName:"Active",info:"Indicates if the 3D object is currently active or inactive. When set to true, the object is active.",name:"Active",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Static",info:"A Boolean attribute indicating whether the 3D object is static or not. Static objects can and will never be transformed during runtime.",name:"Static",type:"Attribute"},{datatype:"String",defaultValue:"",displayName:"Name",info:"Specifies the name of the 3D object. This is used for identification and reference in the scene.",name:"Name",type:"Attribute"},{datatype:"Transform",defaultValue:{position:{x:0,y:0,z:0},rotation:{w:1,x:0,y:0,z:0},scale:{x:1,y:1,z:1}},info:"Describes the object's transformation attributes including its position, rotation, and scale in the 3D space.",name:"Transform",type:"Attribute"},{type:"Label",text:"Changing scale in transforms for physics enabled objects is not recommended. Not all objects fully support it. Keep it at least uniform!",labelType:"warning",if:{"PhysicsEnabled?":!0,$or:[{"Transform.scale.x":{$not:1}},{"Transform.scale.y":{$not:1}},{"Transform.scale.z":{$not:1}}]}},{datatype:"Layers",defaultValue:[0],info:"Defines the layers that the 3D object is part of. Layers are used for managing object interactions and visibility in the scene.",name:"Layers",type:"Attribute"},{datatype:"Tags",defaultValue:[],info:"Lists tags associated with the 3D object. Tags are useful for categorizing and searching objects in the scene.",name:"Tags",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Receive shadow",info:"Determines whether the object can receive shadows from other objects. Set to true if the object should display shadows cast upon it.",name:"ReceiveShadow",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Cast shadow",info:"Controls whether the object casts shadows in the presence of light sources. Set to true to enable shadow casting from this object.",name:"CastShadow",type:"Attribute"},{datatype:"Boolean",defaultValue:!0,displayName:"Rendered",info:"Indicates if the 3D object is being rendered.",name:"Rendered",type:"Attribute"}],name:"3dObjectDefault"},{fields:[{label:"3D Object",type:"Separator"},{datatype:"Boolean",defaultValue:!0,displayName:"Active",info:"A Boolean attribute indicating whether the 3D object is active or not. When set to true, the object is considered active in the scene.",name:"Active",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Static",info:"A Boolean attribute indicating whether the 3D object is static or not. Static objects can and will never be transformed during runtime.",name:"Static",type:"Attribute"},{datatype:"String",defaultValue:"",displayName:"Name",info:"A string attribute representing the name of the 3D object. It is used to identify and reference the object within the scene.",name:"Name",type:"Attribute"},{datatype:"Transform",defaultValue:{position:{x:0,y:0,z:0},rotation:{w:1,x:0,y:0,z:0},scale:{x:1,y:1,z:1}},info:"Specifies the transformation properties of the 3D object, including its position, rotation, and scale in the scene.",name:"Transform",type:"Attribute"},{datatype:"Layers",defaultValue:[0],info:"Determines the layers the 3D object belongs to. Layers are used to organize objects in the scene for various purposes like rendering and interaction.",name:"Layers",type:"Attribute"},{datatype:"Tags",defaultValue:[],info:"A list of tags associated with the 3D object. Tags are used for categorizing and identifying objects for scripting and scene management.",name:"Tags",type:"Attribute"},{datatype:"Boolean",defaultValue:!0,displayName:"Rendered",info:"Indicates if the 3D object is being rendered.",name:"Rendered",type:"Attribute"}],name:"3dObjectNoShadows"},{fields:[{label:"Physics",type:"Separator"},{datatype:"Boolean",defaultValue:!1,displayName:"Physics enabled",info:"A Boolean attribute that determines whether physics properties are applied to the object. Disabling it turns off physics calculations.",name:"PhysicsEnabled",type:"Attribute"},{datatype:"Enum",defaultValue:"Rigid body",displayName:"Body type",if:{PhysicsEnabled:!0},name:"BodyType",options:["Rigid body","Soft body","Ghost object"],type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Separate subobjects",if:{BodyType:"Rigid body",PhysicsEnabled:!0},info:"When adding all subobjects of the mesh separately, they will all act individually. We lose however also the possibility to control and watch them as a single object. The configured mass will be distributed among all subobjects",name:"SeparateSubobjects",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Mass",if:{BodyType:{$not:"Ghost object"},PhysicsEnabled:!0},info:"Specifies the mass of the object as a float value. The mass must be a non-negative value.",minValue:0,name:"Mass",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Pressure",if:{BodyType:"Soft body",PhysicsEnabled:!0},info:"Specifies the pressure of the soft body as a float value. The pressure must be a non-negative value.",minValue:0,name:"Pressure",type:"Attribute"},{datatype:"Float",defaultValue:.01,displayName:"Damping",if:{BodyType:"Soft body",PhysicsEnabled:!0},info:"Specifies the damping of the soft body.",minValue:0,name:"Damping",type:"Attribute"},{datatype:"Float",defaultValue:.04,displayName:"Margin",if:{BodyType:{$not:"Ghost object"},PhysicsEnabled:!0},info:"Defines the margin of the object for physics calculations as a float value. The margin is a non-negative value.",minValue:0,name:"Margin",type:"Attribute"},{datatype:"Float",defaultValue:.1,displayName:"Restitution",if:{BodyType:{$not:"Ghost object"},PhysicsEnabled:!0},info:"Determines the restitution (bounciness) of the object. It's a float value affecting how the object bounces upon impact.",name:"Restitution",type:"Attribute"},{datatype:"Float",defaultValue:.1,displayName:"Friction",if:{BodyType:{$not:"Ghost object"},PhysicsEnabled:!0},info:"Sets the friction coefficient of the object. It's a float value, affecting how the object slides against other surfaces.",name:"Friction",type:"Attribute"},{datatype:"Float",defaultValue:.1,displayName:"Spinning friction",if:{BodyType:{$not:"Ghost object"},PhysicsEnabled:!0},info:"Defines the spinning friction of the object as a float value, affecting the object's rotational resistance.",name:"SpinningFriction",type:"Attribute"},{datatype:"Float",defaultValue:.1,displayName:"Rolling friction",if:{BodyType:{$not:"Ghost object"},PhysicsEnabled:!0},info:"Specifies the rolling friction of the object. It's a float value that influences how the object rolls over surfaces.",name:"RollingFriction",type:"Attribute"},{datatype:"Float",defaultValue:0,displayName:"Linear damping",if:{BodyType:"Rigid body",PhysicsEnabled:!0},info:"Sets the linear damping.",name:"LinearDamping",type:"Attribute"},{datatype:"Float",defaultValue:0,displayName:"Angular damping",if:{BodyType:"Rigid body",PhysicsEnabled:!0},info:"Sets the angular damping.",name:"AngularDamping",type:"Attribute"},{datatype:"Vector3d",defaultValue:{x:1,y:1,z:1},displayName:"Linear factor",if:{BodyType:"Rigid body",PhysicsEnabled:!0},info:"A Vector3d value that defines the linear factor of the object in terms of x, y, and z axes, controlling how the object moves linearly.",name:"LinearFactor",type:"Attribute"},{datatype:"Vector3d",defaultValue:{x:0,y:0,z:0},displayName:"Linear velocity",if:{BodyType:"Rigid body",PhysicsEnabled:!0},info:"Defines the object's linear velocity using a Vector3d value, representing the velocity along the x, y, and z axes.",name:"LinearVelocity",type:"Attribute"},{datatype:"Vector3d",defaultValue:{x:1,y:1,z:1},displayName:"Angular factor",if:{BodyType:"Rigid body",PhysicsEnabled:!0},info:"A Vector3d attribute that specifies the angular factor of the object, influencing the object's rotation around each axis.",name:"AngularFactor",type:"Attribute"},{datatype:"Vector3d",defaultValue:{x:0,y:0,z:0},displayName:"Angular velocity",if:{BodyType:"Rigid body",PhysicsEnabled:!0},info:"Sets the angular velocity of the object using a Vector3d value, affecting the object's rotational speed.",name:"AngularVelocity",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Is kinematic",if:{BodyType:"Rigid body",PhysicsEnabled:!0,SeparateSubobjects:!1},info:"A Boolean attribute that makes the object kinematic when true, meaning it will not be affected by physics but can still affect other objects.",name:"IsKinematic",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Disable deactivation",if:{BodyType:{$not:"Ghost object"},PhysicsEnabled:!0,$or:[{IsKinematic:!1},{BodyType:"Soft body"}]},info:"When set to true, object will be simulated in physics forever. Otherwise it will be deactivated when not moving anymore",name:"DisableDeactivation",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Watch collisions",if:{BodyType:{$not:"Ghost object"},PhysicsEnabled:!0,SeparateSubobjects:!1},info:"When set to true, enables monitoring of collisions involving the object.",name:"WatchCollisions",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Report contact points",if:{BodyType:{$not:"Ghost object"},PhysicsEnabled:!0,SeparateSubobjects:!1},info:"If set to true, collision events will contain the exact contact points. Only enable if you really need it as it costs performance.",name:"ReportContactPoints",type:"Attribute"},{datatype:"Boolean",defaultValue:!0,displayName:"Filter potential collisions",if:{BodyType:{$not:"Ghost object"},PhysicsEnabled:!0,SeparateSubobjects:!1},info:"The physics engine might report collisions without contact points in cases where objects get close. Filter these out by setting this.",name:"FilterPotentialCollisions",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Watch linear velocity",if:{BodyType:{$not:"Ghost object"},PhysicsEnabled:!0,SeparateSubobjects:!1},info:"Enables the tracking of changes in the object's linear velocity when set to true.",name:"WatchLinearVelocity",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Watch angular velocity",if:{BodyType:{$not:"Ghost object"},PhysicsEnabled:!0,SeparateSubobjects:!1},info:"Allows for the monitoring of changes in the object's angular velocity when enabled.",name:"WatchAngularVelocity",type:"Attribute"},{if:{BodyType:{$not:"Soft body"},PhysicsEnabled:!0},label:"Collider",type:"Separator"},{datatype:"Enum",defaultValue:"Self",displayName:"Collider type",if:{BodyType:{$not:"Soft body"},PhysicsEnabled:!0},name:"ColliderType",options:["Self","Bounding Box","Bounding Sphere","Bounding Cylinder","Capsule","Convex Hull","Custom Mesh"],type:"Attribute"},{datatype:"Enum",defaultValue:"Derive from mesh",displayName:"Capsule size",if:{BodyType:{$not:"Soft body"},ColliderType:"Capsule",PhysicsEnabled:!0},name:"CapsuleSize",options:["Derive from mesh","Manual"],type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Capsule height",if:{BodyType:{$not:"Soft body"},ColliderType:"Capsule",CapsuleSize:"Manual",PhysicsEnabled:!0},name:"CapsuleHeight",minValue:0,type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Capsule radius",if:{BodyType:{$not:"Soft body"},ColliderType:"Capsule",CapsuleSize:"Manual",PhysicsEnabled:!0},name:"CapsuleRadius",minValue:0,type:"Attribute"},{displayName:"Collider mesh",if:{BodyType:{$not:"Soft body"},ColliderType:"Custom Mesh",PhysicsEnabled:!0},linkableTypes:["Mesh","Mesh Collection"],type:"Link",usageAs:"ColliderMesh",mandatory:!0},{datatype:"Enum",defaultValue:"",displayName:"Collection entry",if:{BodyType:{$not:"Soft body"},ColliderType:"Custom Mesh",PhysicsEnabled:!0,$optionsexist:!0},name:"ColliderMeshCollectionEntry",options:[],type:"Attribute"}],name:"Physics"},{fields:[{datatype:"Enum",defaultValue:"Single",displayName:"Source type",name:"SourceType",options:["Single","Collection"],type:"Attribute"},{displayName:"Audio item",if:{SourceType:"Single"},linkableTypes:["Audio"],type:"Link",usageAs:"AudioItem"},{displayName:"Audio collection",if:{SourceType:"Collection"},linkableTypes:["Audio Collection"],type:"Link",usageAs:"AudioCollectionItem"},{datatype:"Enum",defaultValue:"",displayName:"Collection entry",if:{SourceType:"Collection"},name:"AudioCollectionEntry",options:[],type:"Attribute"}],name:"AudioLink"},{fields:[{displayName:"Mesh item",linkableTypes:["Mesh","Mesh Collection"],type:"Link",usageAs:"Mesh",mandatory:!0},{datatype:"Enum",defaultValue:"",displayName:"Collection entry",if:{$optionsexist:!0},name:"MeshCollectionEntry",options:[],type:"Attribute"}],name:"MeshLink"}],fields:[{childTypes:[{fields:[{name:"3dObjectDefault",type:"FieldSet"},{label:"Mesh specific fields",type:"Separator"},{name:"MeshLink",type:"FieldSet"},{datatype:"Enum",defaultValue:"Pivot",name:"OriginMode",displayName:"Origin mode",if:{$or:[{MeshCollectionEntry:{$isset:!0}},{Mesh:{$isset:!0}}]},options:["Pivot","Center","Custom"],type:"Attribute"},{name:"CustomPivot",displayName:"Custom Pivot",type:"Attribute",datatype:"Vector3d",if:{OriginMode:"Custom"},defaultValue:{x:0,y:0,z:0}},{datatype:"Animations",defaultValue:[],displayName:"Animations",if:{$or:[{MeshCollectionEntry:{$isset:!0}},{Mesh:{$isset:!0}}]},name:"Animations",type:"Attribute"},{name:"Physics",type:"FieldSet"}],mainItemField:"Mesh",typeName:"Mesh"},{fields:[{name:"3dObjectDefault",type:"FieldSet"},{label:"ScriptedMesh specific fields",type:"Separator"},{displayName:"Material(s)",linkableTypes:["Material","Material Collection"],type:"Link",usageAs:"Materials"},{datatype:"Boolean",defaultValue:!1,displayName:"Indexed",info:"Indicates if the geometry buffer is indexed.",name:"Indexed",type:"Attribute"},{datatype:"Boolean",defaultValue:!0,displayName:"Have positions",info:"Add a position attribute to the mesh.",name:"HavePositions",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Have normals",info:"Add a normal attribute to the mesh.",name:"HaveNormals",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Have colors",info:"Add a color attribute to the mesh.",name:"HaveColors",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Have UV Coords",info:"Add a UV texture coordinate attribute to the mesh.",name:"HaveUVs",type:"Attribute"},{name:"Physics",type:"FieldSet"}],typeName:"ScriptedMesh"},{fields:[{name:"3dObjectDefault",type:"FieldSet"},{label:"Splats specific fields",type:"Separator"},{linkableTypes:["Gaussian Splats"],type:"Link",usageAs:"Splats",mandatory:!0}],mainItemField:"Splats",typeName:"GaussianSplats"},{fields:[{name:"3dObjectDefault",type:"FieldSet"},{label:"Prefab specific fields",type:"Separator"},{linkableTypes:["Scene","Prefab"],type:"Link",usageAs:"Prefab",mandatory:!0}],mainItemField:"Prefab",typeName:"Prefab"},{fields:[{name:"3dObjectDefault",type:"FieldSet"},{label:"Points specific fields",type:"Separator"},{name:"MeshLink",type:"FieldSet"}],mainItemField:"Mesh",typeName:"Points"},{fields:[{name:"3dObjectNoShadows",type:"FieldSet"},{label:"Lightsource specific fields",type:"Separator"},{datatype:"Enum",defaultValue:"Point",name:"Type",options:["Point","Directional","Ambient","Hemisphere","Spot"],type:"Attribute"},{datatype:"Color",defaultValue:{a:255,b:255,g:255,r:255},name:"Color",type:"Attribute"},{datatype:"Color",defaultValue:{a:255,b:64,g:64,r:64},displayName:"Ground color (Hemisphere)",if:{Type:"Hemisphere"},name:"GroundColor",type:"Attribute"},{datatype:"Float",defaultValue:10,minValue:0,name:"Intensity",type:"Attribute"},{datatype:"Float",defaultValue:100,if:{$or:[{Type:"Spot"},{Type:"Point"}]},minValue:0,name:"Distance",type:"Attribute"},{datatype:"Float",defaultValue:2,if:{$or:[{Type:"Spot"},{Type:"Point"}]},minValue:1,name:"Decay",type:"Attribute"},{datatype:"Float",defaultValue:.5,displayName:"Angle",if:{Type:"Spot"},maxValue:1.57,minValue:0,name:"Angle",type:"Attribute"},{datatype:"Float",defaultValue:0,displayName:"Penumbra",if:{Type:"Spot"},maxValue:1,minValue:0,name:"Penumbra",type:"Attribute"},{datatype:"Node",defaultValue:null,displayName:"Target",if:{$or:[{Type:"Spot"},{Type:"Directional"}]},name:"Target",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Cast shadows",name:"CastShadows",type:"Attribute",if:{$or:[{Type:"Point"},{Type:"Directional"},{Type:"Spot"}]}},{datatype:"Float",defaultValue:0,displayName:"Shadow bias",if:{CastShadows:!0,$or:[{Type:"Point"},{Type:"Directional"},{Type:"Spot"}]},maxValue:1,minValue:-1,name:"ShadowBias",type:"Attribute",widget:"Slider"},{datatype:"Enum",defaultValue:512,displayName:"Shadow size",if:{CastShadows:!0,$or:[{Type:"Point"},{Type:"Directional"},{Type:"Spot"}]},name:"ShadowSize",options:[128,256,512,1024,2048],type:"Attribute"},{datatype:"Float",defaultValue:.5,displayName:"Shadow camera near",if:{CastShadows:!0,$or:[{Type:"Point"},{Type:"Directional"},{Type:"Spot"}]},minValue:0,name:"ShadowCameraNear",type:"Attribute"},{datatype:"Float",defaultValue:500,displayName:"Shadow camera far",if:{CastShadows:!0,$or:[{Type:"Point"},{Type:"Directional"},{Type:"Spot"}]},minValue:0,name:"ShadowCameraFar",type:"Attribute"},{datatype:"Float",defaultValue:10,displayName:"Shadow area width",if:{CastShadows:!0,Type:"Directional"},minValue:1,name:"ShadowAreaWidth",type:"Attribute"},{datatype:"Float",defaultValue:10,displayName:"Shadow area height",if:{CastShadows:!0,Type:"Directional"},minValue:1,name:"ShadowAreaHeight",type:"Attribute"},{datatype:"Float",defaultValue:4,displayName:"Shadow radius",minValue:0,name:"ShadowRadius",type:"Attribute",if:{CastShadows:!0,$or:[{Type:"Point"},{Type:"Directional"},{Type:"Spot"}]}},{datatype:"Integer",defaultValue:8,displayName:"VSM blur samples",maxValue:32,minValue:1,name:"VsmBlurSamples",type:"Attribute",if:{CastShadows:!0,$or:[{Type:"Point"},{Type:"Directional"},{Type:"Spot"}]}}],typeName:"Lightsource"},{fields:[{label:"3D Object Fields",type:"Separator"},{datatype:"Boolean",defaultValue:!0,displayName:"Active",info:"Indicates if the 3D object is currently active or inactive. When set to true, the object is active.",name:"Active",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Static",info:"A Boolean attribute indicating whether the 3D object is static or not. Static objects can and will never be transformed during runtime.",name:"Static",type:"Attribute"},{datatype:"String",defaultValue:"",displayName:"Name",info:"Specifies the name of the 3D object. This is used for identification and reference in the scene.",name:"Name",type:"Attribute"},{datatype:"Transform",defaultValue:{position:{x:0,y:0,z:0},rotation:{w:1,x:0,y:0,z:0},scale:{x:1,y:1,z:1}},info:"Describes the object's transformation attributes including its position, rotation, and scale in the 3D space.",name:"Transform",type:"Attribute"},{datatype:"Layers",defaultValue:[],name:"Cullmode",info:"Defines the layers that are not visible to the camera.",displayName:"Cull mode",type:"Attribute"},{datatype:"Tags",defaultValue:[],info:"Lists tags associated with the 3D object. Tags are useful for categorizing and searching objects in the scene.",name:"Tags",type:"Attribute"},{label:"Camera specific fields",type:"Separator"},{datatype:"Enum",defaultValue:"Perspective",name:"Type",options:["Perspective","Orthographic"],type:"Attribute"},{datatype:"Float",defaultValue:60,displayName:"Field of view",if:{Type:"Perspective"},maxValue:360,minValue:1,name:"FieldOfView",type:"Attribute"},{datatype:"Float",defaultValue:-1,displayName:"Left",if:{Type:"Orthographic"},name:"Left",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Right",if:{Type:"Orthographic"},name:"Right",type:"Attribute"},{datatype:"Float",defaultValue:-1,displayName:"Top",if:{Type:"Orthographic"},name:"Top",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Bottom",if:{Type:"Orthographic"},name:"Bottom",type:"Attribute"},{datatype:"Float",defaultValue:.1,displayName:"Near plane",minValue:0,name:"NearPlane",type:"Attribute"},{datatype:"Float",defaultValue:1e3,displayName:"Far plane",minValue:0,name:"FarPlane",type:"Attribute"},{datatype:"Enum",defaultValue:"Free",name:"Mode",options:["Free","Look at"],type:"Attribute"},{datatype:"Vector3d",defaultValue:{x:0,y:0,z:0},if:{Mode:"Look at"},name:"LookAt",type:"Attribute"},{datatype:"Vector3d",defaultValue:{x:0,y:1,z:0},displayName:"Up vector",if:{Mode:"Look at"},name:"UpVector",type:"Attribute"}],typeName:"Camera"},{fields:[{name:"3dObjectNoShadows",type:"FieldSet"}],typeName:"Group"},{fields:[{name:"3dObjectDefault",type:"FieldSet"},{label:"Box specific fields",type:"Separator"},{linkableTypes:["Material"],type:"Link",usageAs:"Material"},{datatype:"Vector3d",defaultValue:{x:1,y:1,z:1},name:"Size",type:"Attribute"},{datatype:"Vector3d",defaultValue:{x:1,y:1,z:1},name:"Segments",type:"Attribute"},{datatype:"Vector2d",defaultValue:{x:1,y:1},displayName:"UV Scale",name:"UVScale",type:"Attribute"},{name:"Physics",type:"FieldSet"}],typeName:"Box"},{fields:[{name:"3dObjectDefault",type:"FieldSet"},{label:"GridMap specific fields",type:"Separator"},{linkableTypes:["GridMap"],type:"Link",usageAs:"GridMap"},{name:"Physics",type:"FieldSet"}],typeName:"GridMap"},{fields:[{name:"3dObjectDefault",type:"FieldSet"},{label:"Ribbon specific fields",type:"Separator"},{linkableTypes:["Material"],type:"Link",usageAs:"Material"},{datatype:"Integer",defaultValue:16,displayName:"Ring vertex count",minValue:3,maxValue:256,name:"RingVertexCount",type:"Attribute"},{datatype:"Integer",defaultValue:16,displayName:"Path steps",minValue:2,name:"PathStepCount",type:"Attribute"},{datatype:"Float",defaultValue:0,displayName:"Start time",minValue:0,name:"StartTime",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"End time",minValue:0,name:"EndTime",type:"Attribute"},{datatype:"Vector2d",defaultValue:{x:1,y:1},displayName:"UV Scale",name:"UVScale",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Closed",name:"Closed",type:"Attribute"},{datatype:"Boolean",defaultValue:!0,displayName:"Add caps",name:"AddCaps",if:{Closed:!1},type:"Attribute"},{datatype:"Boolean",defaultValue:!0,displayName:"Vertex colors",name:"VertexColors",type:"Attribute"},{label:"Ring formulas",type:"Separator",presets:[{name:"Circle",fields:{RingFormulaX:"cos(theta) * 0.5",RingFormulaY:"0",RingFormulaZ:"sin(theta) * 0.5"}}]},{datatype:"Formula",defaultValue:"cos(theta) * 0.5",displayName:"X",name:"RingFormulaX",type:"Attribute"},{datatype:"Formula",defaultValue:"0",displayName:"Y",name:"RingFormulaY",type:"Attribute"},{datatype:"Formula",defaultValue:"sin(theta) * 0.5",displayName:"Z",name:"RingFormulaZ",type:"Attribute"},{label:"Path formulas",type:"Separator"},{datatype:"Formula",defaultValue:"0",displayName:"X",name:"PathFormulaX",type:"Attribute"},{datatype:"Formula",defaultValue:"sin(t)",displayName:"Y",name:"PathFormulaY",type:"Attribute"},{datatype:"Formula",defaultValue:"t",displayName:"Z",name:"PathFormulaZ",type:"Attribute"},{label:"Color formulas",type:"Separator",if:{VertexColors:!0}},{datatype:"Formula",defaultValue:"abs(sin(t))",displayName:"R",name:"ColorFormulaR",type:"Attribute",if:{VertexColors:!0}},{datatype:"Formula",defaultValue:"0",displayName:"G",name:"ColorFormulaG",type:"Attribute",if:{VertexColors:!0}},{datatype:"Formula",defaultValue:"abs(cos(t))",displayName:"B",name:"ColorFormulaB",type:"Attribute",if:{VertexColors:!0}},{label:"Other formulas",type:"Separator"},{datatype:"Formula",defaultValue:"1 + 0.3 * sin(t * 2)",displayName:"Scale",name:"ScaleFormula",type:"Attribute"},{datatype:"Formula",defaultValue:"t * PI * 2",displayName:"Twist",name:"TwistFormula",type:"Attribute"},{name:"Physics",type:"FieldSet"}],typeName:"Ribbon"},{fields:[{name:"3dObjectDefault",type:"FieldSet"},{label:"Billboard Specific Fields",type:"Separator"},{linkableTypes:["Material"],type:"Link",usageAs:"Material",mandatory:!0},{datatype:"Text",defaultValue:"Text",displayName:"Text",name:"Text",type:"Attribute"},{datatype:"Enum",defaultValue:"center",displayName:"Text Alignment",info:"The alignment of the text",name:"TextAlign",options:["left","center","right"],type:"Attribute"},{linkableTypes:["Font"],type:"Link",usageAs:"Font"},{datatype:"Boolean",defaultValue:!0,displayName:"Size Attenuation",info:"Scales the Billboard with respect to distance to the camera.",name:"SizeAttenuation",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Size",minValue:0,name:"Size",type:"Attribute"},{datatype:"Float",defaultValue:2,displayName:"Text Stroke Width",info:"The width of the border of the text.",maxValue:100,minValue:0,name:"TextStrokeWidth",type:"Attribute"},{datatype:"Color",defaultValue:{a:255,b:255,g:255,r:255},displayName:"Text Stroke Color",info:"The color of the border of the text.",name:"TextStrokeColor",type:"Attribute"},{datatype:"Color",defaultValue:{a:255,b:0,g:0,r:0},displayName:"Text color",info:"The infill color of the text.",name:"TextColor",type:"Attribute"},{datatype:"Vector2d",defaultValue:{x:5,y:5},displayName:"Padding",info:"Two values controlling the vertical and horizontal padding size. Higher values increase the size of the padding.",name:"Padding",type:"Attribute"},{datatype:"Color",defaultValue:{a:255,b:255,g:255,r:255},displayName:"Padding color",info:"The background color of the padding section.",name:"BackgroundColor",type:"Attribute"},{datatype:"Color",defaultValue:{a:255,b:255,g:255,r:255},displayName:"Padding Line Color",info:"The color of the border delimited by the padding.",name:"BackgroundStrokeColor",type:"Attribute"},{datatype:"Integer",defaultValue:1,displayName:"Padding Line Width",info:"The width of the border of the padding section.",minValue:0,name:"BackgroundStrokeWidth",type:"Attribute"},{datatype:"Vector2d",defaultValue:{x:2,y:2},displayName:"Border",info:"Two values controlling the vertical and horizontal border size. Higher values increase the size of the border.",name:"BorderWidth",type:"Attribute"},{datatype:"Color",defaultValue:{a:255,b:255,g:255,r:255},displayName:"Border Color",info:"The background color of the border section.",name:"BorderBackgroundColor",type:"Attribute"},{datatype:"Color",defaultValue:{a:255,b:255,g:255,r:255},displayName:"Border Line Color",info:"The color of the outer border of the sprite.",name:"BorderStrokeColor",type:"Attribute"},{datatype:"Integer",defaultValue:1,displayName:"Border Line Width",info:"The width of the outer border.",minValue:0,name:"BorderStrokeWidth",type:"Attribute"},{datatype:"Integer",defaultValue:2,displayName:"Outer Radius",info:"The outer radius of the sprite. Higher values increase the roundness.",minValue:0,name:"OuterRadius",type:"Attribute"},{datatype:"Integer",defaultValue:2,displayName:"Inner Radius",info:"The inner radius of the sprite. Higher values increase the roundness.",minValue:0,name:"InnerRadius",type:"Attribute"},{datatype:"Vector2d",defaultValue:{x:1,y:1},displayName:"UV Scale",name:"UVScale",type:"Attribute"}],typeName:"Billboard"},{fields:[{name:"3dObjectDefault",type:"FieldSet"},{label:"Cone specific fields",type:"Separator"},{linkableTypes:["Material"],type:"Link",usageAs:"Material"},{datatype:"Float",defaultValue:1,displayName:"Radius",minValue:0,name:"Radius",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Height",minValue:0,name:"Height",type:"Attribute"},{datatype:"Integer",defaultValue:8,displayName:"Radial segments",minValue:1,name:"RadialSegments",type:"Attribute"},{datatype:"Integer",defaultValue:1,displayName:"Height segments",minValue:1,name:"HeightSegments",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Open ended",name:"OpenEnded",type:"Attribute"},{datatype:"Float",defaultValue:0,displayName:"Theta start",maxValue:360,minValue:0,name:"ThetaStart",type:"Attribute",widget:"Slider"},{datatype:"Float",defaultValue:360,displayName:"Theta length",maxValue:360,minValue:0,name:"ThetaLength",type:"Attribute",widget:"Slider"},{datatype:"Vector2d",defaultValue:{x:1,y:1},displayName:"UV Scale",name:"UVScale",type:"Attribute"},{name:"Physics",type:"FieldSet"}],typeName:"Cone"},{fields:[{name:"3dObjectNoShadows",type:"FieldSet"},{label:"Lod specific fields",type:"Separator"},{datatype:"String",defaultValue:"0,2,4,6,8,10",displayName:"Distances",name:"Distances",type:"Attribute"}],typeName:"Lod"},{fields:[{name:"3dObjectDefault",type:"FieldSet"},{label:"Cylinder specific fields",type:"Separator"},{linkableTypes:["Material"],type:"Link",usageAs:"Material"},{datatype:"Float",defaultValue:1,displayName:"Radius top",minValue:0,name:"RadiusTop",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Radius bottom",minValue:0,name:"RadiusBottom",type:"Attribute"},{datatype:"Integer",defaultValue:8,displayName:"Radial segments",minValue:1,name:"RadialSegments",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Height",minValue:0,name:"Height",type:"Attribute"},{datatype:"Integer",defaultValue:1,displayName:"Height segments",minValue:1,name:"HeightSegments",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Open ended",name:"OpenEnded",type:"Attribute"},{datatype:"Float",defaultValue:0,displayName:"Theta start",maxValue:360,minValue:0,name:"ThetaStart",type:"Attribute",widget:"Slider"},{datatype:"Float",defaultValue:360,displayName:"Theta length",maxValue:360,minValue:0,name:"ThetaLength",type:"Attribute",widget:"Slider"},{datatype:"Vector2d",defaultValue:{x:1,y:1},displayName:"UV Scale",name:"UVScale",type:"Attribute"},{name:"Physics",type:"FieldSet"}],typeName:"Cylinder"},{fields:[{name:"3dObjectDefault",type:"FieldSet"},{label:"Plane specific fields",type:"Separator"},{linkableTypes:["Material"],type:"Link",usageAs:"Material"},{datatype:"Float",defaultValue:1,displayName:"Width",minValue:0,name:"Width",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Height",minValue:0,name:"Height",type:"Attribute"},{datatype:"Integer",defaultValue:1,displayName:"Width segments",minValue:1,name:"WidthSegments",type:"Attribute"},{datatype:"Integer",defaultValue:1,displayName:"Height segments",minValue:1,name:"HeightSegments",type:"Attribute"},{datatype:"Vector2d",defaultValue:{x:1,y:1},displayName:"UV Scale",name:"UVScale",type:"Attribute"},{name:"Physics",type:"FieldSet"}],typeName:"Plane"},{fields:[{name:"3dObjectDefault",type:"FieldSet"},{label:"Ring specific fields",type:"Separator"},{linkableTypes:["Material"],type:"Link",usageAs:"Material"},{datatype:"Float",defaultValue:.5,displayName:"Inner radius",minValue:0,name:"InnerRadius",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Outer radius",minValue:0,name:"OuterRadius",type:"Attribute"},{datatype:"Integer",defaultValue:8,displayName:"Theta segments",minValue:3,name:"ThetaSegments",type:"Attribute"},{datatype:"Integer",defaultValue:1,displayName:"Phi segments",minValue:1,name:"PhiSegments",type:"Attribute"},{datatype:"Float",defaultValue:0,displayName:"Theta start",maxValue:360,minValue:0,name:"ThetaStart",type:"Attribute",widget:"Slider"},{datatype:"Float",defaultValue:360,displayName:"Theta length",maxValue:360,minValue:0,name:"ThetaLength",type:"Attribute",widget:"Slider"},{datatype:"Vector2d",defaultValue:{x:1,y:1},displayName:"UV Scale",name:"UVScale",type:"Attribute"},{name:"Physics",type:"FieldSet"}],typeName:"Ring"},{fields:[{name:"3dObjectNoShadows",type:"FieldSet"},{label:"Particles Editor Fields",type:"Separator"},{datatype:"Boolean",defaultValue:!1,displayName:"Preview",info:"Previews the particle system by playing it in the editor.",name:"RunPreview",type:"Attribute"},{datatype:"Boolean",defaultValue:!0,displayName:"Show Emitter Preview",info:"Shows a preview of the particle system's emitter.",name:"ShowHelper",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Pause",info:"Pauses the particle system.",name:"Pause",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Kill All Particles",info:"Kills all the alive particles in the system.",name:"KillAllParticles",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Restart",info:"Hard restart of the particle system. It kills all particles, clean all data and reset the simulation time.",name:"Restart",type:"Attribute"},{displayName:"Particle System",label:"Particle System Configuration File",linkableTypes:["Particles"],type:"Link",usageAs:"ParticleData",mandatory:!0}],typeName:"ParticleSystem"},{fields:[{name:"3dObjectDefault",type:"FieldSet"},{label:"CircleShadow specific fields",type:"Separator"},{datatype:"Float",defaultValue:1,displayName:"Size",minValue:0,name:"Size",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Strength",maxValue:1,minValue:0,name:"Strength",type:"Attribute",widget:"Slider"}],typeName:"CircleShadow"},{fields:[{name:"3dObjectDefault",type:"FieldSet"},{label:"Sphere specific fields",type:"Separator"},{linkableTypes:["Material"],type:"Link",usageAs:"Material"},{datatype:"Float",defaultValue:1,displayName:"Radius",minValue:0,name:"Radius",type:"Attribute"},{datatype:"Integer",defaultValue:8,displayName:"Width segments",minValue:3,name:"WidthSegments",type:"Attribute"},{datatype:"Integer",defaultValue:6,displayName:"Height segments",minValue:2,name:"HeightSegments",type:"Attribute"},{datatype:"Float",defaultValue:0,displayName:"Phi start",maxValue:360,minValue:0,name:"PhiStart",type:"Attribute",widget:"Slider"},{datatype:"Float",defaultValue:360,displayName:"Phi length",maxValue:360,minValue:0,name:"PhiLength",type:"Attribute",widget:"Slider"},{datatype:"Float",defaultValue:0,displayName:"Theta start",maxValue:360,minValue:0,name:"ThetaStart",type:"Attribute",widget:"Slider"},{datatype:"Float",defaultValue:180,displayName:"Theta length",maxValue:180,minValue:0,name:"ThetaLength",type:"Attribute",widget:"Slider"},{datatype:"Vector2d",defaultValue:{x:1,y:1},displayName:"UV Scale",name:"UVScale",type:"Attribute"},{name:"Physics",type:"FieldSet"}],typeName:"Sphere"},{fields:[{name:"3dObjectDefault",type:"FieldSet"},{label:"Text specific fields",type:"Separator"},{linkableTypes:["Material"],type:"Link",usageAs:"Material"},{datatype:"String",defaultValue:"Text",name:"Text",type:"Attribute"},{datatype:"Enum",defaultValue:"center",displayName:"Horizontal Alignment",info:"Horizontal text positioning",name:"HorizontalAlign",options:["left","center","right"],type:"Attribute"},{datatype:"Enum",defaultValue:"baseline",displayName:"Vertical Alignment",info:"Vertical text positioning",name:"VerticalAlign",options:["baseline","top","middle","bottom"],type:"Attribute"},{linkableTypes:["Font"],type:"Link",usageAs:"Font"},{datatype:"Float",defaultValue:1,name:"Size",type:"Attribute"},{datatype:"Float",defaultValue:1,name:"Height",type:"Attribute"},{datatype:"Integer",defaultValue:12,displayName:"Curve segments",name:"CurveSegments",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Bevel enabled",name:"BevelEnabled",type:"Attribute"},{datatype:"Float",defaultValue:.1,displayName:"Bevel thickness",name:"BevelThickness",type:"Attribute"},{datatype:"Float",defaultValue:.03,displayName:"Bevel size",name:"BevelSize",type:"Attribute"},{datatype:"Float",defaultValue:0,displayName:"Bevel offset",name:"BevelOffset",type:"Attribute"},{datatype:"Integer",defaultValue:3,displayName:"Bevel segments",name:"BevelSegments",type:"Attribute"},{datatype:"Vector2d",defaultValue:{x:1,y:1},displayName:"UV Scale",name:"UVScale",type:"Attribute"},{name:"Physics",type:"FieldSet"}],typeName:"Text"},{fields:[{name:"3dObjectDefault",type:"FieldSet"},{label:"Torus specific fields",type:"Separator"},{linkableTypes:["Material"],type:"Link",usageAs:"Material"},{datatype:"Float",defaultValue:1,displayName:"Radius",minValue:0,name:"Radius",type:"Attribute"},{datatype:"Float",defaultValue:.4,displayName:"Tube",minValue:0,name:"Tube",type:"Attribute"},{datatype:"Integer",defaultValue:8,displayName:"Radial segments",minValue:3,name:"RadialSegments",type:"Attribute"},{datatype:"Integer",defaultValue:16,displayName:"Tubular segments",minValue:2,name:"TubularSegments",type:"Attribute"},{datatype:"Float",defaultValue:360,displayName:"Arc",maxValue:360,minValue:0,name:"Arc",type:"Attribute",widget:"Slider"},{datatype:"Vector2d",defaultValue:{x:1,y:1},displayName:"UV Scale",name:"UVScale",type:"Attribute"},{name:"Physics",type:"FieldSet"}],typeName:"Torus"},{fields:[{label:"3D Object Fields",type:"Separator"},{datatype:"Boolean",defaultValue:!0,displayName:"Active",name:"Active",type:"Attribute"},{datatype:"String",defaultValue:"",displayName:"Name",name:"Name",type:"Attribute"},{datatype:"Layers",defaultValue:[0],name:"Layers",type:"Attribute"},{datatype:"Tags",defaultValue:[],name:"Tags",type:"Attribute"},{label:"Sky specific fields",type:"Separator"},{datatype:"Float",defaultValue:1e3,name:"Size",type:"Attribute"},{datatype:"Float",defaultValue:10,displayName:"Turbidity",maxValue:20,minValue:1,name:"Turbidity",type:"Attribute",widget:"Slider"},{datatype:"Float",defaultValue:2,displayName:"Rayleigh",maxValue:4,minValue:0,name:"Rayleigh",type:"Attribute",widget:"Slider"},{datatype:"Float",defaultValue:.005,displayName:"Mie coefficient",maxValue:1,minValue:0,name:"MieCoefficient",type:"Attribute",widget:"Slider"},{datatype:"Float",defaultValue:.8,displayName:"Mie directional G",maxValue:1,minValue:0,name:"MieDirectionalG",type:"Attribute",widget:"Slider"},{datatype:"Float",defaultValue:.49,displayName:"Inclination",maxValue:1,minValue:0,name:"Inclination",type:"Attribute",widget:"Slider"},{datatype:"Float",defaultValue:.25,displayName:"Azimuth",maxValue:1,minValue:0,name:"Azimuth",type:"Attribute",widget:"Slider"}],typeName:"Sky"},{fields:[{label:"3D Object Fields",type:"Separator"},{datatype:"Boolean",defaultValue:!0,displayName:"Active",name:"Active",type:"Attribute"},{datatype:"String",defaultValue:"",displayName:"Name",name:"Name",type:"Attribute"},{datatype:"Transform",defaultValue:{position:{x:0,y:0,z:0},rotation:{w:1,x:0,y:0,z:0},scale:{x:1,y:1,z:1}},name:"Transform",type:"Attribute"},{datatype:"Tags",defaultValue:[],name:"Tags",type:"Attribute"},{label:"Audio listener specific fields",type:"Separator"},{datatype:"Float",defaultValue:1,name:"Gain",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Time delta",name:"TimeDelta",type:"Attribute"}],maxInstances:1,typeName:"AudioListener"},{fields:[{label:"3D Object Fields",type:"Separator"},{datatype:"Boolean",defaultValue:!0,displayName:"Active",name:"Active",type:"Attribute"},{datatype:"String",defaultValue:"",displayName:"Name",name:"Name",type:"Attribute"},{datatype:"Transform",defaultValue:{position:{x:0,y:0,z:0},rotation:{w:1,x:0,y:0,z:0},scale:{x:1,y:1,z:1}},name:"Transform",type:"Attribute"},{datatype:"Tags",defaultValue:[],name:"Tags",type:"Attribute"},{label:"Positional audio specific fields",type:"Separator"},{name:"AudioLink",type:"FieldSet"},{datatype:"Boolean",defaultValue:!1,displayName:"Autoplay",name:"Autoplay",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Loop",name:"Loop",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Loop section",name:"LoopSection",type:"Attribute",if:{Loop:!0}},{datatype:"Float",defaultValue:0,displayName:"Loop start",minValue:0,name:"LoopStart",type:"Attribute",widget:"Slider",if:{Loop:!0,LoopSection:!0}},{datatype:"Float",displayName:"Loop end",defaultValue:1,minValue:0,name:"LoopEnd",type:"Attribute",widget:"Slider",if:{Loop:!0,LoopSection:!0}},{datatype:"Float",defaultValue:1,displayName:"Volume",minValue:0,name:"Volume",type:"Attribute"},{datatype:"Float",defaultValue:0,displayName:"Panning",maxValue:1,minValue:-1,name:"Panning",type:"Attribute",widget:"Slider"},{datatype:"Float",defaultValue:0,displayName:"Duration",minValue:0,name:"Duration",type:"Attribute"},{datatype:"Float",defaultValue:0,displayName:"Detune",name:"Detune",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Playback rate",minValue:0,name:"PlaybackRate",type:"Attribute"},{datatype:"Float",defaultValue:0,displayName:"Offset",maxValue:1,minValue:0,name:"Offset",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Ref distance",minValue:0,name:"RefDistance",type:"Attribute"},{datatype:"Float",defaultValue:1e4,displayName:"Max distance",minValue:0,name:"MaxDistance",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Rolloff factor",minValue:0,name:"RolloffFactor",type:"Attribute"},{datatype:"Enum",defaultValue:"Inverse",displayName:"Distance model",name:"DistanceModel",options:["Linear","Inverse","Exponential"],type:"Attribute"},{datatype:"Enum",defaultValue:"Omnidirectional",displayName:"Direction",name:"Direction",options:["Omnidirectional","Directional"],type:"Attribute"},{datatype:"Float",defaultValue:90,displayName:"Cone inner angle",if:{Direction:"Directional"},maxValue:360,minValue:0,name:"ConeInnerAngle",type:"Attribute",widget:"Slider"},{datatype:"Float",defaultValue:180,displayName:"Cone outer angle",if:{Direction:"Directional"},maxValue:360,minValue:0,name:"ConeOuterAngle",type:"Attribute",widget:"Slider"},{datatype:"Float",defaultValue:.2,displayName:"Cone outer gain",if:{Direction:"Directional"},maxValue:1,minValue:0,name:"ConeOuterGain",type:"Attribute",widget:"Slider"}],typeName:"PositionalAudio"},{fields:[{label:"3D Object Fields",type:"Separator"},{datatype:"Boolean",defaultValue:!0,displayName:"Active",name:"Active",type:"Attribute"},{datatype:"String",defaultValue:"",displayName:"Name",name:"Name",type:"Attribute"},{datatype:"Tags",defaultValue:[],name:"Tags",type:"Attribute"},{label:"Audio specific fields",type:"Separator"},{name:"AudioLink",type:"FieldSet"},{datatype:"Boolean",defaultValue:!1,displayName:"Autoplay",name:"Autoplay",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Loop",name:"Loop",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Loop section",name:"LoopSection",type:"Attribute",if:{Loop:!0}},{datatype:"Float",defaultValue:0,displayName:"Loop start",minValue:0,name:"LoopStart",type:"Attribute",widget:"Slider",if:{Loop:!0,LoopSection:!0}},{datatype:"Float",displayName:"Loop end",defaultValue:1,minValue:0,name:"LoopEnd",type:"Attribute",widget:"Slider",if:{Loop:!0,LoopSection:!0}},{datatype:"Float",defaultValue:1,displayName:"Volume",minValue:0,name:"Volume",type:"Attribute"},{datatype:"Float",defaultValue:0,displayName:"Panning",maxValue:1,minValue:-1,name:"Panning",type:"Attribute",widget:"Slider"},{datatype:"Float",defaultValue:0,displayName:"Duration",minValue:0,name:"Duration",type:"Attribute"},{datatype:"Float",defaultValue:0,displayName:"Detune",name:"Detune",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Playback rate",minValue:0,name:"PlaybackRate",type:"Attribute"},{datatype:"Float",defaultValue:0,displayName:"Offset",maxValue:1,minValue:0,name:"Offset",type:"Attribute"}],typeName:"Audio"},{fields:[{name:"3dObjectNoShadows",type:"FieldSet"},{label:"Vehicle specific fields",type:"Separator"},{datatype:"Node",defaultValue:null,displayName:"Chassis node",name:"ChassisNode",type:"Attribute"},{elementName:"Wheel",fields:[{datatype:"Node",defaultValue:null,displayName:"Wheel node",name:"WheelNode",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Is Front",name:"IsFront",type:"Attribute"},{label:"Wheel config",type:"Separator",collapsed:!0},{datatype:"Float",defaultValue:.6,displayName:"Suspension rest length",name:"SuspensionRestLength",type:"Attribute"},{datatype:"Float",defaultValue:20,displayName:"Suspension stiffness",name:"SuspensionStiffness",type:"Attribute"},{datatype:"Float",defaultValue:2.3,displayName:"Suspension damping",name:"SuspensionDamping",type:"Attribute"},{datatype:"Float",defaultValue:4.4,displayName:"Suspension compression",name:"SuspensionCompression",type:"Attribute"},{datatype:"Float",defaultValue:1e3,displayName:"Friction",name:"Friction",type:"Attribute"},{datatype:"Float",defaultValue:.2,displayName:"Roll influence",name:"RollInfluence",type:"Attribute"},{datatype:"Float",defaultValue:.1,displayName:"Radius",name:"Radius",type:"Attribute"},{datatype:"Float",defaultValue:0,displayName:"Acceleration",name:"Acceleration",type:"Attribute"},{datatype:"Float",defaultValue:0,displayName:"Brakes",name:"Brakes",type:"Attribute"},{datatype:"Float",defaultValue:0,displayName:"Steering",name:"Steering",type:"Attribute"}],name:"Wheels",type:"List"}],typeName:"Vehicle"},{fields:[{name:"3dObjectNoShadows",type:"FieldSet"},{label:"Constraint specific fields",type:"Separator"},{datatype:"Enum",defaultValue:"",displayName:"Type",name:"Type",options:["Point to Point","Hinge","Slider","Cone twist"],type:"Attribute"},{datatype:"Node",defaultValue:null,displayName:"First node",name:"FirstNode",type:"Attribute"},{datatype:"Node",defaultValue:null,displayName:"Second node",name:"SecondNode",type:"Attribute"}],typeName:"Constraint"},{fields:[{name:"3dObjectDefault",type:"FieldSet"},{label:"NavMesh specific fields",type:"Separator"},{datatype:"Enum",defaultValue:"Solo",displayName:"Type",name:"Type",options:["Solo","Tiled","Tile cache"],info:"For simple static scenes, use solo. For large maps use tiled, for large and/or dynamic maps, use tile cache",type:"Attribute"},{datatype:"Enum",defaultValue:"From children",displayName:"Mode",name:"Mode",options:["From children","From tags","From layers"],type:"Attribute"},{datatype:"Layers",defaultValue:[0],displayName:"Navmesh layers",info:"Selects which layers are added to the navmesh",name:"NavmeshLayers",type:"Attribute",if:{Mode:"From layers"}},{datatype:"Tags",defaultValue:[],info:"Selects meshes to add to the navmesh based on tag.",displayName:"Navmesh tags",name:"NavmeshTags",type:"Attribute",if:{Mode:"From tags"}},{datatype:"Boolean",defaultValue:!1,displayName:"Auto generate",name:"AutoGenerate",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Always render helper",name:"AlwaysRenderHelper",type:"Attribute"},{datatype:"Button",defaultValue:!1,displayName:"Regenerate now",name:"RegenerateNow",type:"Attribute"},{datatype:"Float",defaultValue:0,minValue:0,displayName:"Border size",name:"BorderSize",type:"Attribute"},{datatype:"Float",defaultValue:.2,minValue:.01,displayName:"Voxel cell height",name:"CellHeight",type:"Attribute",info:"Needs to resolve step/climb height cleanly."},{datatype:"Float",defaultValue:.2,minValue:.01,displayName:"Voxel cell size",name:"CellSize",type:"Attribute",info:"Smaller = more detail. Around 0.2m for human‑scale"},{datatype:"Integer",defaultValue:256,minValue:1,displayName:"Chunky tri mesh tris per chunk",name:"ChunkyTriMeshTrisPerChunk",type:"Attribute",if:{Type:"Tiled"}},{datatype:"Float",defaultValue:6,minValue:.01,displayName:"Detail sample dist",name:"DetailSampleDist",type:"Attribute"},{datatype:"Float",defaultValue:1,minValue:0,displayName:"Detail sample max error",name:"DetailSampleMaxError",type:"Attribute"},{datatype:"Integer",defaultValue:4,minValue:1,displayName:"Expected layers per tile",name:"ExpectedLayersPerTile",type:"Attribute",if:{Type:"Tile Cache"}},{datatype:"Integer",defaultValue:128,minValue:1,displayName:"Max obstacles",name:"MaxObstacles",type:"Attribute",if:{Type:"Tile Cache"}},{datatype:"Float",defaultValue:12,minValue:.01,displayName:"Max edge length",name:"MaxEdgeLen",type:"Attribute"},{datatype:"Float",defaultValue:1.3,minValue:0,displayName:"Max simplification error",name:"MaxSimplificationError",type:"Attribute",info:"Allowed contour deviation from source before another vertex is kept"},{datatype:"Integer",defaultValue:6,minValue:3,displayName:"Max vertices per poly",name:"MaxVertsPerPoly",type:"Attribute"},{datatype:"Float",defaultValue:20,minValue:.01,displayName:"Merge region area",name:"MergeRegionArea",type:"Attribute"},{datatype:"Float",defaultValue:8,minValue:.01,displayName:"Min region area",name:"MinRegionArea",type:"Attribute"},{datatype:"Float",defaultValue:2,minValue:0,displayName:"Walkable climb",name:"WalkableClimb",type:"Attribute",info:"Maximum step height"},{datatype:"Float",defaultValue:2,minValue:0,displayName:"Walkable height",name:"WalkableHeight",type:"Attribute",info:"Required head‑clearance. Must be at least the height of the characters."},{datatype:"Float",defaultValue:.5,minValue:.01,displayName:"Walkable radius",name:"WalkableRadius",type:"Attribute",info:"Clearance from walls/obstacles"},{datatype:"Float",defaultValue:60,minValue:0,maxValue:360,displayName:"Walkable slope angle",name:"WalkableSlopeAngle",type:"Attribute",info:"Steepest walkable slope"},{datatype:"Boolean",defaultValue:!0,displayName:"Build BV Tree",name:"BuildBvTree",info:"",type:"Attribute",if:{$or:[{Type:"Solo"},{Type:"Tiled"}]}},{datatype:"Integer",defaultValue:32,minValue:1,displayName:"Tile size",name:"TileSize",type:"Attribute",info:"The size of the tiles to be used. Typically you will want to stay in the range 32 - 64. Sizes outside this range might result in unexpected behaviour",if:{$or:[{Type:"Tiled"},{Type:"Tile cache"}]}},{label:"Crowd fields",type:"Separator"},{datatype:"Boolean",defaultValue:!0,displayName:"Enable crowd",name:"EnableCrowd",type:"Attribute"},{datatype:"Integer",defaultValue:100,minValue:1,displayName:"Max agent count",name:"MaxAgentCount",type:"Attribute"},{datatype:"Float",defaultValue:1,minValue:.01,displayName:"Max agent radius",name:"MaxAgentRadius",type:"Attribute"}],typeName:"NavMesh"}],name:"Scenegraph",type:"Tree"}],name:"Prefab",updateRequiresThumbRefresh:!0},{_id:{$oid:"5e6a1ad189707feef9173397"},contentTypes:["text/x-lua"],fieldSets:[],fields:[],name:"Script",updateRequiresThumbRefresh:!1,creatableEmpty:!0},{_id:{$oid:"5e6a1ad189707f2ef9133396"},contentTypes:[],fieldSets:[],fields:[{childTypes:[{displayName:"Camera",fields:[{datatype:"String",defaultValue:"",displayName:"Name",name:"Name",type:"Attribute"},{datatype:"String",defaultValue:"",displayName:"Tag",info:"Tag of the camera to render",name:"Tag",type:"Attribute"},{datatype:"Layers",defaultValue:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31],displayName:"Layers",info:"Selects which layers are rendered by the camera. Overrides scene Camera node 'Cull mode' field.",name:"Layers",type:"Attribute"},{datatype:"Float",defaultValue:100,displayName:"Width",info:"Width in percent to render",name:"Width",type:"Attribute",widget:"Slider"},{datatype:"Float",defaultValue:100,displayName:"Height",info:"Height in percent to render",name:"Height",type:"Attribute",widget:"Slider"}],inputs:[],outputs:[{displayName:"Color output",name:"ColorOutput",type:"RGBImage"},{displayName:"Depth output",name:"DepthOutput",type:"GrayImage"},{displayName:"Depth Comparison output",name:"DepthComparisonOutput",type:"GrayImage"},{displayName:"Normal output",name:"NormalOutput",type:"RGBImage"},{displayName:"Camera Output",name:"CameraOutput",type:"Attribute"}],typeName:"camera"},{displayName:"Merge",fields:[{datatype:"String",defaultValue:"",displayName:"Name",name:"Name",type:"Attribute"},{datatype:"Boolean",defaultValue:!0,displayName:"Enabled",name:"Enabled",type:"Attribute"},{datatype:"Enum",defaultValue:"Alpha",displayName:"Blending Mode",name:"BlendingMode",options:["Add","Alpha","Average","Color","Color Burn","Color Dodge","Darken","Difference","Divide","Exclusion","Hard Light","Hard Mix","Hue","Invert","Invert RGB","Lighten","Linear Burn","Linear Dodge","Linear Light","Luminosity","Multiply","Negation","Normal","Overlay","Pin Light","Reflect","Saturation","Screen","Soft Light","Set","Src","Subtract","Vivid Light"],type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Opacity",info:"Adjusts how strongly the blending mode affects the final result.",maxValue:1,minValue:0,name:"Opacity",type:"Attribute",widget:"Slider"},{datatype:"Float",defaultValue:0,displayName:"Offset X",info:"Horizontal offset for the secondary input (relative to composition resolution). Positive values move right, negative left. Percentage-based for resolution independence.",maxValue:100,minValue:-100,name:"OffsetX",type:"Attribute"},{datatype:"Float",defaultValue:0,displayName:"Offset Y",info:"Vertical offset for the secondary input (relative to composition resolution). Positive values move up, negative down. Percentage-based for resolution independence.",maxValue:100,minValue:-100,name:"OffsetY",type:"Attribute"},{datatype:"Float",defaultValue:100,displayName:"Width",info:"Horizontal scale of the secondary input as percentage of composition width. 100% maintains original aspect ratio when Height is also 100%. Values <100% shrink, >100% stretch.",maxValue:100,minValue:0,name:"Width",type:"Attribute"},{datatype:"Float",defaultValue:100,displayName:"Height",info:"Vertical scale of the secondary input as percentage of composition height. 100% maintains original aspect ratio when Width is also 100%. Values <100% shrink, >100% stretch.",maxValue:100,minValue:0,name:"Height",type:"Attribute"}],inputs:[{displayName:"Color input 1",name:"ColorInput1",types:["RGBImage"]},{displayName:"Color input 2",name:"ColorInput2",types:["RGBImage"]}],outputs:[{displayName:"Color output",name:"ColorOutput",type:"RGBImage"}],typeName:"merge"},{displayName:"SSAO",fields:[{datatype:"String",defaultValue:"",displayName:"Name",name:"Name",type:"Attribute"},{datatype:"Boolean",defaultValue:!0,displayName:"Enabled",name:"Enabled",type:"Attribute"},{datatype:"Float",defaultValue:.2,displayName:"Radius",minValue:.01,name:"Radius",type:"Attribute"},{datatype:"Integer",defaultValue:8,displayName:"Samples",maxValue:32,minValue:8,name:"Samples",type:"Attribute"},{datatype:"Float",defaultValue:.001,displayName:"Bias",minValue:.001,name:"Bias",type:"Attribute"},{datatype:"Float",defaultValue:2,displayName:"Intensity",minValue:0,name:"Intensity",type:"Attribute"},{datatype:"Float",defaultValue:.07,displayName:"Max distance",minValue:.01,name:"MaxDistance",type:"Attribute"}],inputs:[{displayName:"Depth input",name:"DepthInput",types:["GrayImage"]},{displayName:"Normal input",name:"NormalInput",types:["RGBImage"]},{displayName:"Camera Input",name:"CameraInput",types:["Attribute"]}],outputs:[{displayName:"Color output",name:"ColorOutput",type:"RGBImage"}],typeName:"ssao"},{displayName:"FXAA",fields:[{datatype:"String",defaultValue:"",displayName:"Name",name:"Name",type:"Attribute"},{datatype:"Boolean",defaultValue:!0,displayName:"Enabled",name:"Enabled",type:"Attribute"}],inputs:[{displayName:"Color input",name:"ColorInput",types:["RGBImage"]}],outputs:[{displayName:"Color output",name:"ColorOutput",type:"RGBImage"}],typeName:"fxaa"},{displayName:"Bloom",fields:[{datatype:"String",defaultValue:"",displayName:"Name",name:"Name",type:"Attribute"},{datatype:"Boolean",defaultValue:!0,displayName:"Enabled",name:"Enabled",type:"Attribute"},{datatype:"Float",defaultValue:1.5,displayName:"Strength",maxValue:10,minValue:0,name:"Strength",type:"Attribute",widget:"Slider"},{datatype:"Float",defaultValue:.4,displayName:"Radius",maxValue:1,minValue:0,name:"Radius",type:"Attribute",widget:"Slider"},{datatype:"Float",defaultValue:.8,displayName:"Threshold",info:"Minimum luminance required for a pixel to contribute to bloom. Pixels darker than this value are suppressed, while brighter pixels contribute to the blur.",maxValue:1,minValue:0,name:"Threshold",type:"Attribute",widget:"Slider"},{datatype:"Float",defaultValue:.4,displayName:"Soft Knee",info:"Creates a smooth transition around the threshold to avoid harsh cutoffs. Higher values produce a more gradual blend between non-blooming and blooming pixels.",maxValue:1,minValue:0,name:"SoftKnee",type:"Attribute",widget:"Slider"}],inputs:[{displayName:"Color input",name:"ColorInput",types:["RGBImage"]}],outputs:[{displayName:"Color output",name:"ColorOutput",type:"RGBImage"}],typeName:"bloom"},{displayName:"Outline",fields:[{datatype:"String",defaultValue:"",displayName:"Name",name:"Name",type:"Attribute"},{datatype:"Boolean",defaultValue:!0,displayName:"Enabled",name:"Enabled",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Edge Strength",maxValue:5,minValue:0,name:"EdgeStrength",type:"Attribute",widget:"Slider"},{datatype:"Float",defaultValue:.5,displayName:"Edge Width",maxValue:2,minValue:.1,name:"EdgeWidth",type:"Attribute",widget:"Slider"},{datatype:"Color",defaultValue:{r:255,g:0,b:0,a:255},displayName:"Edge Color",name:"EdgeColor",type:"Attribute"},{datatype:"Enum",defaultValue:"Add",displayName:"Blending Mode",name:"BlendingMode",options:["Add","Alpha","Average","Color","Color Burn","Color Dodge","Darken","Difference","Divide","Exclusion","Hard Light","Hard Mix","Hue","Invert","Invert RGB","Lighten","Linear Burn","Linear Dodge","Linear Light","Luminosity","Multiply","Negation","Normal","Overlay","Pin Light","Reflect","Saturation","Screen","Soft Light","Set","Src","Subtract","Vivid Light"],type:"Attribute"},{datatype:"Float",defaultValue:.25,displayName:"Opacity",name:"Opacity",maxValue:1,minValue:0,type:"Attribute"}],inputs:[{displayName:"Color input",name:"ColorInput",types:["RGBImage"]},{displayName:"Depth Comparison input",name:"DepthComparisonInput",types:["GrayImage"]}],outputs:[{displayName:"Color output",name:"ColorOutput",type:"RGBImage"}],typeName:"outline"},{displayName:"Film",fields:[{datatype:"String",defaultValue:"",displayName:"Name",name:"Name",type:"Attribute"},{datatype:"Boolean",defaultValue:!0,displayName:"Enabled",name:"Enabled",type:"Attribute"},{datatype:"Float",defaultValue:.05,displayName:"Noise intensity",maxValue:1,minValue:0,name:"NoiseIntensity",type:"Attribute",widget:"Slider"},{datatype:"Float",defaultValue:0,displayName:"Scanlines intensity",maxValue:1,minValue:0,name:"ScanlinesIntensity",type:"Attribute",widget:"Slider"},{datatype:"Integer",defaultValue:0,displayName:"Scanlines count",maxValue:1e3,minValue:0,name:"ScanlinesCount",type:"Attribute",widget:"Slider"},{datatype:"Boolean",defaultValue:!1,displayName:"Grayscale",name:"Grayscale",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Animated",name:"Animated",type:"Attribute"}],inputs:[{displayName:"Color input",name:"ColorInput",types:["RGBImage"]}],outputs:[{displayName:"Color output",name:"ColorOutput",type:"RGBImage"}],typeName:"film"},{displayName:"Fog",fields:[{datatype:"String",defaultValue:"",displayName:"Name",name:"Name",type:"Attribute"},{datatype:"Boolean",defaultValue:!0,displayName:"Enabled",name:"Enabled",type:"Attribute"},{datatype:"Color",defaultValue:{r:255,g:0,b:0,a:255},displayName:"Color",name:"Color",type:"Attribute"},{datatype:"Enum",defaultValue:"Camera Depth",displayName:"Direction",name:"Direction",type:"Attribute",options:["Camera Depth","X","Y","Z"],info:"Defines the ray along which the fog is evaluated. 'Camera Depth' applies fog based on distance from the camera view direction (distances should be non-negative). 'X', 'Y', and 'Z' apply fog along the corresponding world-space axis; distances may be positive or negative depending on where the fog volume should begin and end."},{datatype:"Enum",defaultValue:"Linear",displayName:"Type",name:"Type",type:"Attribute",options:["Linear","Exponential","Exponential Squared"]},{datatype:"Float",defaultValue:1,displayName:"Start Distance",name:"StartDistance",type:"Attribute",info:"Distance along the selected fog ray where the fog begins to accumulate. Must be >= 0 when using Camera Depth."},{datatype:"Float",defaultValue:1e3,displayName:"End Distance",name:"EndDistance",type:"Attribute",info:"Distance along the selected fog ray where the fog reaches maximum density. Must be >= 0 when using Camera Depth."},{datatype:"Float",defaultValue:.0025,displayName:"Density",minValue:1e-5,maxValue:1,name:"Density",type:"Attribute",step:.1,if:{$or:[{FogType:"Exponential"},{FogType:"Exponential Squared"}]}},{datatype:"Boolean",defaultValue:!0,displayName:"Enable Noise",name:"EnableNoise",info:"Adds animated noise to the fog to create more natural variation.",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Noise Scale",minValue:.001,name:"NoiseScale",type:"Attribute",step:1,if:{EnableFogNoise:!0}},{datatype:"Float",defaultValue:.1,displayName:"Noise Speed",maxValue:1,minValue:0,name:"NoiseSpeed",type:"Attribute",step:.1,if:{EnableFogNoise:!0}},{datatype:"Float",defaultValue:.5,displayName:"Noise Amount",maxValue:1,minValue:0,name:"NoiseAmount",type:"Attribute",step:.1,if:{EnableFogNoise:!0}},{datatype:"Float",defaultValue:0,maxValue:1,displayName:"Sky Density",info:"Controls the amount of fog applied to the sky.",name:"SkyDensity",type:"Attribute",step:.1}],inputs:[{displayName:"Color input",name:"ColorInput",types:["RGBImage"]},{displayName:"Depth input",name:"DepthInput",types:["DepthBuffer"]},{displayName:"Camera input",name:"CameraInput",types:["Camera"]}],outputs:[{displayName:"Color output",name:"ColorOutput",type:"RGBImage"}],typeName:"fog"},{displayName:"Sepia",fields:[{datatype:"String",defaultValue:"",displayName:"Name",name:"Name",type:"Attribute"},{datatype:"Boolean",defaultValue:!0,displayName:"Enabled",name:"Enabled",type:"Attribute"},{datatype:"Enum",defaultValue:"Normal",displayName:"Blending Mode",name:"BlendingMode",options:["Add","Alpha","Average","Color","Color Burn","Color Dodge","Darken","Difference","Divide","Exclusion","Hard Light","Hard Mix","Hue","Invert","Invert RGB","Lighten","Linear Burn","Linear Dodge","Linear Light","Luminosity","Multiply","Negation","Normal","Overlay","Pin Light","Reflect","Saturation","Screen","Soft Light","Set","Src","Subtract","Vivid Light"],type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Opacity",name:"Opacity",maxValue:1,minValue:0,type:"Attribute"}],inputs:[{displayName:"Color input",name:"ColorInput",types:["RGBImage"]}],outputs:[{displayName:"Color output",name:"ColorOutput",type:"RGBImage"}],typeName:"sepia"},{displayName:"Vignette",fields:[{datatype:"String",defaultValue:"",displayName:"Name",name:"Name",type:"Attribute"},{datatype:"Boolean",defaultValue:!0,displayName:"Enabled",name:"Enabled",type:"Attribute"},{datatype:"Enum",defaultValue:"Normal",displayName:"Blending Mode",name:"BlendingMode",options:["Add","Alpha","Average","Color","Color Burn","Color Dodge","Darken","Difference","Divide","Exclusion","Hard Light","Hard Mix","Hue","Invert","Invert RGB","Lighten","Linear Burn","Linear Dodge","Linear Light","Luminosity","Multiply","Negation","Normal","Overlay","Pin Light","Reflect","Saturation","Screen","Soft Light","Set","Src","Subtract","Vivid Light"],type:"Attribute"},{datatype:"Float",defaultValue:.9,displayName:"Opacity",name:"Opacity",maxValue:1,minValue:0,type:"Attribute"},{datatype:"Float",defaultValue:.4,displayName:"Amount",maxValue:1,minValue:0,name:"Amount",type:"Attribute"}],inputs:[{displayName:"Color input",name:"ColorInput",types:["RGBImage"]}],outputs:[{displayName:"Color output",name:"ColorOutput",type:"RGBImage"}],typeName:"vignette"},{displayName:"Blur",fields:[{datatype:"String",defaultValue:"",displayName:"Name",name:"Name",type:"Attribute"},{datatype:"Boolean",defaultValue:!0,displayName:"Enabled",name:"Enabled",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Amount",maxValue:10,minValue:0,name:"Amount",type:"Attribute"}],inputs:[{displayName:"Color input",name:"ColorInput",types:["RGBImage"]}],outputs:[{displayName:"Color output",name:"ColorOutput",type:"RGBImage"}],typeName:"blur"},{displayName:"Scanline",fields:[{datatype:"String",defaultValue:"",displayName:"Name",name:"Name",type:"Attribute"},{datatype:"Boolean",defaultValue:!0,displayName:"Enabled",name:"Enabled",type:"Attribute"},{datatype:"Float",defaultValue:.5,displayName:"Density",maxValue:1,minValue:0,name:"Density",type:"Attribute",widget:"Slider"},{datatype:"Float",defaultValue:.01,displayName:"Scroll Speed",maxValue:1,minValue:0,name:"ScrollSpeed",type:"Attribute",widget:"Slider"},{datatype:"Enum",defaultValue:"Overlay",displayName:"Blending Mode",name:"BlendingMode",options:["Add","Alpha","Average","Color","Color Burn","Color Dodge","Darken","Difference","Divide","Exclusion","Hard Light","Hard Mix","Hue","Invert","Invert RGB","Lighten","Linear Burn","Linear Dodge","Linear Light","Luminosity","Multiply","Negation","Normal","Overlay","Pin Light","Reflect","Saturation","Screen","Soft Light","Set","Src","Subtract","Vivid Light"],type:"Attribute"},{datatype:"Float",defaultValue:.25,displayName:"Opacity",name:"Opacity",maxValue:1,minValue:0,type:"Attribute"}],inputs:[{displayName:"Color input",name:"ColorInput",types:["RGBImage"]}],outputs:[{displayName:"Color output",name:"ColorOutput",type:"RGBImage"}],typeName:"scanline"},{displayName:"Shockwave",fields:[{datatype:"String",defaultValue:"",displayName:"Name",name:"Name",type:"Attribute"},{datatype:"Boolean",defaultValue:!0,displayName:"Enabled",name:"Enabled",type:"Attribute"},{datatype:"Boolean",defaultValue:!0,displayName:"Continuous",info:"Whether or not new shockwaves will emit as soon as the previous shockwave ended.",name:"Continuous",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Delay",minValue:0,name:"Delay",info:"How long to wait between shockwave emissions.",type:"Attribute",if:{Continuous:!1}},{datatype:"Integer",defaultValue:5,displayName:"Amount",minValue:0,name:"Amount",info:"The number of shockwaves.",type:"Attribute",if:{Continuous:!1}},{datatype:"Vector3d",defaultValue:{x:0,y:0,z:0},displayName:"Center",info:"The center in world coordinates of the shockwave effect.",name:"Center",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Size",maxValue:100,minValue:.001,name:"Size",type:"Attribute"},{datatype:"Float",defaultValue:2,displayName:"Speed",maxValue:100,minValue:.001,name:"Speed",type:"Attribute"},{datatype:"Float",defaultValue:-.2,displayName:"Radius",maxValue:10,minValue:-10,name:"Radius",type:"Attribute"},{datatype:"Float",defaultValue:.2,displayName:"Maximum Radius",maxValue:10,minValue:0,name:"MaxRadius",type:"Attribute"},{datatype:"Float",defaultValue:10,displayName:"Wave Size",maxValue:100,minValue:1,name:"WaveSize",type:"Attribute"},{datatype:"Float",defaultValue:.05,displayName:"Amplitude",maxValue:10,minValue:0,name:"Amplitude",type:"Attribute"},{datatype:"Enum",defaultValue:"Screen",displayName:"Blending Mode",name:"BlendingMode",options:["Add","Alpha","Average","Color","Color Burn","Color Dodge","Darken","Difference","Divide","Exclusion","Hard Light","Hard Mix","Hue","Invert","Invert RGB","Lighten","Linear Burn","Linear Dodge","Linear Light","Luminosity","Multiply","Negation","Normal","Overlay","Pin Light","Reflect","Saturation","Screen","Soft Light","Set","Src","Subtract","Vivid Light"],type:"Attribute"},{datatype:"Float",defaultValue:.75,displayName:"Opacity",name:"Opacity",maxValue:1,minValue:0,type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Enable Debug",name:"Debug",type:"Attribute"}],inputs:[{displayName:"Color input",name:"ColorInput",types:["RGBImage"]},{displayName:"Camera Input",name:"CameraInput",types:["Attribute"]}],outputs:[{displayName:"Color output",name:"ColorOutput",type:"RGBImage"}],typeName:"shockwave"},{displayName:"Pixelation",fields:[{datatype:"String",defaultValue:"",displayName:"Name",name:"Name",type:"Attribute"},{datatype:"Boolean",defaultValue:!0,displayName:"Enabled",name:"Enabled",type:"Attribute"},{datatype:"Float",defaultValue:10,displayName:"Granularity",maxValue:100,minValue:1,name:"Granularity",type:"Attribute",widget:"Slider"}],inputs:[{displayName:"Color input",name:"ColorInput",types:["RGBImage"]}],outputs:[{displayName:"Color output",name:"ColorOutput",type:"RGBImage"}],typeName:"pixelation"},{displayName:"Adjust",fields:[{datatype:"String",defaultValue:"",displayName:"Name",name:"Name",type:"Attribute"},{datatype:"Boolean",defaultValue:!0,displayName:"Enabled",name:"Enabled",type:"Attribute"},{datatype:"Float",defaultValue:0,displayName:"Brightness",maxValue:10,minValue:-10,name:"Brightness",type:"Attribute"},{datatype:"Float",defaultValue:0,displayName:"Contrast",maxValue:10,minValue:-10,name:"Contrast",type:"Attribute"},{datatype:"Float",defaultValue:0,displayName:"Hue",maxValue:6.283,minValue:0,name:"Hue",type:"Attribute"},{datatype:"Float",defaultValue:0,displayName:"Saturation",maxValue:1,minValue:-1,name:"Saturation",type:"Attribute"}],inputs:[{displayName:"Color input",name:"ColorInput",types:["RGBImage"]}],outputs:[{displayName:"Color output",name:"ColorOutput",type:"RGBImage"}],typeName:"adjust"},{displayName:"Chromatic abberation",fields:[{datatype:"String",defaultValue:"",displayName:"Name",name:"Name",type:"Attribute"},{datatype:"Boolean",defaultValue:!0,displayName:"Enabled",name:"Enabled",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Amount",maxValue:10,minValue:0,name:"Amount",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Red factor",maxValue:1,minValue:0,name:"RedFactor",type:"Attribute"},{datatype:"Float",defaultValue:.5,displayName:"Green factor",maxValue:1,minValue:0,name:"GreenFactor",type:"Attribute"},{datatype:"Float",defaultValue:.25,displayName:"Blue factor",maxValue:1,minValue:0,name:"BlueFactor",type:"Attribute"}],inputs:[{displayName:"Color input",name:"ColorInput",types:["RGBImage"]}],outputs:[{displayName:"Color output",name:"ColorOutput",type:"RGBImage"}],typeName:"chromaticAbberation"},{displayName:"Color Depth",fields:[{datatype:"String",defaultValue:"",displayName:"Name",name:"Name",type:"Attribute"},{datatype:"Boolean",defaultValue:!0,displayName:"Enabled",name:"Enabled",type:"Attribute"},{datatype:"Integer",defaultValue:16,displayName:"Bit Depth",maxValue:32,minValue:1,name:"bitDepth",type:"Attribute"},{datatype:"Enum",defaultValue:"Normal",displayName:"Blending Mode",name:"BlendingMode",options:["Add","Alpha","Average","Color","Color Burn","Color Dodge","Darken","Difference","Divide","Exclusion","Hard Light","Hard Mix","Hue","Invert","Invert RGB","Lighten","Linear Burn","Linear Dodge","Linear Light","Luminosity","Multiply","Negation","Normal","Overlay","Pin Light","Reflect","Saturation","Screen","Soft Light","Set","Src","Subtract","Vivid Light"],type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Opacity",info:"Controls blending. Only valid for additive and subtractive modes",maxValue:1,minValue:0,name:"Opacity",type:"Attribute",widget:"Slider"}],inputs:[{displayName:"Color input",name:"ColorInput",types:["RGBImage"]}],outputs:[{displayName:"Color output",name:"ColorOutput",type:"RGBImage"}],typeName:"colorDepth"},{displayName:"Depth Of Field",fields:[{datatype:"String",defaultValue:"",displayName:"Name",name:"Name",type:"Attribute"},{datatype:"Boolean",defaultValue:!0,displayName:"Enabled",name:"Enabled",type:"Attribute"},{datatype:"String",defaultValue:"",displayName:"Focus Target",name:"FocusTarget",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"World Focus Distance",minValue:0,name:"WorldFocusDistance",type:"Attribute"},{datatype:"Float",defaultValue:5,displayName:"World Focus Range",minValue:0,name:"WorldFocusRange",type:"Attribute"},{datatype:"Integer",defaultValue:4,displayName:"Kawase Blur Kernel Size",maxValue:10,minValue:0,name:"Kernel",type:"Attribute"},{datatype:"Float",defaultValue:.5,displayName:"Bokeh Scale",maxValue:25,minValue:0,name:"BokehScale",type:"Attribute"},{datatype:"Float",defaultValue:.75,displayName:"Resolution Scale",maxValue:1,minValue:0,name:"ResolutionScale",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Enable Debug",name:"Debug",type:"Attribute"}],inputs:[{displayName:"Color input",name:"ColorInput",types:["RGBImage"]},{displayName:"Depth input",name:"DepthInput",types:["GrayImage"]},{displayName:"Camera Input",name:"CameraInput",types:["Attribute"]}],outputs:[{displayName:"Color output",name:"ColorOutput",type:"RGBImage"}],typeName:"depthoffield"},{displayName:"Glitch",fields:[{datatype:"String",defaultValue:"",displayName:"Name",name:"Name",type:"Attribute"},{datatype:"Boolean",defaultValue:!0,displayName:"Enabled",name:"Enabled",type:"Attribute"},{datatype:"Vector2d",defaultValue:{x:.3,y:1},displayName:"Strength",info:"Two values controlling the maximum and minimum strength of the glitch effect.",name:"Strength",type:"Attribute"},{datatype:"Float",defaultValue:.1,displayName:"Columns",maxValue:1,minValue:0,name:"Columns",type:"Attribute"},{datatype:"Vector2d",defaultValue:{x:0,y:2.5},displayName:"Delay",info:"Two values controlling the duration of the delay of the glitch effect.",name:"Delay",type:"Attribute"},{datatype:"Vector2d",defaultValue:{x:0,y:3},displayName:"Duration",info:"Two values controlling the duration of the glitch effect.",name:"Duration",type:"Attribute"}],inputs:[{displayName:"Color input",name:"ColorInput",types:["RGBImage"]}],outputs:[{displayName:"Color output",name:"ColorOutput",type:"RGBImage"}],typeName:"glitch"},{displayName:"God Rays",fields:[{datatype:"String",defaultValue:"",displayName:"Name",name:"Name",type:"Attribute"},{datatype:"Boolean",defaultValue:!0,displayName:"Enabled",name:"Enabled",type:"Attribute"},{datatype:"String",defaultValue:"",type:"Attribute",displayName:"Light Source",name:"SunTag"},{datatype:"Float",defaultValue:1,displayName:"Size",minValue:.01,maxValue:10,name:"Size",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Density",minValue:.01,maxValue:1,name:"Density",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Decay",minValue:.01,maxValue:1,name:"Decay",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Weight",minValue:.01,maxValue:1,name:"Weight",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Exposure",minValue:.01,maxValue:1,name:"Exposure",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"MaximumIntensity",minValue:.01,maxValue:1,name:"MaximumIntensity",type:"Attribute"},{datatype:"Integer",defaultValue:60,displayName:"Samples",minValue:0,name:"Samples",type:"Attribute"},{datatype:"Boolean",defaultValue:!0,displayName:"Blur Rays",name:"BlurRays",type:"Attribute"},{datatype:"Integer",defaultValue:2,displayName:"Kernel Size",info:"The number of kernel applied on the God Rays. A higher number yields to a better blur effect at higher computational cost",maxValue:10,minValue:0,name:"Kernel",if:{BlurRays:!0},type:"Attribute"},{datatype:"Float",defaultValue:.5,displayName:"Resolution Scale",info:"A higher resolution yields a more realistic result at higher computational cost",maxValue:1,minValue:0,name:"ResolutionScale",type:"Attribute"},{datatype:"Enum",defaultValue:"Screen",displayName:"Blending Mode",name:"BlendingMode",options:["Add","Alpha","Average","Color","Color Burn","Color Dodge","Darken","Difference","Divide","Exclusion","Hard Light","Hard Mix","Hue","Invert","Invert RGB","Lighten","Linear Burn","Linear Dodge","Linear Light","Luminosity","Multiply","Negation","Normal","Overlay","Pin Light","Reflect","Saturation","Screen","Soft Light","Set","Src","Subtract","Vivid Light"],type:"Attribute"},{datatype:"Float",defaultValue:.25,displayName:"Opacity",name:"Opacity",maxValue:1,minValue:0,type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Enable Debug",name:"Debug",type:"Attribute"}],inputs:[{displayName:"Color input",name:"ColorInput",types:["RGBImage"]},{displayName:"Depth input",name:"DepthInput",types:["GrayImage"]},{displayName:"Camera Input",name:"CameraInput",types:["Attribute"]}],outputs:[{displayName:"Color output",name:"ColorOutput",type:"RGBImage"}],typeName:"godrays"},{displayName:"Kawase Blur",fields:[{datatype:"String",defaultValue:"",displayName:"Name",name:"Name",type:"Attribute"},{datatype:"Boolean",defaultValue:!0,displayName:"Enabled",name:"Enabled",type:"Attribute"},{datatype:"Integer",defaultValue:2,displayName:"Kernel Size",info:"The number of kernel applied on the effect. A higher number yields to a better blur effect at higher computational cost",maxValue:10,minValue:0,name:"Kernel",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Scale",info:"The strenth of the blur effect.",maxValue:1,minValue:0,name:"Scale",type:"Attribute"}],inputs:[{displayName:"Color input",name:"ColorInput",types:["RGBImage"]}],outputs:[{displayName:"Color output",name:"ColorOutput",type:"RGBImage"}],typeName:"kawaseblur"},{displayName:"Radial blur",fields:[{datatype:"String",defaultValue:"",displayName:"Name",name:"Name",type:"Attribute"},{datatype:"Boolean",defaultValue:!0,displayName:"Enabled",name:"Enabled",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Amount",maxValue:10,minValue:0,name:"Amount",type:"Attribute"},{datatype:"Vector2d",defaultValue:{x:.5,y:.5},displayName:"Center",name:"Center",type:"Attribute"}],inputs:[{displayName:"Color input",name:"ColorInput",types:["RGBImage"]}],outputs:[{displayName:"Color output",name:"ColorOutput",type:"RGBImage"}],typeName:"radialBlur"},{displayName:"Tone Mapping",fields:[{datatype:"String",defaultValue:"",displayName:"Name",name:"Name",type:"Attribute"},{datatype:"Boolean",defaultValue:!0,displayName:"Enabled",name:"Enabled",type:"Attribute"},{datatype:"Enum",defaultValue:"LINEAR",displayName:"Mode",name:"TonemappingMode",options:["LINEAR","REINHARD","REINHARD2","REINHARD2_ADAPTIVE","UNCHARTED2","ACES_FILMIC","AGX","NEUTRAL"],type:"Attribute"},{datatype:"Integer",defaultValue:256,displayName:"Luminance Map Width. Must be a power of 2.",minValue:1,name:"LuminanceMapWidth",type:"Attribute",if:{TonemappingMode:"REINHARD2_ADAPTIVE"}},{datatype:"Integer",defaultValue:256,displayName:"Luminance Map Height. Must be a power of 2.",if:{TonemappingMode:"REINHARD2_ADAPTIVE"},minValue:1,name:"LuminanceMapHeight",type:"Attribute"},{datatype:"Float",defaultValue:4,displayName:"Maximum Luminance",minValue:0,maxValue:20,name:"MaxLuminance",type:"Attribute"},{datatype:"Float",defaultValue:.01,displayName:"Minimum Luminance",minValue:0,maxValue:3,name:"MinLuminance",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Average Luminance",minValue:0,maxValue:1,name:"MeanLuminance",type:"Attribute"},{datatype:"Float",defaultValue:.6,displayName:"Middle Grey",maxValue:1,minValue:0,name:"MiddleGrey",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Adaptation Rate",minValue:0,name:"AdaptationRate",type:"Attribute"}],inputs:[{displayName:"Color input",name:"ColorInput",types:["RGBImage"]}],outputs:[{displayName:"Color output",name:"ColorOutput",type:"RGBImage"}],typeName:"tonemapping"},{displayName:"Output",fields:[{datatype:"String",defaultValue:"Output",displayName:"Name",name:"Name",type:"Attribute"},{datatype:"Integer",defaultValue:256,displayName:"Target width",minValue:1,name:"DesiredWidth",type:"Attribute",info:"This is the width of the render target in case the composition is used in a material albedo slot."},{datatype:"Integer",defaultValue:256,displayName:"Target height",minValue:1,name:"DesiredHeight",type:"Attribute",info:"This is the height of the render target in case the composition is used in a material albedo slot."}],inputs:[{displayName:"Color input",name:"ColorInput",types:["RGBImage"]}],outputs:[],typeName:"output"}],name:"NodeGraph",type:"NodeGraph"}],name:"Composition",updateRequiresThumbRefresh:!1,creatableEmpty:!0},{_id:{$oid:"5e6a1ad189707f2ef9147396"},contentTypes:[],fieldSets:[],fields:[],name:"Behavior",updateRequiresThumbRefresh:!1,creatableEmpty:!1},{_id:{$oid:"5e6a1ad189707feef9173398"},contentTypes:["text/x-glsl"],fieldSets:[],fields:[{datatype:"Enum",defaultValue:1,displayName:"GLSL Version",name:"GLSLVersion",options:[1,3],type:"Attribute"},{datatype:"Enum",defaultValue:"Full",displayName:"Resolution",name:"Resolution",options:["Full","Half","Quarter"],type:"Attribute"},{displayName:"Texture Channel 1",linkableTypes:["Image"],type:"Link",usageAs:"TexChannel1"},{displayName:"Texture Channel 2",linkableTypes:["Image"],type:"Link",usageAs:"TexChannel2"},{displayName:"Texture Channel 3",linkableTypes:["Image"],type:"Link",usageAs:"TexChannel3"},{displayName:"Texture Channel 4",linkableTypes:["Image"],type:"Link",usageAs:"TexChannel4"}],name:"Background Shader",updateRequiresThumbRefresh:!1,creatableEmpty:!0},{_id:{$oid:"5e6a1ad189707feef9173399"},contentTypes:["video/mp4","video/webm"],fieldSets:[],fields:[{datatype:"Enum",defaultValue:"Linear",displayName:"Encoding",name:"Encoding",options:["Linear","sRGB"],type:"Attribute"}],name:"Video",creatableEmpty:!1},{_id:{$oid:"5e8c9d5c02a37596bb1fd5b6"},contentTypes:[""],fieldSets:[],fields:[{elementName:"Item",fields:[{datatype:"String",defaultValue:"",displayName:"Description",name:"Description",type:"Attribute"},{type:"Link",usageAs:"Item",mandatory:!0}],name:"Items",type:"List"}],name:"Collection",creatableEmpty:!0},{_id:{$oid:"5e8c9d5c02a33596bb53d5b6"},contentTypes:[""],fieldSets:[],fields:[{displayName:"Audio items",elementName:"AudioItem",fields:[{datatype:"String",defaultValue:"",displayName:"Name",name:"Name",type:"Attribute"},{linkableTypes:["Audio"],type:"Link",usageAs:"Audio",mandatory:!0}],name:"AudioItems",type:"List"}],name:"Audio Collection",creatableEmpty:!0},{_id:{$oid:"5e8c9d5c01a32576bb53d5b6"},contentTypes:[""],fieldSets:[],fields:[{displayName:"Mesh items",elementName:"MeshItem",fields:[{datatype:"String",defaultValue:"",displayName:"Name",name:"Name",type:"Attribute"},{linkableTypes:["Mesh"],type:"Link",usageAs:"Mesh",mandatory:!0}],name:"MeshItems",type:"List"}],name:"Mesh Collection",creatableEmpty:!0},{_id:{$oid:"5e8c9d5c0233596cb31d5ba2"},contentTypes:[""],fieldSets:[],fields:[{displayName:"Material items",elementName:"MaterialItem",fields:[{datatype:"String",defaultValue:"",displayName:"Name",name:"Name",type:"Attribute"},{linkableTypes:["Material"],type:"Link",usageAs:"Material",mandatory:!0}],name:"MaterialItems",type:"List"}],name:"Material Collection",creatableEmpty:!0},{_id:{$oid:"5edf2f6edc25bdf4e5723e52"},contentTypes:["text/x-yaml"],fieldSets:[],fields:[{displayName:"Material collections",elementName:"Material Collection",fields:[{linkableTypes:["Material Collection"],type:"Link",usageAs:"MaterialCollection",displayName:"Material Collection",mandatory:!0}],name:"MaterialCollections",type:"List"},{displayName:"Mesh collections",elementName:"Mesh Collection",fields:[{linkableTypes:["Mesh Collection"],type:"Link",usageAs:"MeshCollection",displayName:"Mesh Collection",mandatory:!0}],name:"MeshCollections",type:"List"}],name:"GridMap",creatableEmpty:!0},{_id:{$oid:"60827c20d3f7a631e71522cc"},contentTypes:[],fieldSets:[],fields:[],name:"Dataset",creatableEmpty:!1},{_id:{$oid:"62133ff41302cfcd0d9a2346"},contentTypes:["text/x-glsl"],fieldSets:[],fields:[],name:"Pixel Shader",updateRequiresThumbRefresh:!1,creatableEmpty:!0},{_id:{$oid:"62133ffb1302cf53ef9a234e"},contentTypes:["text/x-glsl"],fieldSets:[],fields:[],name:"Vertex Shader",updateRequiresThumbRefresh:!1,creatableEmpty:!0},{_id:{$oid:"62a83a1ef46738fe096fd7e3"},contentTypes:["application/zip"],fieldSets:[],fields:[],name:"Archive",updateRequiresThumbRefresh:!1,creatableEmpty:!1},{_id:{$oid:"640076f0e49250ab06ea4aec"},contentTypes:["font/ttf","font/otf"],fieldSets:[],fields:[],name:"Font",updateRequiresThumbRefresh:!0,creatableEmpty:!1},{_id:{$oid:"6463df676055450cac673d90"},contentTypes:[],fieldSets:[],fields:[{label:"General Settings",type:"Separator"},{datatype:"Integer",defaultValue:1e3,displayName:"Maximum Number of Particles",info:"The maximum number of particles that can exist at the same time in the simulation.",minValue:0,name:"MaxParticles",type:"Attribute"},{datatype:"Float",defaultValue:-1,displayName:"Duration",info:"Duration (in seconds) the particle system runs. Use -1 for infinite duration.",minValue:-1,name:"Duration",type:"Attribute"},{datatype:"Enum",defaultValue:"Local",displayName:"Coordinate System",info:"Defines whether particle movement is relative to the emitter's local space or the global world space.",name:"SystemCoordinates",options:["Local","World"],type:"Attribute"},{label:"Emission Settings",type:"Separator",collapsed:!0},{datatype:"Boolean",defaultValue:!1,displayName:"Emit All At Once",info:"Emit all particles immediately when the simulation starts.",name:"EmitAllAtOnce",type:"Attribute"},{datatype:"Float",defaultValue:128,minValue:0,displayName:"Spawn amount",if:{EmitAllAtOnce:!1},info:"The number of particles emitted each time the emitter spawns.",name:"SpawnAmount",type:"Attribute"},{datatype:"Float",defaultValue:1,minValue:0,displayName:"Spawn Interval",info:"The time, in seconds, between each consecutive spawn of particles.",if:{EmitAllAtOnce:!1},name:"SpawnRate",type:"Attribute"},{datatype:"Float",defaultValue:-1,minValue:-1,displayName:"Number of Emissions",info:"Total number of spawn events before emission stops; after this number of emissions, no more particles will be emitted.",if:{EmitAllAtOnce:!1},name:"MaximumEmissions",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Continuous emission",info:"If enabled, particles in each emission spawn gradually over time instead of instantly.",if:{EmitAllAtOnce:!1},name:"ContinuousEmissionFlag",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Auto Respawn",info:"Automatically respawn particles when they die.",name:"Respawn",type:"Attribute",if:{EmitAllAtOnce:!0}},{label:"Size Settings",type:"Separator",collapsed:!0},{datatype:"Enum",defaultValue:"Constant",options:["Constant","Variable","Velocity"],displayName:"Scaling Mode",info:"Determines how particle size changes over their lifetime: constant size, variable scaling, or based on velocity.",name:"ScaleMode",type:"Attribute"},{datatype:"Float",defaultValue:10,displayName:"Base Size",info:"The size of the particles at emission",minValue:0,name:"ParticleInitialSize",type:"Attribute"},{datatype:"Float",defaultValue:15,displayName:"Final Size",info:"The size particles reach at the end of their lifetime. If particles die early, they may not reach their final size.",minValue:0,name:"ParticleFinalSize",type:"Attribute",if:{ScaleMode:"Variable"}},{datatype:"Float",displayName:"Scale Randomness",name:"ScaleRandomness",defaultValue:.1,minValue:0,maxValue:1,info:"Random variation applied to scale curve values."},{datatype:"Enum",defaultValue:"Linear",options:["Linear","Exponential","Inverse Exponential","Ease-in, Ease-out"],displayName:"Interpolation Function",info:"Interpolation method for scaling particles over their lifetime.",type:"Attribute",name:"ScaleFunction",if:{ScaleMode:"Variable"}},{datatype:"Float",defaultValue:.5,minValue:0,maxValue:5,if:{ScaleMode:"Variable",$or:[{ScaleFunction:"Exponential"},{ScaleFunction:"Inverse Exponential"},{ScaleFunction:"Ease-in, Ease-out"}]},displayName:"Interpolation Rate",name:"ApproachSize",info:"Controls the rate at which particles scale over time based on the interpolation modes.",type:"Attribute"},{label:"Velocity Settings",type:"Separator",collapsed:!0},{datatype:"Enum",defaultValue:"Constant",options:["Constant","Variable"],displayName:"Velocity Mode",info:"Determines if particles maintain a constant velocity or change velocity over their lifetime.",name:"VelocityMode",type:"Attribute"},{datatype:"Vector3d",defaultValue:{x:0,y:0,z:0},displayName:"Initial Velocity",info:"The starting velocity of particles when emitted.",name:"InitialVelocity",type:"Attribute"},{datatype:"Vector3d",defaultValue:{x:0,y:0,z:0},displayName:"Final Velocity",info:"The velocity particles will reach by the end of their lifetime. Used only when Velocity Mode is set to Variable.",name:"FinalVelocity",type:"Attribute",if:{VelocityMode:"Variable"}},{datatype:"Enum",defaultValue:"Linear",options:["Linear","Exponential","Inverse Exponential","Ease-in, Ease-out"],displayName:"Interpolation Function",info:"Defines the interpolation method for velocity changes over the particle’s lifetime.",name:"VelocityFunction",type:"Attribute",if:{VelocityMode:"Variable"}},{datatype:"Float",defaultValue:.5,displayName:"Interpolation Rate",info:"Controls the rate at which particles transition from initial to final velocity for the interpolation modes.",maxValue:5,minValue:0,name:"FinalVelocityApproach",type:"Attribute",if:{VelocityMode:"Variable",$or:[{VelocityFunction:"Exponential"},{VelocityFunction:"Inverse Exponential"},{VelocityFunction:"Ease-in, Ease-out"}]}},{datatype:"Float",defaultValue:0,displayName:"Spread",info:"Randomly offsets the emission angle (in degrees) from the base direction. A value of 360° emits particles uniformly in all directions. Requires Initial Velocity not be a 0-vector to have any effect.",maxValue:360,minValue:0,name:"Spread",type:"Attribute"},{datatype:"Float",defaultValue:0,displayName:"Angular Velocity",info:"The speed at which particles rotate around their center of mass, in radians per second.",minValue:0,name:"AngularVelocity",type:"Attribute",if:{$or:[{ParticleType:"Texture"},{ParticleType:"Sprite"}]}},{datatype:"Enum",defaultValue:"Clockwise",options:["Clockwise","Anticlockwise"],displayName:"Rotation Direction",info:"Controls the rotation direction of particles.",name:"AngularDirection",type:"Attribute",if:{$or:[{ParticleType:"Texture"},{ParticleType:"Sprite"}]}},{datatype:"Float",defaultValue:0,displayName:"Rotation Randomness",info:"Random variation applied to particle angular velocity. 0 = all particles rotate at the same speed, 1 = each particle can vary ±100% of base angular velocity.",minValue:0,maxValue:1,name:"RotationRandomness",type:"Attribute",if:{$or:[{ParticleType:"Texture"},{ParticleType:"Sprite"}]}},{label:"Force Settings",type:"Separator",collapsed:!0},{datatype:"Float",defaultValue:0,displayName:"Drift",info:"A random velocity added to particles in all directions to simulate drifting motion.",name:"Drift",type:"Attribute"},{datatype:"Float",defaultValue:0,displayName:"Gravity",info:"A constant acceleration applied to particles after emission, simulating gravity. Positive values pull particles downward; negative values pull them upward.",name:"Gravity",type:"Attribute"},{datatype:"Float",defaultValue:0,displayName:"Tangential Velocity",info:"Applies a tangential velocity to particles, causing them to orbit the center point along the defined orbital plane.",name:"OrbitalVelocity",type:"Attribute"},{datatype:"Vector3d",defaultValue:{x:0,y:0,z:0},displayName:"Orbit Center",info:"The point in 3D space around which particles orbit.",name:"OrbitalCenterPoint",type:"Attribute"},{datatype:"Vector3d",defaultValue:{x:0,y:1,z:0},displayName:"Orbital Plane",info:"A vector normal that defines the orientation of the orbital plane. Particles orbit around an axis perpendicular to this vector. Should be normalized (length = 1), but normalization is not enforced.",name:"OrbitalPlane",type:"Attribute"},{datatype:"Float",defaultValue:0,displayName:"Orbital Decay",info:"Causes particles to gradually spiral inward toward the orbital center over time.",name:"OrbitalDecay",type:"Attribute"},{datatype:"Vector3d",defaultValue:{x:0,y:0,z:0},displayName:"Target",info:"A 3D point in space that particles are attracted to.",name:"Target",type:"Attribute"},{datatype:"Float",defaultValue:0,displayName:"Target Force",info:"The strength of the attraction force pulling particles toward the target. Set to 0 to disable.",name:"TargetForce",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Kill on target",info:"If enabled, particles are deleted once they reach the target position.",name:"TargetDeleteFlag",type:"Attribute"},{datatype:"Float",defaultValue:.1,if:{TargetDeleteFlag:!0},displayName:"Target Deletion Threshold",info:"The distance from the target at which particles are deleted.",minValue:0,name:"TargetDeletionThreshold",type:"Attribute"},{label:"Life Settings",type:"Separator",collapsed:!0},{datatype:"Float",defaultValue:10,displayName:"Life",info:"Time in seconds each particle remains alive before disappearing.",minValue:0,name:"Life",type:"Attribute"},{datatype:"Float",defaultValue:0,displayName:"Life Randomness",info:"Adds randomness, in seconds, to particle lifetimes. Each particle's life is calculated as: life + random(0 to 1) x life randomness.",minValue:0,name:"LifeRandomness",type:"Attribute"},{label:"Texture and Color Settings",type:"Separator",collapsed:!0},{datatype:"ParticlePreview",displayName:"Particle Preview",info:"Visual preview of a single particle.",name:"ParticlePreview",type:"Attribute"},{datatype:"Enum",defaultValue:"Base",name:"ParticleType",info:"Defines the rendering style of particles: Base (simple points), Texture (image-based), or Sprite (animated images).",options:["Base","Texture","Sprite"],type:"Attribute"},{displayName:"Texture",info:"Image used as the particle’s texture.",if:{$or:[{ParticleType:"Texture"},{ParticleType:"Sprite"}]},linkableTypes:["Image"],type:"Link",usageAs:"ParticleTexture"},{datatype:"Boolean",defaultValue:!0,displayName:"Circular Mask",info:"Applies a circular alpha mask to the texture or sprite, making only the circular area visible while masking out the corners.",name:"useCircularMask",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,name:"TextureBlending",displayName:"Texture Blending",info:"If enabled, blends the particle texture with the background or other particles for smoother visuals.",if:{$or:[{ParticleType:"Texture"},{ParticleType:"Sprite"}]},type:"Attribute"},{datatype:"Float",defaultValue:0,displayName:"Texture hue",info:"Amount of hue shift applied to the particle texture, expressed as a normalized value from 0 to 1, where 0 corresponds to 0 radians (0°) and 1 corresponds to 2π radians (360°).",minValue:0,maxValue:1,name:"TextureHue",if:{$or:[{ParticleType:"Base"},{TextureBlending:!0}]},type:"Attribute"},{datatype:"Color",defaultValue:{a:255,b:255,g:255,r:255},displayName:"Color",info:"Base color applied to particles at emission.",if:{$or:[{ParticleType:"Base"},{TextureBlending:!0}]},name:"Color",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Use Final Color",info:"Enable color transition so particles interpolate to a specified final color at the end of their lifetime.",if:{$or:[{ParticleType:"Base"},{TextureBlending:!0}]},name:"EnableFinalColor",type:"Attribute"},{datatype:"Color",defaultValue:{a:255,b:255,g:255,r:255},displayName:"Final Color",info:"The color particles interpolate to at the end of their life.",if:{EnableFinalColor:!0,$or:[{ParticleType:"Base"},{TextureBlending:!0}]},name:"FinalColor",type:"Attribute"},{datatype:"Float",defaultValue:0,displayName:"Random Color Factor",info:"Linearly blends each particle's color with a unique random tint. 0 = no randomness, 1 = full random color.",if:{$or:[{ParticleType:"Base"},{TextureBlending:!0}]},minValue:0,maxValue:1,name:"RandomColorFactor",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Enable Sprite Fade",if:{ParticleType:"Sprite"},info:"Allows the sprite to smoothly fade in and fade, creating a softer transition.",name:"EnableSpriteFade",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Roll Sprite With Life",if:{ParticleType:"Sprite"},info:"Enable the sprite to animate by rolling through its frames based on the particle's lifetime.",name:"RollSpriteWithLife",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Sprite Speed",if:{ParticleType:"Sprite",RollSpriteWithLife:!1},info:"Speed, in frames per seconds, at which the sprite animation advances over time.",minValue:0,name:"SpriteSpeed",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Sprite Cols",if:{ParticleType:"Sprite"},info:"Number of horizontal frames (columns) in the sprite sheet. Must be specified manually. Incorrect values may cause improper animation.",minValue:1,name:"SpriteColumns",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Sprite Rows",if:{ParticleType:"Sprite"},info:"Number of vertical frames (rows) in the sprite sheet. Must be specified manually. Incorrect values may cause improper animation.",minValue:1,name:"SpriteRows",type:"Attribute"},{label:"Blending Settings",type:"Separator",collapsed:!0},{datatype:"Enum",defaultValue:"Normal",displayName:"Blending Mode",name:"BlendingMode",options:["Add","Multiply","Negation","Normal","Subtract"],type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Opacity",info:"Adjusts how strongly the blending mode affects the final result.",maxValue:1,minValue:0,name:"Opacity",type:"Attribute",widget:"Slider"},{label:"Fade Settings",type:"Separator",collapsed:!0},{datatype:"Enum",defaultValue:"Constant",options:["Constant","Variable"],displayName:"Fading Mode",info:"Determines how particle opacity changes: constant transparency, fade over lifetime, or based on velocity.",name:"FadeMode",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Initial Opacity",info:"The opacity of particles when they are first emitted (0.0 = transparent, 1.0 = opaque)",minValue:0,maxValue:1,name:"ParticleInitialOpacity",type:"Attribute"},{datatype:"Float",defaultValue:0,displayName:"Final Opacity",info:"The opacity particles reach at the end of their lifetime. Creates fade-out effect when lower than initial opacity.",minValue:0,maxValue:1,name:"ParticleFinalOpacity",type:"Attribute",if:{FadeMode:"Variable"}},{datatype:"Enum",defaultValue:"Linear",options:["Linear","Exponential","Inverse Exponential","Ease-in, Ease-out"],displayName:"Fade Interpolation",info:"Controls how smoothly particles fade between initial and final opacity over their lifetime.",type:"Attribute",name:"FadeFunction",if:{FadeMode:"Variable"}},{datatype:"Float",defaultValue:1,minValue:.1,maxValue:5,if:{FadeMode:"Variable",$or:[{FadeFunction:"Exponential"},{FadeFunction:"Inverse Exponential"},{FadeFunction:"Ease-in, Ease-out"}]},displayName:"Fade Rate",name:"FadeApproach",info:"Controls how quickly the fade transition occurs. Higher values create sharper transitions, lower values create gentler fades.",type:"Attribute"},{label:"Emission Settings",type:"Separator",collapsed:!0},{datatype:"Enum",defaultValue:"Box",name:"EmitterShape",displayName:"Emitter Shape",info:"Defines the geometric shape from which particles are emitted.",options:["Point","Box","Sphere","Hemisphere","Torus","Cone","Circle","Edge"],type:"Attribute"},{datatype:"Enum",defaultValue:"Volume",name:"EmitterTypeSurfaceVolumeNormal",displayName:"Emitter Type",info:"Specifies whether particles are emitted from the surface, volume, or along the normals of the shape.",options:["Surface","Volume","Normals"],if:{$or:[{EmitterShape:"Box"},{EmitterShape:"Sphere"},{EmitterShape:"Cone"}]},type:"Attribute"},{datatype:"Enum",defaultValue:"Volume",name:"EmitterTypeSurfaceVolume",info:"Specifies whether particles are emitted from the surface or volume of the shape.",displayName:"Emitter Type",options:["Surface","Volume"],if:{$or:[{EmitterShape:"Hemisphere"},{EmitterShape:"Torus"}]},type:"Attribute"},{datatype:"Float",defaultValue:10,displayName:"Velocity Along Normals.",info:"Speed at which particles are emitted along the surface normals.",if:{EmitterTypeSurfaceVolumeNormal:"Normals"},minValue:0,name:"NormalsVelocity",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"The size of the emitter.",info:"Defines the size of the emitter.",if:{$or:[{EmitterShape:"Box"}]},minValue:0,name:"EmitterSize",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"The radius of the emitter.",if:{$or:[{EmitterShape:"Torus"},{EmitterShape:"Cone"},{EmitterShape:"Sphere"},{EmitterShape:"Hemisphere"},{EmitterShape:"Circle"}]},minValue:0,name:"EmitterRadius",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"The outer radius of the emitter",if:{$or:[{EmitterShape:"Torus"}]},minValue:0,name:"EmitterOuterRadius",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"The height of the emitter",if:{$or:[{EmitterShape:"Cone"},{EmitterShape:"Edge"}]},minValue:0,name:"EmitterHeight",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"The width of the emitter.",if:{$or:[{EmitterShape:"Edge"}]},minValue:0,name:"EmitterWidth",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Round Tip",if:{$or:[{EmitterShape:"Cone"}]},info:"Round the tip of the cone instead of using a sharp point.",name:"EmitterRoundTip",type:"Attribute"},{label:"Bounding Box Settings",type:"Separator",collapsed:!0},{datatype:"Boolean",defaultValue:!1,displayName:"Enable Bounding Box",info:"Enable a bounding box to restrict particles within a defined 3D area.",name:"EnableBBox",type:"Attribute"},{datatype:"Vector3d",defaultValue:{x:10,y:10,z:10},info:"Coordinates of the bounding box's maximum corner (upper-right-front).",name:"BBoxMax",displayName:"Bounding Box Maximum Corner",if:{EnableBBox:!0},type:"Attribute"},{datatype:"Vector3d",defaultValue:{x:0,y:0,z:0},info:"Coordinates of the bounding box's minimum corner (lower-left-back).",name:"BBoxMin",displayName:"Bounding Box Minimum Corner",if:{EnableBBox:!0},type:"Attribute"},{label:"Curl Noise Settings",type:"Separator",collapsed:!0},{datatype:"Boolean",defaultValue:!1,displayName:"Enable Curl Noise",info:"Toggle curl noise effect on particles to simulate turbulent, swirling particle behavior.",name:"NoiseFlag",type:"Attribute"},{datatype:"NoisePreview",if:{NoiseFlag:!0},displayName:"Noise Preview",info:"Visual preview of the curl noise pattern applied to the particle system.",name:"NoisePreview",type:"Attribute"},{datatype:"Float",defaultValue:0,displayName:"Noise Strength",if:{NoiseFlag:!0},info:"Controls the intensity of the noise.",name:"NoiseStrength",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Noise Frequency",if:{NoiseFlag:!0},info:"Determines the smoothness of the noise: lower values produce smooth, slow variations; higher values produce rapid, detailed changes.",name:"NoiseFrequency",type:"Attribute"},{datatype:"Integer",defaultValue:1,displayName:"Noise Octaves",if:{NoiseFlag:!0},info:"Number of noise layers combined to create complexity. Higher octaves add detail but reduce performance.",name:"NoiseOctaves",type:"Attribute"}],name:"Particles",updateRequiresThumbRefresh:!1,creatableEmpty:!0}];function C(e,t=!1){let a=x.find((t=>t.name===e));if(!a)return null;if(a=structuredClone(a),a.fields=a.fields||[],a.fieldSets=a.fieldSets||[],t&&a.inherits){const e=C(a.inherits,!0);e&&(a.fields=[...e.fields,...a.fields],a.fieldSets=[...e.fieldSets,...a.fieldSets])}return a}var I="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function V(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function E(e){throw new Error('Could not dynamically require "'+e+'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')}var F,D={exports:{}};var R=(F||(F=1,function(e){e.exports=function(){var t,a;function n(){return t.apply(null,arguments)}function i(e){t=e}function r(e){return e instanceof Array||"[object Array]"===Object.prototype.toString.call(e)}function s(e){return null!=e&&"[object Object]"===Object.prototype.toString.call(e)}function o(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function l(e){if(Object.getOwnPropertyNames)return 0===Object.getOwnPropertyNames(e).length;var t;for(t in e)if(o(e,t))return!1;return!0}function u(e){return void 0===e}function c(e){return"number"==typeof e||"[object Number]"===Object.prototype.toString.call(e)}function d(e){return e instanceof Date||"[object Date]"===Object.prototype.toString.call(e)}function p(e,t){var a,n=[],i=e.length;for(a=0;a<i;++a)n.push(t(e[a],a));return n}function h(e,t){for(var a in t)o(t,a)&&(e[a]=t[a]);return o(t,"toString")&&(e.toString=t.toString),o(t,"valueOf")&&(e.valueOf=t.valueOf),e}function f(e,t,a,n){return qa(e,t,a,n,!0).utc()}function m(){return{empty:!1,unusedTokens:[],unusedInput:[],overflow:-2,charsLeftOver:0,nullInput:!1,invalidEra:null,invalidMonth:null,invalidFormat:!1,userInvalidated:!1,iso:!1,parsedDateParts:[],era:null,meridiem:null,rfc2822:!1,weekdayMismatch:!1}}function y(e){return null==e._pf&&(e._pf=m()),e._pf}function g(e){var t=null,n=!1,i=e._d&&!isNaN(e._d.getTime());return i&&(t=y(e),n=a.call(t.parsedDateParts,(function(e){return null!=e})),i=t.overflow<0&&!t.empty&&!t.invalidEra&&!t.invalidMonth&&!t.invalidWeekday&&!t.weekdayMismatch&&!t.nullInput&&!t.invalidFormat&&!t.userInvalidated&&(!t.meridiem||t.meridiem&&n),e._strict&&(i=i&&0===t.charsLeftOver&&0===t.unusedTokens.length&&void 0===t.bigHour)),null!=Object.isFrozen&&Object.isFrozen(e)?i:(e._isValid=i,e._isValid)}function b(e){var t=f(NaN);return null!=e?h(y(t),e):y(t).userInvalidated=!0,t}a=Array.prototype.some?Array.prototype.some:function(e){var t,a=Object(this),n=a.length>>>0;for(t=0;t<n;t++)if(t in a&&e.call(this,a[t],t,a))return!0;return!1};var v=n.momentProperties=[],_=!1;function w(e,t){var a,n,i,r=v.length;if(u(t._isAMomentObject)||(e._isAMomentObject=t._isAMomentObject),u(t._i)||(e._i=t._i),u(t._f)||(e._f=t._f),u(t._l)||(e._l=t._l),u(t._strict)||(e._strict=t._strict),u(t._tzm)||(e._tzm=t._tzm),u(t._isUTC)||(e._isUTC=t._isUTC),u(t._offset)||(e._offset=t._offset),u(t._pf)||(e._pf=y(t)),u(t._locale)||(e._locale=t._locale),r>0)for(a=0;a<r;a++)u(i=t[n=v[a]])||(e[n]=i);return e}function A(e){w(this,e),this._d=new Date(null!=e._d?e._d.getTime():NaN),this.isValid()||(this._d=new Date(NaN)),!1===_&&(_=!0,n.updateOffset(this),_=!1)}function k(e){return e instanceof A||null!=e&&null!=e._isAMomentObject}function S(e){!1===n.suppressDeprecationWarnings&&"undefined"!=typeof console&&console.warn&&console.warn("Deprecation warning: "+e)}function N(e,t){var a=!0;return h((function(){if(null!=n.deprecationHandler&&n.deprecationHandler(null,e),a){var i,r,s,l=[],u=arguments.length;for(r=0;r<u;r++){if(i="","object"==typeof arguments[r]){for(s in i+="\n["+r+"] ",arguments[0])o(arguments[0],s)&&(i+=s+": "+arguments[0][s]+", ");i=i.slice(0,-2)}else i=arguments[r];l.push(i)}S(e+"\nArguments: "+Array.prototype.slice.call(l).join("")+"\n"+(new Error).stack),a=!1}return t.apply(this,arguments)}),t)}var T,M={};function x(e,t){null!=n.deprecationHandler&&n.deprecationHandler(e,t),M[e]||(S(t),M[e]=!0)}function C(e){return"undefined"!=typeof Function&&e instanceof Function||"[object Function]"===Object.prototype.toString.call(e)}function I(e){var t,a;for(a in e)o(e,a)&&(C(t=e[a])?this[a]=t:this["_"+a]=t);this._config=e,this._dayOfMonthOrdinalParseLenient=new RegExp((this._dayOfMonthOrdinalParse.source||this._ordinalParse.source)+"|"+/\d{1,2}/.source)}function V(e,t){var a,n=h({},e);for(a in t)o(t,a)&&(s(e[a])&&s(t[a])?(n[a]={},h(n[a],e[a]),h(n[a],t[a])):null!=t[a]?n[a]=t[a]:delete n[a]);for(a in e)o(e,a)&&!o(t,a)&&s(e[a])&&(n[a]=h({},n[a]));return n}function F(e){null!=e&&this.set(e)}n.suppressDeprecationWarnings=!1,n.deprecationHandler=null,T=Object.keys?Object.keys:function(e){var t,a=[];for(t in e)o(e,t)&&a.push(t);return a};var D={sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"};function R(e,t,a){var n=this._calendar[e]||this._calendar.sameElse;return C(n)?n.call(t,a):n}function L(e,t,a){var n=""+Math.abs(e),i=t-n.length;return(e>=0?a?"+":"":"-")+Math.pow(10,Math.max(0,i)).toString().substr(1)+n}var P=/(\[[^\[]*\])|(\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|N{1,5}|YYYYYY|YYYYY|YYYY|YY|y{2,4}|yo?|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g,B=/(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g,O={},$={};function U(e,t,a,n){var i=n;"string"==typeof n&&(i=function(){return this[n]()}),e&&($[e]=i),t&&($[t[0]]=function(){return L(i.apply(this,arguments),t[1],t[2])}),a&&($[a]=function(){return this.localeData().ordinal(i.apply(this,arguments),e)})}function j(e){return e.match(/\[[\s\S]/)?e.replace(/^\[|\]$/g,""):e.replace(/\\/g,"")}function z(e){var t,a,n=e.match(P);for(t=0,a=n.length;t<a;t++)$[n[t]]?n[t]=$[n[t]]:n[t]=j(n[t]);return function(t){var i,r="";for(i=0;i<a;i++)r+=C(n[i])?n[i].call(t,e):n[i];return r}}function W(e,t){return e.isValid()?(t=Y(t,e.localeData()),O[t]=O[t]||z(t),O[t](e)):e.localeData().invalidDate()}function Y(e,t){var a=5;function n(e){return t.longDateFormat(e)||e}for(B.lastIndex=0;a>=0&&B.test(e);)e=e.replace(B,n),B.lastIndex=0,a-=1;return e}var H={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"};function G(e){var t=this._longDateFormat[e],a=this._longDateFormat[e.toUpperCase()];return t||!a?t:(this._longDateFormat[e]=a.match(P).map((function(e){return"MMMM"===e||"MM"===e||"DD"===e||"dddd"===e?e.slice(1):e})).join(""),this._longDateFormat[e])}var q="Invalid date";function Z(){return this._invalidDate}var J="%d",K=/\d{1,2}/;function X(e){return this._ordinal.replace("%d",e)}var Q={future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",w:"a week",ww:"%d weeks",M:"a month",MM:"%d months",y:"a year",yy:"%d years"};function ee(e,t,a,n){var i=this._relativeTime[a];return C(i)?i(e,t,a,n):i.replace(/%d/i,e)}function te(e,t){var a=this._relativeTime[e>0?"future":"past"];return C(a)?a(t):a.replace(/%s/i,t)}var ae={D:"date",dates:"date",date:"date",d:"day",days:"day",day:"day",e:"weekday",weekdays:"weekday",weekday:"weekday",E:"isoWeekday",isoweekdays:"isoWeekday",isoweekday:"isoWeekday",DDD:"dayOfYear",dayofyears:"dayOfYear",dayofyear:"dayOfYear",h:"hour",hours:"hour",hour:"hour",ms:"millisecond",milliseconds:"millisecond",millisecond:"millisecond",m:"minute",minutes:"minute",minute:"minute",M:"month",months:"month",month:"month",Q:"quarter",quarters:"quarter",quarter:"quarter",s:"second",seconds:"second",second:"second",gg:"weekYear",weekyears:"weekYear",weekyear:"weekYear",GG:"isoWeekYear",isoweekyears:"isoWeekYear",isoweekyear:"isoWeekYear",w:"week",weeks:"week",week:"week",W:"isoWeek",isoweeks:"isoWeek",isoweek:"isoWeek",y:"year",years:"year",year:"year"};function ne(e){return"string"==typeof e?ae[e]||ae[e.toLowerCase()]:void 0}function ie(e){var t,a,n={};for(a in e)o(e,a)&&(t=ne(a))&&(n[t]=e[a]);return n}var re={date:9,day:11,weekday:11,isoWeekday:11,dayOfYear:4,hour:13,millisecond:16,minute:14,month:8,quarter:7,second:15,weekYear:1,isoWeekYear:1,week:5,isoWeek:5,year:1};function se(e){var t,a=[];for(t in e)o(e,t)&&a.push({unit:t,priority:re[t]});return a.sort((function(e,t){return e.priority-t.priority})),a}var oe,le=/\d/,ue=/\d\d/,ce=/\d{3}/,de=/\d{4}/,pe=/[+-]?\d{6}/,he=/\d\d?/,fe=/\d\d\d\d?/,me=/\d\d\d\d\d\d?/,ye=/\d{1,3}/,ge=/\d{1,4}/,be=/[+-]?\d{1,6}/,ve=/\d+/,_e=/[+-]?\d+/,we=/Z|[+-]\d\d:?\d\d/gi,Ae=/Z|[+-]\d\d(?::?\d\d)?/gi,ke=/[+-]?\d+(\.\d{1,3})?/,Se=/[0-9]{0,256}['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFF07\uFF10-\uFFEF]{1,256}|[\u0600-\u06FF\/]{1,256}(\s*?[\u0600-\u06FF]{1,256}){1,2}/i,Ne=/^[1-9]\d?/,Te=/^([1-9]\d|\d)/;function Me(e,t,a){oe[e]=C(t)?t:function(e,n){return e&&a?a:t}}function xe(e,t){return o(oe,e)?oe[e](t._strict,t._locale):new RegExp(Ce(e))}function Ce(e){return Ie(e.replace("\\","").replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g,(function(e,t,a,n,i){return t||a||n||i})))}function Ie(e){return e.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&")}function Ve(e){return e<0?Math.ceil(e)||0:Math.floor(e)}function Ee(e){var t=+e,a=0;return 0!==t&&isFinite(t)&&(a=Ve(t)),a}oe={};var Fe={};function De(e,t){var a,n,i=t;for("string"==typeof e&&(e=[e]),c(t)&&(i=function(e,a){a[t]=Ee(e)}),n=e.length,a=0;a<n;a++)Fe[e[a]]=i}function Re(e,t){De(e,(function(e,a,n,i){n._w=n._w||{},t(e,n._w,n,i)}))}function Le(e,t,a){null!=t&&o(Fe,e)&&Fe[e](t,a._a,a,e)}function Pe(e){return e%4==0&&e%100!=0||e%400==0}var Be=0,Oe=1,$e=2,Ue=3,je=4,ze=5,We=6,Ye=7,He=8;function Ge(e){return Pe(e)?366:365}U("Y",0,0,(function(){var e=this.year();return e<=9999?L(e,4):"+"+e})),U(0,["YY",2],0,(function(){return this.year()%100})),U(0,["YYYY",4],0,"year"),U(0,["YYYYY",5],0,"year"),U(0,["YYYYYY",6,!0],0,"year"),Me("Y",_e),Me("YY",he,ue),Me("YYYY",ge,de),Me("YYYYY",be,pe),Me("YYYYYY",be,pe),De(["YYYYY","YYYYYY"],Be),De("YYYY",(function(e,t){t[Be]=2===e.length?n.parseTwoDigitYear(e):Ee(e)})),De("YY",(function(e,t){t[Be]=n.parseTwoDigitYear(e)})),De("Y",(function(e,t){t[Be]=parseInt(e,10)})),n.parseTwoDigitYear=function(e){return Ee(e)+(Ee(e)>68?1900:2e3)};var qe,Ze=Ke("FullYear",!0);function Je(){return Pe(this.year())}function Ke(e,t){return function(a){return null!=a?(Qe(this,e,a),n.updateOffset(this,t),this):Xe(this,e)}}function Xe(e,t){if(!e.isValid())return NaN;var a=e._d,n=e._isUTC;switch(t){case"Milliseconds":return n?a.getUTCMilliseconds():a.getMilliseconds();case"Seconds":return n?a.getUTCSeconds():a.getSeconds();case"Minutes":return n?a.getUTCMinutes():a.getMinutes();case"Hours":return n?a.getUTCHours():a.getHours();case"Date":return n?a.getUTCDate():a.getDate();case"Day":return n?a.getUTCDay():a.getDay();case"Month":return n?a.getUTCMonth():a.getMonth();case"FullYear":return n?a.getUTCFullYear():a.getFullYear();default:return NaN}}function Qe(e,t,a){var n,i,r,s,o;if(e.isValid()&&!isNaN(a)){switch(n=e._d,i=e._isUTC,t){case"Milliseconds":return void(i?n.setUTCMilliseconds(a):n.setMilliseconds(a));case"Seconds":return void(i?n.setUTCSeconds(a):n.setSeconds(a));case"Minutes":return void(i?n.setUTCMinutes(a):n.setMinutes(a));case"Hours":return void(i?n.setUTCHours(a):n.setHours(a));case"Date":return void(i?n.setUTCDate(a):n.setDate(a));case"FullYear":break;default:return}r=a,s=e.month(),o=29!==(o=e.date())||1!==s||Pe(r)?o:28,i?n.setUTCFullYear(r,s,o):n.setFullYear(r,s,o)}}function et(e){return C(this[e=ne(e)])?this[e]():this}function tt(e,t){if("object"==typeof e){var a,n=se(e=ie(e)),i=n.length;for(a=0;a<i;a++)this[n[a].unit](e[n[a].unit])}else if(C(this[e=ne(e)]))return this[e](t);return this}function at(e,t){return(e%t+t)%t}function nt(e,t){if(isNaN(e)||isNaN(t))return NaN;var a=at(t,12);return e+=(t-a)/12,1===a?Pe(e)?29:28:31-a%7%2}qe=Array.prototype.indexOf?Array.prototype.indexOf:function(e){var t;for(t=0;t<this.length;++t)if(this[t]===e)return t;return-1},U("M",["MM",2],"Mo",(function(){return this.month()+1})),U("MMM",0,0,(function(e){return this.localeData().monthsShort(this,e)})),U("MMMM",0,0,(function(e){return this.localeData().months(this,e)})),Me("M",he,Ne),Me("MM",he,ue),Me("MMM",(function(e,t){return t.monthsShortRegex(e)})),Me("MMMM",(function(e,t){return t.monthsRegex(e)})),De(["M","MM"],(function(e,t){t[Oe]=Ee(e)-1})),De(["MMM","MMMM"],(function(e,t,a,n){var i=a._locale.monthsParse(e,n,a._strict);null!=i?t[Oe]=i:y(a).invalidMonth=e}));var it="January_February_March_April_May_June_July_August_September_October_November_December".split("_"),rt="Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),st=/D[oD]?(\[[^\[\]]*\]|\s)+MMMM?/,ot=Se,lt=Se;function ut(e,t){return e?r(this._months)?this._months[e.month()]:this._months[(this._months.isFormat||st).test(t)?"format":"standalone"][e.month()]:r(this._months)?this._months:this._months.standalone}function ct(e,t){return e?r(this._monthsShort)?this._monthsShort[e.month()]:this._monthsShort[st.test(t)?"format":"standalone"][e.month()]:r(this._monthsShort)?this._monthsShort:this._monthsShort.standalone}function dt(e,t,a){var n,i,r,s=e.toLocaleLowerCase();if(!this._monthsParse)for(this._monthsParse=[],this._longMonthsParse=[],this._shortMonthsParse=[],n=0;n<12;++n)r=f([2e3,n]),this._shortMonthsParse[n]=this.monthsShort(r,"").toLocaleLowerCase(),this._longMonthsParse[n]=this.months(r,"").toLocaleLowerCase();return a?"MMM"===t?-1!==(i=qe.call(this._shortMonthsParse,s))?i:null:-1!==(i=qe.call(this._longMonthsParse,s))?i:null:"MMM"===t?-1!==(i=qe.call(this._shortMonthsParse,s))||-1!==(i=qe.call(this._longMonthsParse,s))?i:null:-1!==(i=qe.call(this._longMonthsParse,s))||-1!==(i=qe.call(this._shortMonthsParse,s))?i:null}function pt(e,t,a){var n,i,r;if(this._monthsParseExact)return dt.call(this,e,t,a);for(this._monthsParse||(this._monthsParse=[],this._longMonthsParse=[],this._shortMonthsParse=[]),n=0;n<12;n++){if(i=f([2e3,n]),a&&!this._longMonthsParse[n]&&(this._longMonthsParse[n]=new RegExp("^"+this.months(i,"").replace(".","")+"$","i"),this._shortMonthsParse[n]=new RegExp("^"+this.monthsShort(i,"").replace(".","")+"$","i")),a||this._monthsParse[n]||(r="^"+this.months(i,"")+"|^"+this.monthsShort(i,""),this._monthsParse[n]=new RegExp(r.replace(".",""),"i")),a&&"MMMM"===t&&this._longMonthsParse[n].test(e))return n;if(a&&"MMM"===t&&this._shortMonthsParse[n].test(e))return n;if(!a&&this._monthsParse[n].test(e))return n}}function ht(e,t){if(!e.isValid())return e;if("string"==typeof t)if(/^\d+$/.test(t))t=Ee(t);else if(!c(t=e.localeData().monthsParse(t)))return e;var a=t,n=e.date();return n=n<29?n:Math.min(n,nt(e.year(),a)),e._isUTC?e._d.setUTCMonth(a,n):e._d.setMonth(a,n),e}function ft(e){return null!=e?(ht(this,e),n.updateOffset(this,!0),this):Xe(this,"Month")}function mt(){return nt(this.year(),this.month())}function yt(e){return this._monthsParseExact?(o(this,"_monthsRegex")||bt.call(this),e?this._monthsShortStrictRegex:this._monthsShortRegex):(o(this,"_monthsShortRegex")||(this._monthsShortRegex=ot),this._monthsShortStrictRegex&&e?this._monthsShortStrictRegex:this._monthsShortRegex)}function gt(e){return this._monthsParseExact?(o(this,"_monthsRegex")||bt.call(this),e?this._monthsStrictRegex:this._monthsRegex):(o(this,"_monthsRegex")||(this._monthsRegex=lt),this._monthsStrictRegex&&e?this._monthsStrictRegex:this._monthsRegex)}function bt(){function e(e,t){return t.length-e.length}var t,a,n,i,r=[],s=[],o=[];for(t=0;t<12;t++)a=f([2e3,t]),n=Ie(this.monthsShort(a,"")),i=Ie(this.months(a,"")),r.push(n),s.push(i),o.push(i),o.push(n);r.sort(e),s.sort(e),o.sort(e),this._monthsRegex=new RegExp("^("+o.join("|")+")","i"),this._monthsShortRegex=this._monthsRegex,this._monthsStrictRegex=new RegExp("^("+s.join("|")+")","i"),this._monthsShortStrictRegex=new RegExp("^("+r.join("|")+")","i")}function vt(e,t,a,n,i,r,s){var o;return e<100&&e>=0?(o=new Date(e+400,t,a,n,i,r,s),isFinite(o.getFullYear())&&o.setFullYear(e)):o=new Date(e,t,a,n,i,r,s),o}function _t(e){var t,a;return e<100&&e>=0?((a=Array.prototype.slice.call(arguments))[0]=e+400,t=new Date(Date.UTC.apply(null,a)),isFinite(t.getUTCFullYear())&&t.setUTCFullYear(e)):t=new Date(Date.UTC.apply(null,arguments)),t}function wt(e,t,a){var n=7+t-a;return-(7+_t(e,0,n).getUTCDay()-t)%7+n-1}function At(e,t,a,n,i){var r,s,o=1+7*(t-1)+(7+a-n)%7+wt(e,n,i);return o<=0?s=Ge(r=e-1)+o:o>Ge(e)?(r=e+1,s=o-Ge(e)):(r=e,s=o),{year:r,dayOfYear:s}}function kt(e,t,a){var n,i,r=wt(e.year(),t,a),s=Math.floor((e.dayOfYear()-r-1)/7)+1;return s<1?n=s+St(i=e.year()-1,t,a):s>St(e.year(),t,a)?(n=s-St(e.year(),t,a),i=e.year()+1):(i=e.year(),n=s),{week:n,year:i}}function St(e,t,a){var n=wt(e,t,a),i=wt(e+1,t,a);return(Ge(e)-n+i)/7}function Nt(e){return kt(e,this._week.dow,this._week.doy).week}U("w",["ww",2],"wo","week"),U("W",["WW",2],"Wo","isoWeek"),Me("w",he,Ne),Me("ww",he,ue),Me("W",he,Ne),Me("WW",he,ue),Re(["w","ww","W","WW"],(function(e,t,a,n){t[n.substr(0,1)]=Ee(e)}));var Tt={dow:0,doy:6};function Mt(){return this._week.dow}function xt(){return this._week.doy}function Ct(e){var t=this.localeData().week(this);return null==e?t:this.add(7*(e-t),"d")}function It(e){var t=kt(this,1,4).week;return null==e?t:this.add(7*(e-t),"d")}function Vt(e,t){return"string"!=typeof e?e:isNaN(e)?"number"==typeof(e=t.weekdaysParse(e))?e:null:parseInt(e,10)}function Et(e,t){return"string"==typeof e?t.weekdaysParse(e)%7||7:isNaN(e)?null:e}function Ft(e,t){return e.slice(t,7).concat(e.slice(0,t))}U("d",0,"do","day"),U("dd",0,0,(function(e){return this.localeData().weekdaysMin(this,e)})),U("ddd",0,0,(function(e){return this.localeData().weekdaysShort(this,e)})),U("dddd",0,0,(function(e){return this.localeData().weekdays(this,e)})),U("e",0,0,"weekday"),U("E",0,0,"isoWeekday"),Me("d",he),Me("e",he),Me("E",he),Me("dd",(function(e,t){return t.weekdaysMinRegex(e)})),Me("ddd",(function(e,t){return t.weekdaysShortRegex(e)})),Me("dddd",(function(e,t){return t.weekdaysRegex(e)})),Re(["dd","ddd","dddd"],(function(e,t,a,n){var i=a._locale.weekdaysParse(e,n,a._strict);null!=i?t.d=i:y(a).invalidWeekday=e})),Re(["d","e","E"],(function(e,t,a,n){t[n]=Ee(e)}));var Dt="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),Rt="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),Lt="Su_Mo_Tu_We_Th_Fr_Sa".split("_"),Pt=Se,Bt=Se,Ot=Se;function $t(e,t){var a=r(this._weekdays)?this._weekdays:this._weekdays[e&&!0!==e&&this._weekdays.isFormat.test(t)?"format":"standalone"];return!0===e?Ft(a,this._week.dow):e?a[e.day()]:a}function Ut(e){return!0===e?Ft(this._weekdaysShort,this._week.dow):e?this._weekdaysShort[e.day()]:this._weekdaysShort}function jt(e){return!0===e?Ft(this._weekdaysMin,this._week.dow):e?this._weekdaysMin[e.day()]:this._weekdaysMin}function zt(e,t,a){var n,i,r,s=e.toLocaleLowerCase();if(!this._weekdaysParse)for(this._weekdaysParse=[],this._shortWeekdaysParse=[],this._minWeekdaysParse=[],n=0;n<7;++n)r=f([2e3,1]).day(n),this._minWeekdaysParse[n]=this.weekdaysMin(r,"").toLocaleLowerCase(),this._shortWeekdaysParse[n]=this.weekdaysShort(r,"").toLocaleLowerCase(),this._weekdaysParse[n]=this.weekdays(r,"").toLocaleLowerCase();return a?"dddd"===t?-1!==(i=qe.call(this._weekdaysParse,s))?i:null:"ddd"===t?-1!==(i=qe.call(this._shortWeekdaysParse,s))?i:null:-1!==(i=qe.call(this._minWeekdaysParse,s))?i:null:"dddd"===t?-1!==(i=qe.call(this._weekdaysParse,s))||-1!==(i=qe.call(this._shortWeekdaysParse,s))||-1!==(i=qe.call(this._minWeekdaysParse,s))?i:null:"ddd"===t?-1!==(i=qe.call(this._shortWeekdaysParse,s))||-1!==(i=qe.call(this._weekdaysParse,s))||-1!==(i=qe.call(this._minWeekdaysParse,s))?i:null:-1!==(i=qe.call(this._minWeekdaysParse,s))||-1!==(i=qe.call(this._weekdaysParse,s))||-1!==(i=qe.call(this._shortWeekdaysParse,s))?i:null}function Wt(e,t,a){var n,i,r;if(this._weekdaysParseExact)return zt.call(this,e,t,a);for(this._weekdaysParse||(this._weekdaysParse=[],this._minWeekdaysParse=[],this._shortWeekdaysParse=[],this._fullWeekdaysParse=[]),n=0;n<7;n++){if(i=f([2e3,1]).day(n),a&&!this._fullWeekdaysParse[n]&&(this._fullWeekdaysParse[n]=new RegExp("^"+this.weekdays(i,"").replace(".","\\.?")+"$","i"),this._shortWeekdaysParse[n]=new RegExp("^"+this.weekdaysShort(i,"").replace(".","\\.?")+"$","i"),this._minWeekdaysParse[n]=new RegExp("^"+this.weekdaysMin(i,"").replace(".","\\.?")+"$","i")),this._weekdaysParse[n]||(r="^"+this.weekdays(i,"")+"|^"+this.weekdaysShort(i,"")+"|^"+this.weekdaysMin(i,""),this._weekdaysParse[n]=new RegExp(r.replace(".",""),"i")),a&&"dddd"===t&&this._fullWeekdaysParse[n].test(e))return n;if(a&&"ddd"===t&&this._shortWeekdaysParse[n].test(e))return n;if(a&&"dd"===t&&this._minWeekdaysParse[n].test(e))return n;if(!a&&this._weekdaysParse[n].test(e))return n}}function Yt(e){if(!this.isValid())return null!=e?this:NaN;var t=Xe(this,"Day");return null!=e?(e=Vt(e,this.localeData()),this.add(e-t,"d")):t}function Ht(e){if(!this.isValid())return null!=e?this:NaN;var t=(this.day()+7-this.localeData()._week.dow)%7;return null==e?t:this.add(e-t,"d")}function Gt(e){if(!this.isValid())return null!=e?this:NaN;if(null!=e){var t=Et(e,this.localeData());return this.day(this.day()%7?t:t-7)}return this.day()||7}function qt(e){return this._weekdaysParseExact?(o(this,"_weekdaysRegex")||Kt.call(this),e?this._weekdaysStrictRegex:this._weekdaysRegex):(o(this,"_weekdaysRegex")||(this._weekdaysRegex=Pt),this._weekdaysStrictRegex&&e?this._weekdaysStrictRegex:this._weekdaysRegex)}function Zt(e){return this._weekdaysParseExact?(o(this,"_weekdaysRegex")||Kt.call(this),e?this._weekdaysShortStrictRegex:this._weekdaysShortRegex):(o(this,"_weekdaysShortRegex")||(this._weekdaysShortRegex=Bt),this._weekdaysShortStrictRegex&&e?this._weekdaysShortStrictRegex:this._weekdaysShortRegex)}function Jt(e){return this._weekdaysParseExact?(o(this,"_weekdaysRegex")||Kt.call(this),e?this._weekdaysMinStrictRegex:this._weekdaysMinRegex):(o(this,"_weekdaysMinRegex")||(this._weekdaysMinRegex=Ot),this._weekdaysMinStrictRegex&&e?this._weekdaysMinStrictRegex:this._weekdaysMinRegex)}function Kt(){function e(e,t){return t.length-e.length}var t,a,n,i,r,s=[],o=[],l=[],u=[];for(t=0;t<7;t++)a=f([2e3,1]).day(t),n=Ie(this.weekdaysMin(a,"")),i=Ie(this.weekdaysShort(a,"")),r=Ie(this.weekdays(a,"")),s.push(n),o.push(i),l.push(r),u.push(n),u.push(i),u.push(r);s.sort(e),o.sort(e),l.sort(e),u.sort(e),this._weekdaysRegex=new RegExp("^("+u.join("|")+")","i"),this._weekdaysShortRegex=this._weekdaysRegex,this._weekdaysMinRegex=this._weekdaysRegex,this._weekdaysStrictRegex=new RegExp("^("+l.join("|")+")","i"),this._weekdaysShortStrictRegex=new RegExp("^("+o.join("|")+")","i"),this._weekdaysMinStrictRegex=new RegExp("^("+s.join("|")+")","i")}function Xt(){return this.hours()%12||12}function Qt(){return this.hours()||24}function ea(e,t){U(e,0,0,(function(){return this.localeData().meridiem(this.hours(),this.minutes(),t)}))}function ta(e,t){return t._meridiemParse}function aa(e){return"p"===(e+"").toLowerCase().charAt(0)}U("H",["HH",2],0,"hour"),U("h",["hh",2],0,Xt),U("k",["kk",2],0,Qt),U("hmm",0,0,(function(){return""+Xt.apply(this)+L(this.minutes(),2)})),U("hmmss",0,0,(function(){return""+Xt.apply(this)+L(this.minutes(),2)+L(this.seconds(),2)})),U("Hmm",0,0,(function(){return""+this.hours()+L(this.minutes(),2)})),U("Hmmss",0,0,(function(){return""+this.hours()+L(this.minutes(),2)+L(this.seconds(),2)})),ea("a",!0),ea("A",!1),Me("a",ta),Me("A",ta),Me("H",he,Te),Me("h",he,Ne),Me("k",he,Ne),Me("HH",he,ue),Me("hh",he,ue),Me("kk",he,ue),Me("hmm",fe),Me("hmmss",me),Me("Hmm",fe),Me("Hmmss",me),De(["H","HH"],Ue),De(["k","kk"],(function(e,t,a){var n=Ee(e);t[Ue]=24===n?0:n})),De(["a","A"],(function(e,t,a){a._isPm=a._locale.isPM(e),a._meridiem=e})),De(["h","hh"],(function(e,t,a){t[Ue]=Ee(e),y(a).bigHour=!0})),De("hmm",(function(e,t,a){var n=e.length-2;t[Ue]=Ee(e.substr(0,n)),t[je]=Ee(e.substr(n)),y(a).bigHour=!0})),De("hmmss",(function(e,t,a){var n=e.length-4,i=e.length-2;t[Ue]=Ee(e.substr(0,n)),t[je]=Ee(e.substr(n,2)),t[ze]=Ee(e.substr(i)),y(a).bigHour=!0})),De("Hmm",(function(e,t,a){var n=e.length-2;t[Ue]=Ee(e.substr(0,n)),t[je]=Ee(e.substr(n))})),De("Hmmss",(function(e,t,a){var n=e.length-4,i=e.length-2;t[Ue]=Ee(e.substr(0,n)),t[je]=Ee(e.substr(n,2)),t[ze]=Ee(e.substr(i))}));var na=/[ap]\.?m?\.?/i,ia=Ke("Hours",!0);function ra(e,t,a){return e>11?a?"pm":"PM":a?"am":"AM"}var sa,oa={calendar:D,longDateFormat:H,invalidDate:q,ordinal:J,dayOfMonthOrdinalParse:K,relativeTime:Q,months:it,monthsShort:rt,week:Tt,weekdays:Dt,weekdaysMin:Lt,weekdaysShort:Rt,meridiemParse:na},la={},ua={};function ca(e,t){var a,n=Math.min(e.length,t.length);for(a=0;a<n;a+=1)if(e[a]!==t[a])return a;return n}function da(e){return e?e.toLowerCase().replace("_","-"):e}function pa(e){for(var t,a,n,i,r=0;r<e.length;){for(t=(i=da(e[r]).split("-")).length,a=(a=da(e[r+1]))?a.split("-"):null;t>0;){if(n=fa(i.slice(0,t).join("-")))return n;if(a&&a.length>=t&&ca(i,a)>=t-1)break;t--}r++}return sa}function ha(e){return!(!e||!e.match("^[^/\\\\]*$"))}function fa(t){var a=null;if(void 0===la[t]&&e&&e.exports&&ha(t))try{a=sa._abbr,E("./locale/"+t),ma(a)}catch(e){la[t]=null}return la[t]}function ma(e,t){var a;return e&&((a=u(t)?ba(e):ya(e,t))?sa=a:"undefined"!=typeof console&&console.warn&&console.warn("Locale "+e+" not found. Did you forget to load it?")),sa._abbr}function ya(e,t){if(null!==t){var a,n=oa;if(t.abbr=e,null!=la[e])x("defineLocaleOverride","use moment.updateLocale(localeName, config) to change an existing locale. moment.defineLocale(localeName, config) should only be used for creating a new locale See http://momentjs.com/guides/#/warnings/define-locale/ for more info."),n=la[e]._config;else if(null!=t.parentLocale)if(null!=la[t.parentLocale])n=la[t.parentLocale]._config;else{if(null==(a=fa(t.parentLocale)))return ua[t.parentLocale]||(ua[t.parentLocale]=[]),ua[t.parentLocale].push({name:e,config:t}),null;n=a._config}return la[e]=new F(V(n,t)),ua[e]&&ua[e].forEach((function(e){ya(e.name,e.config)})),ma(e),la[e]}return delete la[e],null}function ga(e,t){if(null!=t){var a,n,i=oa;null!=la[e]&&null!=la[e].parentLocale?la[e].set(V(la[e]._config,t)):(null!=(n=fa(e))&&(i=n._config),t=V(i,t),null==n&&(t.abbr=e),(a=new F(t)).parentLocale=la[e],la[e]=a),ma(e)}else null!=la[e]&&(null!=la[e].parentLocale?(la[e]=la[e].parentLocale,e===ma()&&ma(e)):null!=la[e]&&delete la[e]);return la[e]}function ba(e){var t;if(e&&e._locale&&e._locale._abbr&&(e=e._locale._abbr),!e)return sa;if(!r(e)){if(t=fa(e))return t;e=[e]}return pa(e)}function va(){return T(la)}function _a(e){var t,a=e._a;return a&&-2===y(e).overflow&&(t=a[Oe]<0||a[Oe]>11?Oe:a[$e]<1||a[$e]>nt(a[Be],a[Oe])?$e:a[Ue]<0||a[Ue]>24||24===a[Ue]&&(0!==a[je]||0!==a[ze]||0!==a[We])?Ue:a[je]<0||a[je]>59?je:a[ze]<0||a[ze]>59?ze:a[We]<0||a[We]>999?We:-1,y(e)._overflowDayOfYear&&(t<Be||t>$e)&&(t=$e),y(e)._overflowWeeks&&-1===t&&(t=Ye),y(e)._overflowWeekday&&-1===t&&(t=He),y(e).overflow=t),e}var wa=/^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([+-]\d\d(?::?\d\d)?|\s*Z)?)?$/,Aa=/^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d|))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([+-]\d\d(?::?\d\d)?|\s*Z)?)?$/,ka=/Z|[+-]\d\d(?::?\d\d)?/,Sa=[["YYYYYY-MM-DD",/[+-]\d{6}-\d\d-\d\d/],["YYYY-MM-DD",/\d{4}-\d\d-\d\d/],["GGGG-[W]WW-E",/\d{4}-W\d\d-\d/],["GGGG-[W]WW",/\d{4}-W\d\d/,!1],["YYYY-DDD",/\d{4}-\d{3}/],["YYYY-MM",/\d{4}-\d\d/,!1],["YYYYYYMMDD",/[+-]\d{10}/],["YYYYMMDD",/\d{8}/],["GGGG[W]WWE",/\d{4}W\d{3}/],["GGGG[W]WW",/\d{4}W\d{2}/,!1],["YYYYDDD",/\d{7}/],["YYYYMM",/\d{6}/,!1],["YYYY",/\d{4}/,!1]],Na=[["HH:mm:ss.SSSS",/\d\d:\d\d:\d\d\.\d+/],["HH:mm:ss,SSSS",/\d\d:\d\d:\d\d,\d+/],["HH:mm:ss",/\d\d:\d\d:\d\d/],["HH:mm",/\d\d:\d\d/],["HHmmss.SSSS",/\d\d\d\d\d\d\.\d+/],["HHmmss,SSSS",/\d\d\d\d\d\d,\d+/],["HHmmss",/\d\d\d\d\d\d/],["HHmm",/\d\d\d\d/],["HH",/\d\d/]],Ta=/^\/?Date\((-?\d+)/i,Ma=/^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),?\s)?(\d{1,2})\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(\d{2,4})\s(\d\d):(\d\d)(?::(\d\d))?\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|([+-]\d{4}))$/,xa={UT:0,GMT:0,EDT:-240,EST:-300,CDT:-300,CST:-360,MDT:-360,MST:-420,PDT:-420,PST:-480};function Ca(e){var t,a,n,i,r,s,o=e._i,l=wa.exec(o)||Aa.exec(o),u=Sa.length,c=Na.length;if(l){for(y(e).iso=!0,t=0,a=u;t<a;t++)if(Sa[t][1].exec(l[1])){i=Sa[t][0],n=!1!==Sa[t][2];break}if(null==i)return void(e._isValid=!1);if(l[3]){for(t=0,a=c;t<a;t++)if(Na[t][1].exec(l[3])){r=(l[2]||" ")+Na[t][0];break}if(null==r)return void(e._isValid=!1)}if(!n&&null!=r)return void(e._isValid=!1);if(l[4]){if(!ka.exec(l[4]))return void(e._isValid=!1);s="Z"}e._f=i+(r||"")+(s||""),Ua(e)}else e._isValid=!1}function Ia(e,t,a,n,i,r){var s=[Va(e),rt.indexOf(t),parseInt(a,10),parseInt(n,10),parseInt(i,10)];return r&&s.push(parseInt(r,10)),s}function Va(e){var t=parseInt(e,10);return t<=49?2e3+t:t<=999?1900+t:t}function Ea(e){return e.replace(/\([^()]*\)|[\n\t]/g," ").replace(/(\s\s+)/g," ").replace(/^\s\s*/,"").replace(/\s\s*$/,"")}function Fa(e,t,a){return!e||Rt.indexOf(e)===new Date(t[0],t[1],t[2]).getDay()||(y(a).weekdayMismatch=!0,a._isValid=!1,!1)}function Da(e,t,a){if(e)return xa[e];if(t)return 0;var n=parseInt(a,10),i=n%100;return(n-i)/100*60+i}function Ra(e){var t,a=Ma.exec(Ea(e._i));if(a){if(t=Ia(a[4],a[3],a[2],a[5],a[6],a[7]),!Fa(a[1],t,e))return;e._a=t,e._tzm=Da(a[8],a[9],a[10]),e._d=_t.apply(null,e._a),e._d.setUTCMinutes(e._d.getUTCMinutes()-e._tzm),y(e).rfc2822=!0}else e._isValid=!1}function La(e){var t=Ta.exec(e._i);null===t?(Ca(e),!1===e._isValid&&(delete e._isValid,Ra(e),!1===e._isValid&&(delete e._isValid,e._strict?e._isValid=!1:n.createFromInputFallback(e)))):e._d=new Date(+t[1])}function Pa(e,t,a){return null!=e?e:null!=t?t:a}function Ba(e){var t=new Date(n.now());return e._useUTC?[t.getUTCFullYear(),t.getUTCMonth(),t.getUTCDate()]:[t.getFullYear(),t.getMonth(),t.getDate()]}function Oa(e){var t,a,n,i,r,s=[];if(!e._d){for(n=Ba(e),e._w&&null==e._a[$e]&&null==e._a[Oe]&&$a(e),null!=e._dayOfYear&&(r=Pa(e._a[Be],n[Be]),(e._dayOfYear>Ge(r)||0===e._dayOfYear)&&(y(e)._overflowDayOfYear=!0),a=_t(r,0,e._dayOfYear),e._a[Oe]=a.getUTCMonth(),e._a[$e]=a.getUTCDate()),t=0;t<3&&null==e._a[t];++t)e._a[t]=s[t]=n[t];for(;t<7;t++)e._a[t]=s[t]=null==e._a[t]?2===t?1:0:e._a[t];24===e._a[Ue]&&0===e._a[je]&&0===e._a[ze]&&0===e._a[We]&&(e._nextDay=!0,e._a[Ue]=0),e._d=(e._useUTC?_t:vt).apply(null,s),i=e._useUTC?e._d.getUTCDay():e._d.getDay(),null!=e._tzm&&e._d.setUTCMinutes(e._d.getUTCMinutes()-e._tzm),e._nextDay&&(e._a[Ue]=24),e._w&&void 0!==e._w.d&&e._w.d!==i&&(y(e).weekdayMismatch=!0)}}function $a(e){var t,a,n,i,r,s,o,l,u;null!=(t=e._w).GG||null!=t.W||null!=t.E?(r=1,s=4,a=Pa(t.GG,e._a[Be],kt(Za(),1,4).year),n=Pa(t.W,1),((i=Pa(t.E,1))<1||i>7)&&(l=!0)):(r=e._locale._week.dow,s=e._locale._week.doy,u=kt(Za(),r,s),a=Pa(t.gg,e._a[Be],u.year),n=Pa(t.w,u.week),null!=t.d?((i=t.d)<0||i>6)&&(l=!0):null!=t.e?(i=t.e+r,(t.e<0||t.e>6)&&(l=!0)):i=r),n<1||n>St(a,r,s)?y(e)._overflowWeeks=!0:null!=l?y(e)._overflowWeekday=!0:(o=At(a,n,i,r,s),e._a[Be]=o.year,e._dayOfYear=o.dayOfYear)}function Ua(e){if(e._f!==n.ISO_8601)if(e._f!==n.RFC_2822){e._a=[],y(e).empty=!0;var t,a,i,r,s,o,l,u=""+e._i,c=u.length,d=0;for(l=(i=Y(e._f,e._locale).match(P)||[]).length,t=0;t<l;t++)r=i[t],(a=(u.match(xe(r,e))||[])[0])&&((s=u.substr(0,u.indexOf(a))).length>0&&y(e).unusedInput.push(s),u=u.slice(u.indexOf(a)+a.length),d+=a.length),$[r]?(a?y(e).empty=!1:y(e).unusedTokens.push(r),Le(r,a,e)):e._strict&&!a&&y(e).unusedTokens.push(r);y(e).charsLeftOver=c-d,u.length>0&&y(e).unusedInput.push(u),e._a[Ue]<=12&&!0===y(e).bigHour&&e._a[Ue]>0&&(y(e).bigHour=void 0),y(e).parsedDateParts=e._a.slice(0),y(e).meridiem=e._meridiem,e._a[Ue]=ja(e._locale,e._a[Ue],e._meridiem),null!==(o=y(e).era)&&(e._a[Be]=e._locale.erasConvertYear(o,e._a[Be])),Oa(e),_a(e)}else Ra(e);else Ca(e)}function ja(e,t,a){var n;return null==a?t:null!=e.meridiemHour?e.meridiemHour(t,a):null!=e.isPM?((n=e.isPM(a))&&t<12&&(t+=12),n||12!==t||(t=0),t):t}function za(e){var t,a,n,i,r,s,o=!1,l=e._f.length;if(0===l)return y(e).invalidFormat=!0,void(e._d=new Date(NaN));for(i=0;i<l;i++)r=0,s=!1,t=w({},e),null!=e._useUTC&&(t._useUTC=e._useUTC),t._f=e._f[i],Ua(t),g(t)&&(s=!0),r+=y(t).charsLeftOver,r+=10*y(t).unusedTokens.length,y(t).score=r,o?r<n&&(n=r,a=t):(null==n||r<n||s)&&(n=r,a=t,s&&(o=!0));h(e,a||t)}function Wa(e){if(!e._d){var t=ie(e._i),a=void 0===t.day?t.date:t.day;e._a=p([t.year,t.month,a,t.hour,t.minute,t.second,t.millisecond],(function(e){return e&&parseInt(e,10)})),Oa(e)}}function Ya(e){var t=new A(_a(Ha(e)));return t._nextDay&&(t.add(1,"d"),t._nextDay=void 0),t}function Ha(e){var t=e._i,a=e._f;return e._locale=e._locale||ba(e._l),null===t||void 0===a&&""===t?b({nullInput:!0}):("string"==typeof t&&(e._i=t=e._locale.preparse(t)),k(t)?new A(_a(t)):(d(t)?e._d=t:r(a)?za(e):a?Ua(e):Ga(e),g(e)||(e._d=null),e))}function Ga(e){var t=e._i;u(t)?e._d=new Date(n.now()):d(t)?e._d=new Date(t.valueOf()):"string"==typeof t?La(e):r(t)?(e._a=p(t.slice(0),(function(e){return parseInt(e,10)})),Oa(e)):s(t)?Wa(e):c(t)?e._d=new Date(t):n.createFromInputFallback(e)}function qa(e,t,a,n,i){var o={};return!0!==t&&!1!==t||(n=t,t=void 0),!0!==a&&!1!==a||(n=a,a=void 0),(s(e)&&l(e)||r(e)&&0===e.length)&&(e=void 0),o._isAMomentObject=!0,o._useUTC=o._isUTC=i,o._l=a,o._i=e,o._f=t,o._strict=n,Ya(o)}function Za(e,t,a,n){return qa(e,t,a,n,!1)}n.createFromInputFallback=N("value provided is not in a recognized RFC2822 or ISO format. moment construction falls back to js Date(), which is not reliable across all browsers and versions. Non RFC2822/ISO date formats are discouraged. Please refer to http://momentjs.com/guides/#/warnings/js-date/ for more info.",(function(e){e._d=new Date(e._i+(e._useUTC?" UTC":""))})),n.ISO_8601=function(){},n.RFC_2822=function(){};var Ja=N("moment().min is deprecated, use moment.max instead. http://momentjs.com/guides/#/warnings/min-max/",(function(){var e=Za.apply(null,arguments);return this.isValid()&&e.isValid()?e<this?this:e:b()})),Ka=N("moment().max is deprecated, use moment.min instead. http://momentjs.com/guides/#/warnings/min-max/",(function(){var e=Za.apply(null,arguments);return this.isValid()&&e.isValid()?e>this?this:e:b()}));function Xa(e,t){var a,n;if(1===t.length&&r(t[0])&&(t=t[0]),!t.length)return Za();for(a=t[0],n=1;n<t.length;++n)t[n].isValid()&&!t[n][e](a)||(a=t[n]);return a}function Qa(){return Xa("isBefore",[].slice.call(arguments,0))}function en(){return Xa("isAfter",[].slice.call(arguments,0))}var tn=function(){return Date.now?Date.now():+new Date},an=["year","quarter","month","week","day","hour","minute","second","millisecond"];function nn(e){var t,a,n=!1,i=an.length;for(t in e)if(o(e,t)&&(-1===qe.call(an,t)||null!=e[t]&&isNaN(e[t])))return!1;for(a=0;a<i;++a)if(e[an[a]]){if(n)return!1;parseFloat(e[an[a]])!==Ee(e[an[a]])&&(n=!0)}return!0}function rn(){return this._isValid}function sn(){return Cn(NaN)}function on(e){var t=ie(e),a=t.year||0,n=t.quarter||0,i=t.month||0,r=t.week||t.isoWeek||0,s=t.day||0,o=t.hour||0,l=t.minute||0,u=t.second||0,c=t.millisecond||0;this._isValid=nn(t),this._milliseconds=+c+1e3*u+6e4*l+1e3*o*60*60,this._days=+s+7*r,this._months=+i+3*n+12*a,this._data={},this._locale=ba(),this._bubble()}function ln(e){return e instanceof on}function un(e){return e<0?-1*Math.round(-1*e):Math.round(e)}function cn(e,t,a){var n,i=Math.min(e.length,t.length),r=Math.abs(e.length-t.length),s=0;for(n=0;n<i;n++)Ee(e[n])!==Ee(t[n])&&s++;return s+r}function dn(e,t){U(e,0,0,(function(){var e=this.utcOffset(),a="+";return e<0&&(e=-e,a="-"),a+L(~~(e/60),2)+t+L(~~e%60,2)}))}dn("Z",":"),dn("ZZ",""),Me("Z",Ae),Me("ZZ",Ae),De(["Z","ZZ"],(function(e,t,a){a._useUTC=!0,a._tzm=hn(Ae,e)}));var pn=/([\+\-]|\d\d)/gi;function hn(e,t){var a,n,i=(t||"").match(e);return null===i?null:0===(n=60*(a=((i[i.length-1]||[])+"").match(pn)||["-",0,0])[1]+Ee(a[2]))?0:"+"===a[0]?n:-n}function fn(e,t){var a,i;return t._isUTC?(a=t.clone(),i=(k(e)||d(e)?e.valueOf():Za(e).valueOf())-a.valueOf(),a._d.setTime(a._d.valueOf()+i),n.updateOffset(a,!1),a):Za(e).local()}function mn(e){return-Math.round(e._d.getTimezoneOffset())}function yn(e,t,a){var i,r=this._offset||0;if(!this.isValid())return null!=e?this:NaN;if(null!=e){if("string"==typeof e){if(null===(e=hn(Ae,e)))return this}else Math.abs(e)<16&&!a&&(e*=60);return!this._isUTC&&t&&(i=mn(this)),this._offset=e,this._isUTC=!0,null!=i&&this.add(i,"m"),r!==e&&(!t||this._changeInProgress?Dn(this,Cn(e-r,"m"),1,!1):this._changeInProgress||(this._changeInProgress=!0,n.updateOffset(this,!0),this._changeInProgress=null)),this}return this._isUTC?r:mn(this)}function gn(e,t){return null!=e?("string"!=typeof e&&(e=-e),this.utcOffset(e,t),this):-this.utcOffset()}function bn(e){return this.utcOffset(0,e)}function vn(e){return this._isUTC&&(this.utcOffset(0,e),this._isUTC=!1,e&&this.subtract(mn(this),"m")),this}function _n(){if(null!=this._tzm)this.utcOffset(this._tzm,!1,!0);else if("string"==typeof this._i){var e=hn(we,this._i);null!=e?this.utcOffset(e):this.utcOffset(0,!0)}return this}function wn(e){return!!this.isValid()&&(e=e?Za(e).utcOffset():0,(this.utcOffset()-e)%60==0)}function An(){return this.utcOffset()>this.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()}function kn(){if(!u(this._isDSTShifted))return this._isDSTShifted;var e,t={};return w(t,this),(t=Ha(t))._a?(e=t._isUTC?f(t._a):Za(t._a),this._isDSTShifted=this.isValid()&&cn(t._a,e.toArray())>0):this._isDSTShifted=!1,this._isDSTShifted}function Sn(){return!!this.isValid()&&!this._isUTC}function Nn(){return!!this.isValid()&&this._isUTC}function Tn(){return!!this.isValid()&&this._isUTC&&0===this._offset}n.updateOffset=function(){};var Mn=/^(-|\+)?(?:(\d*)[. ])?(\d+):(\d+)(?::(\d+)(\.\d*)?)?$/,xn=/^(-|\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/;function Cn(e,t){var a,n,i,r=e,s=null;return ln(e)?r={ms:e._milliseconds,d:e._days,M:e._months}:c(e)||!isNaN(+e)?(r={},t?r[t]=+e:r.milliseconds=+e):(s=Mn.exec(e))?(a="-"===s[1]?-1:1,r={y:0,d:Ee(s[$e])*a,h:Ee(s[Ue])*a,m:Ee(s[je])*a,s:Ee(s[ze])*a,ms:Ee(un(1e3*s[We]))*a}):(s=xn.exec(e))?(a="-"===s[1]?-1:1,r={y:In(s[2],a),M:In(s[3],a),w:In(s[4],a),d:In(s[5],a),h:In(s[6],a),m:In(s[7],a),s:In(s[8],a)}):null==r?r={}:"object"==typeof r&&("from"in r||"to"in r)&&(i=En(Za(r.from),Za(r.to)),(r={}).ms=i.milliseconds,r.M=i.months),n=new on(r),ln(e)&&o(e,"_locale")&&(n._locale=e._locale),ln(e)&&o(e,"_isValid")&&(n._isValid=e._isValid),n}function In(e,t){var a=e&&parseFloat(e.replace(",","."));return(isNaN(a)?0:a)*t}function Vn(e,t){var a={};return a.months=t.month()-e.month()+12*(t.year()-e.year()),e.clone().add(a.months,"M").isAfter(t)&&--a.months,a.milliseconds=+t-+e.clone().add(a.months,"M"),a}function En(e,t){var a;return e.isValid()&&t.isValid()?(t=fn(t,e),e.isBefore(t)?a=Vn(e,t):((a=Vn(t,e)).milliseconds=-a.milliseconds,a.months=-a.months),a):{milliseconds:0,months:0}}function Fn(e,t){return function(a,n){var i;return null===n||isNaN(+n)||(x(t,"moment()."+t+"(period, number) is deprecated. Please use moment()."+t+"(number, period). See http://momentjs.com/guides/#/warnings/add-inverted-param/ for more info."),i=a,a=n,n=i),Dn(this,Cn(a,n),e),this}}function Dn(e,t,a,i){var r=t._milliseconds,s=un(t._days),o=un(t._months);e.isValid()&&(i=null==i||i,o&&ht(e,Xe(e,"Month")+o*a),s&&Qe(e,"Date",Xe(e,"Date")+s*a),r&&e._d.setTime(e._d.valueOf()+r*a),i&&n.updateOffset(e,s||o))}Cn.fn=on.prototype,Cn.invalid=sn;var Rn=Fn(1,"add"),Ln=Fn(-1,"subtract");function Pn(e){return"string"==typeof e||e instanceof String}function Bn(e){return k(e)||d(e)||Pn(e)||c(e)||$n(e)||On(e)||null==e}function On(e){var t,a,n=s(e)&&!l(e),i=!1,r=["years","year","y","months","month","M","days","day","d","dates","date","D","hours","hour","h","minutes","minute","m","seconds","second","s","milliseconds","millisecond","ms"],u=r.length;for(t=0;t<u;t+=1)a=r[t],i=i||o(e,a);return n&&i}function $n(e){var t=r(e),a=!1;return t&&(a=0===e.filter((function(t){return!c(t)&&Pn(e)})).length),t&&a}function Un(e){var t,a,n=s(e)&&!l(e),i=!1,r=["sameDay","nextDay","lastDay","nextWeek","lastWeek","sameElse"];for(t=0;t<r.length;t+=1)a=r[t],i=i||o(e,a);return n&&i}function jn(e,t){var a=e.diff(t,"days",!0);return a<-6?"sameElse":a<-1?"lastWeek":a<0?"lastDay":a<1?"sameDay":a<2?"nextDay":a<7?"nextWeek":"sameElse"}function zn(e,t){1===arguments.length&&(arguments[0]?Bn(arguments[0])?(e=arguments[0],t=void 0):Un(arguments[0])&&(t=arguments[0],e=void 0):(e=void 0,t=void 0));var a=e||Za(),i=fn(a,this).startOf("day"),r=n.calendarFormat(this,i)||"sameElse",s=t&&(C(t[r])?t[r].call(this,a):t[r]);return this.format(s||this.localeData().calendar(r,this,Za(a)))}function Wn(){return new A(this)}function Yn(e,t){var a=k(e)?e:Za(e);return!(!this.isValid()||!a.isValid())&&("millisecond"===(t=ne(t)||"millisecond")?this.valueOf()>a.valueOf():a.valueOf()<this.clone().startOf(t).valueOf())}function Hn(e,t){var a=k(e)?e:Za(e);return!(!this.isValid()||!a.isValid())&&("millisecond"===(t=ne(t)||"millisecond")?this.valueOf()<a.valueOf():this.clone().endOf(t).valueOf()<a.valueOf())}function Gn(e,t,a,n){var i=k(e)?e:Za(e),r=k(t)?t:Za(t);return!!(this.isValid()&&i.isValid()&&r.isValid())&&("("===(n=n||"()")[0]?this.isAfter(i,a):!this.isBefore(i,a))&&(")"===n[1]?this.isBefore(r,a):!this.isAfter(r,a))}function qn(e,t){var a,n=k(e)?e:Za(e);return!(!this.isValid()||!n.isValid())&&("millisecond"===(t=ne(t)||"millisecond")?this.valueOf()===n.valueOf():(a=n.valueOf(),this.clone().startOf(t).valueOf()<=a&&a<=this.clone().endOf(t).valueOf()))}function Zn(e,t){return this.isSame(e,t)||this.isAfter(e,t)}function Jn(e,t){return this.isSame(e,t)||this.isBefore(e,t)}function Kn(e,t,a){var n,i,r;if(!this.isValid())return NaN;if(!(n=fn(e,this)).isValid())return NaN;switch(i=6e4*(n.utcOffset()-this.utcOffset()),t=ne(t)){case"year":r=Xn(this,n)/12;break;case"month":r=Xn(this,n);break;case"quarter":r=Xn(this,n)/3;break;case"second":r=(this-n)/1e3;break;case"minute":r=(this-n)/6e4;break;case"hour":r=(this-n)/36e5;break;case"day":r=(this-n-i)/864e5;break;case"week":r=(this-n-i)/6048e5;break;default:r=this-n}return a?r:Ve(r)}function Xn(e,t){if(e.date()<t.date())return-Xn(t,e);var a=12*(t.year()-e.year())+(t.month()-e.month()),n=e.clone().add(a,"months");return-(a+(t-n<0?(t-n)/(n-e.clone().add(a-1,"months")):(t-n)/(e.clone().add(a+1,"months")-n)))||0}function Qn(){return this.clone().locale("en").format("ddd MMM DD YYYY HH:mm:ss [GMT]ZZ")}function ei(e){if(!this.isValid())return null;var t=!0!==e,a=t?this.clone().utc():this;return a.year()<0||a.year()>9999?W(a,t?"YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]":"YYYYYY-MM-DD[T]HH:mm:ss.SSSZ"):C(Date.prototype.toISOString)?t?this.toDate().toISOString():new Date(this.valueOf()+60*this.utcOffset()*1e3).toISOString().replace("Z",W(a,"Z")):W(a,t?"YYYY-MM-DD[T]HH:mm:ss.SSS[Z]":"YYYY-MM-DD[T]HH:mm:ss.SSSZ")}function ti(){if(!this.isValid())return"moment.invalid(/* "+this._i+" */)";var e,t,a,n,i="moment",r="";return this.isLocal()||(i=0===this.utcOffset()?"moment.utc":"moment.parseZone",r="Z"),e="["+i+'("]',t=0<=this.year()&&this.year()<=9999?"YYYY":"YYYYYY",a="-MM-DD[T]HH:mm:ss.SSS",n=r+'[")]',this.format(e+t+a+n)}function ai(e){e||(e=this.isUtc()?n.defaultFormatUtc:n.defaultFormat);var t=W(this,e);return this.localeData().postformat(t)}function ni(e,t){return this.isValid()&&(k(e)&&e.isValid()||Za(e).isValid())?Cn({to:this,from:e}).locale(this.locale()).humanize(!t):this.localeData().invalidDate()}function ii(e){return this.from(Za(),e)}function ri(e,t){return this.isValid()&&(k(e)&&e.isValid()||Za(e).isValid())?Cn({from:this,to:e}).locale(this.locale()).humanize(!t):this.localeData().invalidDate()}function si(e){return this.to(Za(),e)}function oi(e){var t;return void 0===e?this._locale._abbr:(null!=(t=ba(e))&&(this._locale=t),this)}n.defaultFormat="YYYY-MM-DDTHH:mm:ssZ",n.defaultFormatUtc="YYYY-MM-DDTHH:mm:ss[Z]";var li=N("moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.",(function(e){return void 0===e?this.localeData():this.locale(e)}));function ui(){return this._locale}var ci=1e3,di=60*ci,pi=60*di,hi=3506328*pi;function fi(e,t){return(e%t+t)%t}function mi(e,t,a){return e<100&&e>=0?new Date(e+400,t,a)-hi:new Date(e,t,a).valueOf()}function yi(e,t,a){return e<100&&e>=0?Date.UTC(e+400,t,a)-hi:Date.UTC(e,t,a)}function gi(e){var t,a;if(void 0===(e=ne(e))||"millisecond"===e||!this.isValid())return this;switch(a=this._isUTC?yi:mi,e){case"year":t=a(this.year(),0,1);break;case"quarter":t=a(this.year(),this.month()-this.month()%3,1);break;case"month":t=a(this.year(),this.month(),1);break;case"week":t=a(this.year(),this.month(),this.date()-this.weekday());break;case"isoWeek":t=a(this.year(),this.month(),this.date()-(this.isoWeekday()-1));break;case"day":case"date":t=a(this.year(),this.month(),this.date());break;case"hour":t=this._d.valueOf(),t-=fi(t+(this._isUTC?0:this.utcOffset()*di),pi);break;case"minute":t=this._d.valueOf(),t-=fi(t,di);break;case"second":t=this._d.valueOf(),t-=fi(t,ci)}return this._d.setTime(t),n.updateOffset(this,!0),this}function bi(e){var t,a;if(void 0===(e=ne(e))||"millisecond"===e||!this.isValid())return this;switch(a=this._isUTC?yi:mi,e){case"year":t=a(this.year()+1,0,1)-1;break;case"quarter":t=a(this.year(),this.month()-this.month()%3+3,1)-1;break;case"month":t=a(this.year(),this.month()+1,1)-1;break;case"week":t=a(this.year(),this.month(),this.date()-this.weekday()+7)-1;break;case"isoWeek":t=a(this.year(),this.month(),this.date()-(this.isoWeekday()-1)+7)-1;break;case"day":case"date":t=a(this.year(),this.month(),this.date()+1)-1;break;case"hour":t=this._d.valueOf(),t+=pi-fi(t+(this._isUTC?0:this.utcOffset()*di),pi)-1;break;case"minute":t=this._d.valueOf(),t+=di-fi(t,di)-1;break;case"second":t=this._d.valueOf(),t+=ci-fi(t,ci)-1}return this._d.setTime(t),n.updateOffset(this,!0),this}function vi(){return this._d.valueOf()-6e4*(this._offset||0)}function _i(){return Math.floor(this.valueOf()/1e3)}function wi(){return new Date(this.valueOf())}function Ai(){var e=this;return[e.year(),e.month(),e.date(),e.hour(),e.minute(),e.second(),e.millisecond()]}function ki(){var e=this;return{years:e.year(),months:e.month(),date:e.date(),hours:e.hours(),minutes:e.minutes(),seconds:e.seconds(),milliseconds:e.milliseconds()}}function Si(){return this.isValid()?this.toISOString():null}function Ni(){return g(this)}function Ti(){return h({},y(this))}function Mi(){return y(this).overflow}function xi(){return{input:this._i,format:this._f,locale:this._locale,isUTC:this._isUTC,strict:this._strict}}function Ci(e,t){var a,i,r,s=this._eras||ba("en")._eras;for(a=0,i=s.length;a<i;++a)switch("string"==typeof s[a].since&&(r=n(s[a].since).startOf("day"),s[a].since=r.valueOf()),typeof s[a].until){case"undefined":s[a].until=1/0;break;case"string":r=n(s[a].until).startOf("day").valueOf(),s[a].until=r.valueOf()}return s}function Ii(e,t,a){var n,i,r,s,o,l=this.eras();for(e=e.toUpperCase(),n=0,i=l.length;n<i;++n)if(r=l[n].name.toUpperCase(),s=l[n].abbr.toUpperCase(),o=l[n].narrow.toUpperCase(),a)switch(t){case"N":case"NN":case"NNN":if(s===e)return l[n];break;case"NNNN":if(r===e)return l[n];break;case"NNNNN":if(o===e)return l[n]}else if([r,s,o].indexOf(e)>=0)return l[n]}function Vi(e,t){var a=e.since<=e.until?1:-1;return void 0===t?n(e.since).year():n(e.since).year()+(t-e.offset)*a}function Ei(){var e,t,a,n=this.localeData().eras();for(e=0,t=n.length;e<t;++e){if(a=this.clone().startOf("day").valueOf(),n[e].since<=a&&a<=n[e].until)return n[e].name;if(n[e].until<=a&&a<=n[e].since)return n[e].name}return""}function Fi(){var e,t,a,n=this.localeData().eras();for(e=0,t=n.length;e<t;++e){if(a=this.clone().startOf("day").valueOf(),n[e].since<=a&&a<=n[e].until)return n[e].narrow;if(n[e].until<=a&&a<=n[e].since)return n[e].narrow}return""}function Di(){var e,t,a,n=this.localeData().eras();for(e=0,t=n.length;e<t;++e){if(a=this.clone().startOf("day").valueOf(),n[e].since<=a&&a<=n[e].until)return n[e].abbr;if(n[e].until<=a&&a<=n[e].since)return n[e].abbr}return""}function Ri(){var e,t,a,i,r=this.localeData().eras();for(e=0,t=r.length;e<t;++e)if(a=r[e].since<=r[e].until?1:-1,i=this.clone().startOf("day").valueOf(),r[e].since<=i&&i<=r[e].until||r[e].until<=i&&i<=r[e].since)return(this.year()-n(r[e].since).year())*a+r[e].offset;return this.year()}function Li(e){return o(this,"_erasNameRegex")||zi.call(this),e?this._erasNameRegex:this._erasRegex}function Pi(e){return o(this,"_erasAbbrRegex")||zi.call(this),e?this._erasAbbrRegex:this._erasRegex}function Bi(e){return o(this,"_erasNarrowRegex")||zi.call(this),e?this._erasNarrowRegex:this._erasRegex}function Oi(e,t){return t.erasAbbrRegex(e)}function $i(e,t){return t.erasNameRegex(e)}function Ui(e,t){return t.erasNarrowRegex(e)}function ji(e,t){return t._eraYearOrdinalRegex||ve}function zi(){var e,t,a,n,i,r=[],s=[],o=[],l=[],u=this.eras();for(e=0,t=u.length;e<t;++e)a=Ie(u[e].name),n=Ie(u[e].abbr),i=Ie(u[e].narrow),s.push(a),r.push(n),o.push(i),l.push(a),l.push(n),l.push(i);this._erasRegex=new RegExp("^("+l.join("|")+")","i"),this._erasNameRegex=new RegExp("^("+s.join("|")+")","i"),this._erasAbbrRegex=new RegExp("^("+r.join("|")+")","i"),this._erasNarrowRegex=new RegExp("^("+o.join("|")+")","i")}function Wi(e,t){U(0,[e,e.length],0,t)}function Yi(e){return Ki.call(this,e,this.week(),this.weekday()+this.localeData()._week.dow,this.localeData()._week.dow,this.localeData()._week.doy)}function Hi(e){return Ki.call(this,e,this.isoWeek(),this.isoWeekday(),1,4)}function Gi(){return St(this.year(),1,4)}function qi(){return St(this.isoWeekYear(),1,4)}function Zi(){var e=this.localeData()._week;return St(this.year(),e.dow,e.doy)}function Ji(){var e=this.localeData()._week;return St(this.weekYear(),e.dow,e.doy)}function Ki(e,t,a,n,i){var r;return null==e?kt(this,n,i).year:(t>(r=St(e,n,i))&&(t=r),Xi.call(this,e,t,a,n,i))}function Xi(e,t,a,n,i){var r=At(e,t,a,n,i),s=_t(r.year,0,r.dayOfYear);return this.year(s.getUTCFullYear()),this.month(s.getUTCMonth()),this.date(s.getUTCDate()),this}function Qi(e){return null==e?Math.ceil((this.month()+1)/3):this.month(3*(e-1)+this.month()%3)}U("N",0,0,"eraAbbr"),U("NN",0,0,"eraAbbr"),U("NNN",0,0,"eraAbbr"),U("NNNN",0,0,"eraName"),U("NNNNN",0,0,"eraNarrow"),U("y",["y",1],"yo","eraYear"),U("y",["yy",2],0,"eraYear"),U("y",["yyy",3],0,"eraYear"),U("y",["yyyy",4],0,"eraYear"),Me("N",Oi),Me("NN",Oi),Me("NNN",Oi),Me("NNNN",$i),Me("NNNNN",Ui),De(["N","NN","NNN","NNNN","NNNNN"],(function(e,t,a,n){var i=a._locale.erasParse(e,n,a._strict);i?y(a).era=i:y(a).invalidEra=e})),Me("y",ve),Me("yy",ve),Me("yyy",ve),Me("yyyy",ve),Me("yo",ji),De(["y","yy","yyy","yyyy"],Be),De(["yo"],(function(e,t,a,n){var i;a._locale._eraYearOrdinalRegex&&(i=e.match(a._locale._eraYearOrdinalRegex)),a._locale.eraYearOrdinalParse?t[Be]=a._locale.eraYearOrdinalParse(e,i):t[Be]=parseInt(e,10)})),U(0,["gg",2],0,(function(){return this.weekYear()%100})),U(0,["GG",2],0,(function(){return this.isoWeekYear()%100})),Wi("gggg","weekYear"),Wi("ggggg","weekYear"),Wi("GGGG","isoWeekYear"),Wi("GGGGG","isoWeekYear"),Me("G",_e),Me("g",_e),Me("GG",he,ue),Me("gg",he,ue),Me("GGGG",ge,de),Me("gggg",ge,de),Me("GGGGG",be,pe),Me("ggggg",be,pe),Re(["gggg","ggggg","GGGG","GGGGG"],(function(e,t,a,n){t[n.substr(0,2)]=Ee(e)})),Re(["gg","GG"],(function(e,t,a,i){t[i]=n.parseTwoDigitYear(e)})),U("Q",0,"Qo","quarter"),Me("Q",le),De("Q",(function(e,t){t[Oe]=3*(Ee(e)-1)})),U("D",["DD",2],"Do","date"),Me("D",he,Ne),Me("DD",he,ue),Me("Do",(function(e,t){return e?t._dayOfMonthOrdinalParse||t._ordinalParse:t._dayOfMonthOrdinalParseLenient})),De(["D","DD"],$e),De("Do",(function(e,t){t[$e]=Ee(e.match(he)[0])}));var er=Ke("Date",!0);function tr(e){var t=Math.round((this.clone().startOf("day")-this.clone().startOf("year"))/864e5)+1;return null==e?t:this.add(e-t,"d")}U("DDD",["DDDD",3],"DDDo","dayOfYear"),Me("DDD",ye),Me("DDDD",ce),De(["DDD","DDDD"],(function(e,t,a){a._dayOfYear=Ee(e)})),U("m",["mm",2],0,"minute"),Me("m",he,Te),Me("mm",he,ue),De(["m","mm"],je);var ar=Ke("Minutes",!1);U("s",["ss",2],0,"second"),Me("s",he,Te),Me("ss",he,ue),De(["s","ss"],ze);var nr,ir,rr=Ke("Seconds",!1);for(U("S",0,0,(function(){return~~(this.millisecond()/100)})),U(0,["SS",2],0,(function(){return~~(this.millisecond()/10)})),U(0,["SSS",3],0,"millisecond"),U(0,["SSSS",4],0,(function(){return 10*this.millisecond()})),U(0,["SSSSS",5],0,(function(){return 100*this.millisecond()})),U(0,["SSSSSS",6],0,(function(){return 1e3*this.millisecond()})),U(0,["SSSSSSS",7],0,(function(){return 1e4*this.millisecond()})),U(0,["SSSSSSSS",8],0,(function(){return 1e5*this.millisecond()})),U(0,["SSSSSSSSS",9],0,(function(){return 1e6*this.millisecond()})),Me("S",ye,le),Me("SS",ye,ue),Me("SSS",ye,ce),nr="SSSS";nr.length<=9;nr+="S")Me(nr,ve);function sr(e,t){t[We]=Ee(1e3*("0."+e))}for(nr="S";nr.length<=9;nr+="S")De(nr,sr);function or(){return this._isUTC?"UTC":""}function lr(){return this._isUTC?"Coordinated Universal Time":""}ir=Ke("Milliseconds",!1),U("z",0,0,"zoneAbbr"),U("zz",0,0,"zoneName");var ur=A.prototype;function cr(e){return Za(1e3*e)}function dr(){return Za.apply(null,arguments).parseZone()}function pr(e){return e}ur.add=Rn,ur.calendar=zn,ur.clone=Wn,ur.diff=Kn,ur.endOf=bi,ur.format=ai,ur.from=ni,ur.fromNow=ii,ur.to=ri,ur.toNow=si,ur.get=et,ur.invalidAt=Mi,ur.isAfter=Yn,ur.isBefore=Hn,ur.isBetween=Gn,ur.isSame=qn,ur.isSameOrAfter=Zn,ur.isSameOrBefore=Jn,ur.isValid=Ni,ur.lang=li,ur.locale=oi,ur.localeData=ui,ur.max=Ka,ur.min=Ja,ur.parsingFlags=Ti,ur.set=tt,ur.startOf=gi,ur.subtract=Ln,ur.toArray=Ai,ur.toObject=ki,ur.toDate=wi,ur.toISOString=ei,ur.inspect=ti,"undefined"!=typeof Symbol&&null!=Symbol.for&&(ur[Symbol.for("nodejs.util.inspect.custom")]=function(){return"Moment<"+this.format()+">"}),ur.toJSON=Si,ur.toString=Qn,ur.unix=_i,ur.valueOf=vi,ur.creationData=xi,ur.eraName=Ei,ur.eraNarrow=Fi,ur.eraAbbr=Di,ur.eraYear=Ri,ur.year=Ze,ur.isLeapYear=Je,ur.weekYear=Yi,ur.isoWeekYear=Hi,ur.quarter=ur.quarters=Qi,ur.month=ft,ur.daysInMonth=mt,ur.week=ur.weeks=Ct,ur.isoWeek=ur.isoWeeks=It,ur.weeksInYear=Zi,ur.weeksInWeekYear=Ji,ur.isoWeeksInYear=Gi,ur.isoWeeksInISOWeekYear=qi,ur.date=er,ur.day=ur.days=Yt,ur.weekday=Ht,ur.isoWeekday=Gt,ur.dayOfYear=tr,ur.hour=ur.hours=ia,ur.minute=ur.minutes=ar,ur.second=ur.seconds=rr,ur.millisecond=ur.milliseconds=ir,ur.utcOffset=yn,ur.utc=bn,ur.local=vn,ur.parseZone=_n,ur.hasAlignedHourOffset=wn,ur.isDST=An,ur.isLocal=Sn,ur.isUtcOffset=Nn,ur.isUtc=Tn,ur.isUTC=Tn,ur.zoneAbbr=or,ur.zoneName=lr,ur.dates=N("dates accessor is deprecated. Use date instead.",er),ur.months=N("months accessor is deprecated. Use month instead",ft),ur.years=N("years accessor is deprecated. Use year instead",Ze),ur.zone=N("moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/",gn),ur.isDSTShifted=N("isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information",kn);var hr=F.prototype;function fr(e,t,a,n){var i=ba(),r=f().set(n,t);return i[a](r,e)}function mr(e,t,a){if(c(e)&&(t=e,e=void 0),e=e||"",null!=t)return fr(e,t,a,"month");var n,i=[];for(n=0;n<12;n++)i[n]=fr(e,n,a,"month");return i}function yr(e,t,a,n){"boolean"==typeof e?(c(t)&&(a=t,t=void 0),t=t||""):(a=t=e,e=!1,c(t)&&(a=t,t=void 0),t=t||"");var i,r=ba(),s=e?r._week.dow:0,o=[];if(null!=a)return fr(t,(a+s)%7,n,"day");for(i=0;i<7;i++)o[i]=fr(t,(i+s)%7,n,"day");return o}function gr(e,t){return mr(e,t,"months")}function br(e,t){return mr(e,t,"monthsShort")}function vr(e,t,a){return yr(e,t,a,"weekdays")}function _r(e,t,a){return yr(e,t,a,"weekdaysShort")}function wr(e,t,a){return yr(e,t,a,"weekdaysMin")}hr.calendar=R,hr.longDateFormat=G,hr.invalidDate=Z,hr.ordinal=X,hr.preparse=pr,hr.postformat=pr,hr.relativeTime=ee,hr.pastFuture=te,hr.set=I,hr.eras=Ci,hr.erasParse=Ii,hr.erasConvertYear=Vi,hr.erasAbbrRegex=Pi,hr.erasNameRegex=Li,hr.erasNarrowRegex=Bi,hr.months=ut,hr.monthsShort=ct,hr.monthsParse=pt,hr.monthsRegex=gt,hr.monthsShortRegex=yt,hr.week=Nt,hr.firstDayOfYear=xt,hr.firstDayOfWeek=Mt,hr.weekdays=$t,hr.weekdaysMin=jt,hr.weekdaysShort=Ut,hr.weekdaysParse=Wt,hr.weekdaysRegex=qt,hr.weekdaysShortRegex=Zt,hr.weekdaysMinRegex=Jt,hr.isPM=aa,hr.meridiem=ra,ma("en",{eras:[{since:"0001-01-01",until:1/0,offset:1,name:"Anno Domini",narrow:"AD",abbr:"AD"},{since:"0000-12-31",until:-1/0,offset:1,name:"Before Christ",narrow:"BC",abbr:"BC"}],dayOfMonthOrdinalParse:/\d{1,2}(th|st|nd|rd)/,ordinal:function(e){var t=e%10;return e+(1===Ee(e%100/10)?"th":1===t?"st":2===t?"nd":3===t?"rd":"th")}}),n.lang=N("moment.lang is deprecated. Use moment.locale instead.",ma),n.langData=N("moment.langData is deprecated. Use moment.localeData instead.",ba);var Ar=Math.abs;function kr(){var e=this._data;return this._milliseconds=Ar(this._milliseconds),this._days=Ar(this._days),this._months=Ar(this._months),e.milliseconds=Ar(e.milliseconds),e.seconds=Ar(e.seconds),e.minutes=Ar(e.minutes),e.hours=Ar(e.hours),e.months=Ar(e.months),e.years=Ar(e.years),this}function Sr(e,t,a,n){var i=Cn(t,a);return e._milliseconds+=n*i._milliseconds,e._days+=n*i._days,e._months+=n*i._months,e._bubble()}function Nr(e,t){return Sr(this,e,t,1)}function Tr(e,t){return Sr(this,e,t,-1)}function Mr(e){return e<0?Math.floor(e):Math.ceil(e)}function xr(){var e,t,a,n,i,r=this._milliseconds,s=this._days,o=this._months,l=this._data;return r>=0&&s>=0&&o>=0||r<=0&&s<=0&&o<=0||(r+=864e5*Mr(Ir(o)+s),s=0,o=0),l.milliseconds=r%1e3,e=Ve(r/1e3),l.seconds=e%60,t=Ve(e/60),l.minutes=t%60,a=Ve(t/60),l.hours=a%24,s+=Ve(a/24),o+=i=Ve(Cr(s)),s-=Mr(Ir(i)),n=Ve(o/12),o%=12,l.days=s,l.months=o,l.years=n,this}function Cr(e){return 4800*e/146097}function Ir(e){return 146097*e/4800}function Vr(e){if(!this.isValid())return NaN;var t,a,n=this._milliseconds;if("month"===(e=ne(e))||"quarter"===e||"year"===e)switch(t=this._days+n/864e5,a=this._months+Cr(t),e){case"month":return a;case"quarter":return a/3;case"year":return a/12}else switch(t=this._days+Math.round(Ir(this._months)),e){case"week":return t/7+n/6048e5;case"day":return t+n/864e5;case"hour":return 24*t+n/36e5;case"minute":return 1440*t+n/6e4;case"second":return 86400*t+n/1e3;case"millisecond":return Math.floor(864e5*t)+n;default:throw new Error("Unknown unit "+e)}}function Er(e){return function(){return this.as(e)}}var Fr=Er("ms"),Dr=Er("s"),Rr=Er("m"),Lr=Er("h"),Pr=Er("d"),Br=Er("w"),Or=Er("M"),$r=Er("Q"),Ur=Er("y"),jr=Fr;function zr(){return Cn(this)}function Wr(e){return e=ne(e),this.isValid()?this[e+"s"]():NaN}function Yr(e){return function(){return this.isValid()?this._data[e]:NaN}}var Hr=Yr("milliseconds"),Gr=Yr("seconds"),qr=Yr("minutes"),Zr=Yr("hours"),Jr=Yr("days"),Kr=Yr("months"),Xr=Yr("years");function Qr(){return Ve(this.days()/7)}var es=Math.round,ts={ss:44,s:45,m:45,h:22,d:26,w:null,M:11};function as(e,t,a,n,i){return i.relativeTime(t||1,!!a,e,n)}function ns(e,t,a,n){var i=Cn(e).abs(),r=es(i.as("s")),s=es(i.as("m")),o=es(i.as("h")),l=es(i.as("d")),u=es(i.as("M")),c=es(i.as("w")),d=es(i.as("y")),p=r<=a.ss&&["s",r]||r<a.s&&["ss",r]||s<=1&&["m"]||s<a.m&&["mm",s]||o<=1&&["h"]||o<a.h&&["hh",o]||l<=1&&["d"]||l<a.d&&["dd",l];return null!=a.w&&(p=p||c<=1&&["w"]||c<a.w&&["ww",c]),(p=p||u<=1&&["M"]||u<a.M&&["MM",u]||d<=1&&["y"]||["yy",d])[2]=t,p[3]=+e>0,p[4]=n,as.apply(null,p)}function is(e){return void 0===e?es:"function"==typeof e&&(es=e,!0)}function rs(e,t){return void 0!==ts[e]&&(void 0===t?ts[e]:(ts[e]=t,"s"===e&&(ts.ss=t-1),!0))}function ss(e,t){if(!this.isValid())return this.localeData().invalidDate();var a,n,i=!1,r=ts;return"object"==typeof e&&(t=e,e=!1),"boolean"==typeof e&&(i=e),"object"==typeof t&&(r=Object.assign({},ts,t),null!=t.s&&null==t.ss&&(r.ss=t.s-1)),n=ns(this,!i,r,a=this.localeData()),i&&(n=a.pastFuture(+this,n)),a.postformat(n)}var os=Math.abs;function ls(e){return(e>0)-(e<0)||+e}function us(){if(!this.isValid())return this.localeData().invalidDate();var e,t,a,n,i,r,s,o,l=os(this._milliseconds)/1e3,u=os(this._days),c=os(this._months),d=this.asSeconds();return d?(e=Ve(l/60),t=Ve(e/60),l%=60,e%=60,a=Ve(c/12),c%=12,n=l?l.toFixed(3).replace(/\.?0+$/,""):"",i=d<0?"-":"",r=ls(this._months)!==ls(d)?"-":"",s=ls(this._days)!==ls(d)?"-":"",o=ls(this._milliseconds)!==ls(d)?"-":"",i+"P"+(a?r+a+"Y":"")+(c?r+c+"M":"")+(u?s+u+"D":"")+(t||e||l?"T":"")+(t?o+t+"H":"")+(e?o+e+"M":"")+(l?o+n+"S":"")):"P0D"}var cs=on.prototype;return cs.isValid=rn,cs.abs=kr,cs.add=Nr,cs.subtract=Tr,cs.as=Vr,cs.asMilliseconds=Fr,cs.asSeconds=Dr,cs.asMinutes=Rr,cs.asHours=Lr,cs.asDays=Pr,cs.asWeeks=Br,cs.asMonths=Or,cs.asQuarters=$r,cs.asYears=Ur,cs.valueOf=jr,cs._bubble=xr,cs.clone=zr,cs.get=Wr,cs.milliseconds=Hr,cs.seconds=Gr,cs.minutes=qr,cs.hours=Zr,cs.days=Jr,cs.weeks=Qr,cs.months=Kr,cs.years=Xr,cs.humanize=ss,cs.toISOString=us,cs.toString=us,cs.toJSON=us,cs.locale=oi,cs.localeData=ui,cs.toIsoString=N("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)",us),cs.lang=li,U("X",0,0,"unix"),U("x",0,0,"valueOf"),Me("x",_e),Me("X",ke),De("X",(function(e,t,a){a._d=new Date(1e3*parseFloat(e))})),De("x",(function(e,t,a){a._d=new Date(Ee(e))})),
1
+ !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("short-unique-id"),require("axios"),require("axios-retry"),require("isomorphic-ws"),require("form-data"),require("jszip")):"function"==typeof define&&define.amd?define(["exports","short-unique-id","axios","axios-retry","isomorphic-ws","form-data","jszip"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self)["lemonate-gateway"]={},e["short-unique-id"],e.axios,e["axios-retry"],e["isomorphic-ws"],e["form-data"],e.jszip)}(this,(function(e,t,a,n,i,r,s){"use strict";class o{func;owner;constructor(e,t){this.func=e,this.owner=t}}class l{_debugMode=!1;_listeners=new Map;_onceListeners=new Map;_catchAllListeners=[];_capturedEvents=new Map;_capturedAccumulatedDuration=0;constructor(){}setDebugMode(e){this._debugMode&&!e&&(console.log("Captured events: ",this._capturedEvents),console.log(`Total duration: ${this._capturedAccumulatedDuration}ms`)),this._debugMode=e,this._capturedEvents=new Map,this._capturedAccumulatedDuration=0}$clear(){this._listeners.clear(),this._onceListeners.clear()}clearCatchAllListeners(){this._catchAllListeners=[]}listenerCount(e){let t=0;return t+=this._listeners.get(e)?.length||0,t+=this._onceListeners.get(e)?.length||0,t}$hasListener(e){return this.listenerCount(e)>0}$catchAll(e,t){this._catchAllListeners.push(new o(e,t))}$on(e,t,a){let n;this._listeners.has(e)?n=this._listeners.get(e):(n=[],this._listeners.set(e,n)),n.push(new o(t,a))}$once(e,t,a){let n;this._onceListeners.has(e)?n=this._onceListeners.get(e):(n=[],this._onceListeners.set(e,n)),n.push(new o(t,a))}$off(e,t,a){let n=0;if(this._listeners.has(e)){n+=this._listeners.get(e).removeByFilterFunc((e=>e.func===t&&e.owner===a))}if(this._onceListeners.has(e)){n+=this._onceListeners.get(e).removeByFilterFunc((e=>e.func===t&&e.owner===a))}return n}$offByOwner(e,t){let a=0;if(this._listeners.has(e)){a+=this._listeners.get(e).removeByFilterFunc((e=>e.owner===t))}if(this._onceListeners.has(e)){a+=this._onceListeners.get(e).removeByFilterFunc((e=>e.owner===t))}return a}$emitSync(e,...t){const a=[],n=performance.now();let i=0;try{for(const n of this._catchAllListeners.values())try{const r=n.func.call(n.owner,e,...t);r&&r.then&&a.push(r),i++}catch(e){console.error(e)}if(this._listeners.has(e)){const n=this._listeners.get(e);for(const e of n)try{const n=e.func.call(e.owner,...t);n&&n.then&&a.push(n),i++}catch(e){console.error(e)}}if(this._onceListeners.has(e)){const n=this._onceListeners.get(e);for(const e of n)try{const n=e.func.call(e.owner,...t);n&&n.then&&a.push(n),i++}catch(e){console.error(e)}this._onceListeners.set(e,[])}}catch(e){console.error(e)}if(this._debugMode&&"log"!==e){const t=performance.now(),r=Math.floor(t-n);let s=this._capturedEvents.get(e);s?(s.count++,s.duration+=r,s.promises+=a.length,s.sentTo+=i):(s={eventType:e,count:1,duration:r,promises:a.length,sentTo:i},this._capturedEvents.set(e,s)),r>3&&console.log(`Expensive event ${e}: ${r}ms`)}return a.length>0?Promise.all(a):null}$emit(e,...t){return new Promise((a=>{a(this.$emitSync(e,...t))}))}}const u=new l;class c{type;itemId;elementId;target;prop;value;oldValue;createdAt=Date.now();moveTargetArray;moveTargetArrayIndex;moveTargetElementId;start;length;position;elementsToDelete;field;fieldId;isLink;bundleIndex=0;_undoFunction;_redoFunction;constructor(e,t,a,n,i,r,s){this.type=e,this.itemId=t,this.elementId=a,this.target=n,this.prop=i,this.value=r,this.oldValue=s}async undo(){this._undoFunction&&await this._undoFunction()}async redo(){this._redoFunction&&await this._redoFunction()}setUndoFunction(e){this._undoFunction=e}setRedoFunction(e){this._redoFunction=e}setMoveTarget(e,t,a){this.moveTargetArray=e,this.moveTargetArrayIndex=t,this.moveTargetElementId=a}setRange(e,t){this.start=e,this.length=t}setPosition(e){this.position=e}setElementsToDelete(e){this.elementsToDelete=e}setField(e){this.field=e}setFieldId(e){this.fieldId=e}setIsLink(e){this.isLink=e}clone(){return Object.assign(new c,this)}isWithinMergeDeltaOf(e,t){return Math.abs(e.createdAt-this.createdAt)<=t}isMergeableWith(e,t){if(!this.isWithinMergeDeltaOf(e,t))return!1;const a=e.type===this.type&&e.itemId===this.itemId&&e.elementId===this.elementId&&e.target===this.target&&e.prop===this.prop,n=void 0!==e.value&&void 0!==e.oldValue&&void 0===e.start&&void 0===e.length&&void 0===e.position&&void 0===e.elementsToDelete;return a&&n}merge(e,t){if(!this.isMergeableWith(e,t))return null;let a=this.clone();return a.value=e.value,a.createdAt=e.createdAt,a._redoFunction=e._redoFunction,a}}const d=new t({dictionary:"hex",length:12});let p=(new Date).valueOf();var h={createItemOrBlockID:function(){return d.rnd()},createFieldID:function(){return(p++).toString()},createGUID:function(){return d.rnd()},createGeneratedItemId:function(){return"gen_"+this.createGUID()},toUserFriendlyName:function(e){return e.replace(/_./g,(e=>e.charAt(1).toUpperCase())).replace(/([a-z])([A-Z])/g,"$1 $2").replace(/^(.)/,(e=>e.toUpperCase()))},assert:function(e,t){e||console.error(`ASSERTION FAILED: '${e}' is untrue: ${t}`)},matchItemIdAndObject:(e,t)=>!(!e||!t)&&(e._id===t||e===t._id),getDepth(e,t=new WeakSet){if(null===e||"object"!=typeof e)return 1;const a=e;if(t.has(a))return 0;t.add(a);const n=Array.isArray(a)?a:Object.values(a);let i=0;for(const e of n){const a=this.getDepth(e,t);a>i&&(i=a)}return 1+i},areValuesEqual(e,t,a=3){if(e===t)return!0;if("number"==typeof e&&"number"==typeof t)return isNaN(e)&&isNaN(t);if(null==e||null==t||typeof e!=typeof t)return!1;if("object"!=typeof e)return!1;if(Array.isArray(e)!==Array.isArray(t))return!1;if(e._id&&e._id!==t._id)return!1;const n=Object.keys(e),i=Object.keys(t);if(n.length!==i.length)return!1;for(let i of n){if(!Object.prototype.hasOwnProperty.call(t,i))return!1;if(a>0&&!this.areValuesEqual(e[i],t[i],a-1))return!1}return!0},startTimer(e){const t=Date.now();return e&&console.log(`[TIMER] - ${e}`),function(e){const a=Date.now()-t;e?console.log(`[TIMER] - ${e}: ${a}ms`):console.log(`[TIMER] - ${a}ms`)}},dataURItoBlob(e){const t=e.split(",")[0].split(":")[1].split(";")[0],a=atob(e.split(",")[1]),n=[];for(let e=0;e<a.length;e++)n.push(a.charCodeAt(e));return new Blob([new Uint8Array(n)],{type:t})},xmur3(e){let t=1779033703^e.length;for(let a=0;a<e.length;a++)t=Math.imul(t^e.charCodeAt(a),3432918353),t=t<<13|t>>>19;return()=>(t=Math.imul(t^t>>>16,2246822507),t=Math.imul(t^t>>>13,3266489909),t^=t>>>16,t>>>0)},mulberry32:e=>()=>{let t=e+=1831565813;return t=Math.imul(t^t>>>15,1|t),t^=t+Math.imul(t^t>>>7,61|t),((t^t>>>14)>>>0)/4294967296},hslToRgb(e,t,a){const n=(1-Math.abs(2*a-1))*t,i=e/60,r=n*(1-Math.abs(i%2-1));let[s,o,l]=[0,0,0];[s,o,l]=i>=0&&i<1?[n,r,0]:i<2?[r,n,0]:i<3?[0,n,r]:i<4?[0,r,n]:i<5?[r,0,n]:[n,0,r];const u=a-n/2;return[Math.round(255*(s+u)),Math.round(255*(o+u)),Math.round(255*(l+u))]},rgbToHex:(e,t,a)=>"#"+[e,t,a].map((e=>e.toString(16).padStart(2,"0"))).join(""),colorFromString(e,t={}){const{minS:a=.72,maxS:n=.97,minL:i=.48,maxL:r=.62,return:s="hex"}=t,o=this.xmur3(e)(),l=this.mulberry32(o),u=Math.floor(360*l()),c=a+l()*(n-a),d=i+l()*(r-i);if("hsl"===s)return`hsl(${u} ${Math.round(100*c)}% ${Math.round(100*d)}%)`;const[p,h,f]=this.hslToRgb(u,c,d);return"rgb"===s?`rgb(${p}, ${h}, ${f})`:this.rgbToHex(p,h,f)},async downloadFile(e,t){if(e.startsWith("blob:")){const t=await fetch(e),a=await t.blob();return{data:a,mimeType:a.type}}return a.get(e,{responseType:"blob",onDownloadProgress:e=>{if(t&&e.total){const a=Math.round(100*e.loaded/e.total);t(a,e.total,e.loaded)}}})}};const f=new Set(["dependantFields","conditionFields","dependenciesInitialized","_hidden","_updateConditions","userData"]),m=new Set(["__proto__","__ob__","isSelected","isDirty","options","_hidden","_updateConditions","dependantFields","conditionFields","separatorFields","dependenciesInitialized","order","inject","type","datatype","minValue","maxValue","id","_id","linkableTypes","info","userData"]),y=new Set(["isSelected","isDirty","_hidden","_updateConditions","options","dependantFields","conditionFields","separatorFields","dependenciesInitialized","id","_id","linkableTypes","info","userData"]);class g{suppressDirty=!1;undoManager;_promises=[];_capturePromises=!1;_profiledEvents=[];_profiling=!1;_profilerStartTime=0;_profiledCount=0;static _instance;static get instance(){return this._instance||(this._instance=new this)}constructor(){}suppressDirtyFlag(e){this.suppressDirty=e}setUndoManager(e){this.undoManager=e}isUndoManagerActive(){return this.undoManager?.getEnabled()}_postUndoManagerEvent(e){this.undoManager&&(y.has(e.prop)||this.undoManager.event(e))}setItemDirty(e,t,a,n){this.suppressDirty||e.isDirty||a===n||m.has(t)||e.markDirty()}capturePromise(e){try{return this._capturePromises=!0,e(),Promise.all(this._promises)}finally{this._capturePromises=!1,this._promises=[]}}startProfiling(){this._profiling=!0,this._profiledEvents=[],this._profiledCount=0,this._profilerStartTime=performance.now(),u.setDebugMode(!0)}endProfiling(){const e=performance.now()-this._profilerStartTime;u.setDebugMode(!1),console.log("Profiled events: ",this._profiledEvents),console.log(`Profiling took ${e}ms`)}_addPromise(e){this._capturePromises&&this._promises.push(e)}_proxyObject(e,t,a,n){const i=this;if(!e)throw"_proxyObject(): Object is not defined. Cannot create proxy!";if(!a)throw"_proxyObject(): Item is not defined. Cannot create proxy!";if(!n)throw"_proxyObject(): Options is not defined. Cannot create proxy!";return new Proxy(e,{set:function(r,s,o){if(f.has(s))return Reflect.set(r,s,o);const l=performance.now();let d=i.isUndoManagerActive();const p=Reflect.get(r,s);if(h.areValuesEqual(p,o))return!0;let m=Reflect.set(r,s,o);function y(i,o){const l=new c(n.proxyEventTypeName,a._id,t?t.id:null,r,s,i,o);return n.isField&&(l.setField(e.name),l.setFieldId(e.id)),void 0!==n.isLink&&l.setIsLink(n.isLink),l}n.changeDoesNotMakeItemDirty||(h.matchItemIdAndObject(p,o)?d=!1:i.setItemDirty(a,s,p,o));const g=y(o,p);d&&(g.setUndoFunction((()=>{Reflect.set(r,s,g.oldValue);const e=y(g.oldValue,g.value);u.$emitSync("proxy:valueChange",e),n.changeEventFunc(e)})),g.setRedoFunction((()=>{Reflect.set(r,s,g.value);const e=y(g.value,g.oldValue);u.$emitSync("proxy:valueChange",e),n.changeEventFunc(e)}))),n.changeEventFunc(g),d&&i._postUndoManagerEvent(g),u.$emitSync("proxy:valueChange",g);const b=performance.now();return i._profiledCount++,i._profiledEvents.push({event:g,type:"object",duration:b-l}),m}})}_proxyArray(e,t,a,n){const i=this;if(!e)throw"_proxyArray(): Array is not defined. Cannot create proxy!";if(!a)throw"_proxyArray(): Item is not defined. Cannot create proxy!";if(!n)throw"_proxyArray(): Options is not defined. Cannot create proxy!";return new Proxy(e,{set(e,r,s){const o=performance.now(),l=Reflect.get(e,r);let d=Reflect.set(e,r,s);if("length"!==r&&"__proto__"!==r){const p=i.isUndoManagerActive();function h(i,s){const o=new c("arraySetValue",a._id,t?t.id:null,e,r,i,s);return n.field&&(o.setField(n.field.name),o.setFieldId(n.field.id)),o}n.changeDoesNotMakeItemDirty||i.setItemDirty(a,r,l,s);const f=h(s,l);p&&(f.setUndoFunction((()=>{const t=h(f.oldValue,f.value),a=parseInt(r);if(void 0===f.oldValue&&e.length-1===a){const n=e.pop();t.setElementsToDelete([n]),t.setRange(a,1)}else Reflect.set(e,r,f.oldValue);u.$emitSync("proxy:valueChange",t),n.deleteEventFunc(t)})),f.setRedoFunction((()=>{Reflect.set(e,r,f.value);const t=h(f.value,f.oldValue);u.$emitSync("proxy:valueChange",t),n.addEventFunc(t)}))),n.addEventFunc(f),p&&i._postUndoManagerEvent(f),u.$emitSync("proxy:valueChange",f);const m=performance.now();i._profiledCount++,i._profiledEvents.push({event:f,type:"set_array",duration:m-o})}return d},get(r,s){if("splice"===s){const e=Reflect.get(r,s);return function(...o){const l=o[0],d=o[1],p=[];for(let e=l;e<l+d;e++){const t=r[e];p.push(t)}function h(e,i,s){const o=new c("arraySpliceRemove",a._id,t?t.id:null,r);return n.field&&(o.setField(n.field.name),o.setFieldId(n.field.id)),o.setRange(e,i),o.setElementsToDelete(s),o}function f(e,i){const o=new c("arraySpliceAdd",a._id,t?t.id:null,r,s,i);return n.field&&(o.setField(n.field.name),o.setFieldId(n.field.id)),o.setPosition(e),o}if(e.apply(r,o),i.setItemDirty(a,s,!0,!1),d>0&&o.length<3){const e=i.isUndoManagerActive(),t=h(l,d,p);e&&(t.setUndoFunction((()=>{r.splice(l,0,...p);const e=f(l,p);u.$emitSync("proxy:valueChange",e),n.addEventFunc(e)})),t.setRedoFunction((()=>{r.splice(l,d);const e=h(l,d,p);u.$emitSync("proxy:valueChange",e),n.deleteEventFunc(e)}))),n.deleteEventFunc(t),e&&i._postUndoManagerEvent(t),u.$emitSync("proxy:valueChange",t)}else if(o.length>2){const e=o.slice(2),t=f(l,e);t.setPosition(l),t.setUndoFunction((()=>{r.splice(l,e.length);const t=h(l,e.length,e);u.$emitSync("proxy:valueChange",t),n.deleteEventFunc(t)})),t.setRedoFunction((()=>{r.splice(l,0,...e);const t=f(l,e);u.$emitSync("proxy:valueChange",t),n.addEventFunc(t)})),n.addEventFunc(t),i._postUndoManagerEvent(t),u.$emitSync("proxy:valueChange",t)}}}return"moveToArray"===s?function(e,o,l){const d=r,p=t,{array:h,element:f}=o.getTargetArrayAndElement();function m(e,t,a,n){n=void 0===n?a.length:n;const i=Reflect.get(e,"splice").apply(e,[t,1]);if(i.length>0){const e=i[0];return Reflect.get(a,"splice").apply(a,[n,0,e]),e}return null}const y=m(d,e,h,l);if(y){function g(e,n,i,r,s,o){const l=new c("arrayMoveToArray",a._id,t?t.id:null,e,void 0,o);return l.setRange(n,1),l.setMoveTarget(i,r,s?s.id:null),l}i.setItemDirty(a,s,!0,!1);const b=i.isUndoManagerActive(),v=g(d,e,o,l,f,y);b&&(v.setUndoFunction((()=>{const t=m(h,l,d,e),a=g(o,l,d,e,p,t);u.$emitSync("proxy:valueChange",a),n.moveEventFunc(a)})),v.setRedoFunction((()=>{const t=m(d,e,h,l),a=g(d,e,o,l,f,t);u.$emitSync("proxy:valueChange",a),n.moveEventFunc(a)}))),n.moveEventFunc(v),b&&i._postUndoManagerEvent(v),u.$emitSync("proxy:valueChange",v)}}:"getTargetArrayAndElement"===s?function(){return{array:e,element:t}}:("move"===s&&console.warn("'move' prop is not implemented in Proxifier"),Reflect.get(r,s))}})}proxyBlockArray(e,t,a){return this._proxyArray(e,t,a,{addEventFunc:e=>{this._addPromise(u.$emit("itemRepo:blockAdded",e))},deleteEventFunc:e=>{this._addPromise(u.$emit("itemRepo:blockDeleted",e))},moveEventFunc:e=>{this._addPromise(u.$emit("itemRepo:blockMoved",e))}})}proxyListArray(e,t,a){return this._proxyArray(e,null,a,{field:t,addEventFunc:function(e){u.$emit("itemRepo:listEntryAdded",e)},deleteEventFunc:function(e){u.$emit("itemRepo:listEntryDeleted",e)}})}proxyScriptArray(e,t,a){return this._proxyArray(e,t,a,{addEventFunc:function(e){u.$emit("itemRepo:scriptAdded",e)},deleteEventFunc:function(e){u.$emit("itemRepo:scriptDeleted",e)}})}proxyBlock(e,t){return this._proxyObject(e,e,t,{isLink:!0,changeEventFunc:function(e){u.$emit("itemRepo:fieldChanged",e),u.$emit("itemRepo:linkChanged",e)},proxyEventTypeName:"blockSetValue"})}proxyGraphBlock(e,t){return this._proxyObject(e,e,t,{isLink:!0,changeEventFunc:function(e){u.$emit("itemRepo:graphNodeChanged",e)},proxyEventTypeName:"blockSetValue"})}proxyGraphBlockArray(e,t){return this._proxyArray(e,t,t,{addEventFunc:function(e){u.$emit("itemRepo:graphNodeAdded",e)},deleteEventFunc:function(e){u.$emit("itemRepo:graphNodeDeleted",e)}})}proxyConnection(e,t){return this._proxyObject(e,t,t,{changeEventFunc:function(e){u.$emit("itemRepo:graphConnectionChanged",e)},proxyEventTypeName:"connectionSetValue"})}proxyConnectionArray(e,t){return this._proxyArray(e,e,t,{addEventFunc:function(e){u.$emit("itemRepo:graphConnectionAdded",e)},deleteEventFunc:function(e){u.$emit("itemRepo:graphConnectionDeleted",e)}})}proxyItemField(e,t){const a="Link"===e.type;return this._proxyObject(e,null,t,{isLink:a,isField:!0,changeEventFunc:function(e){u.$emit("itemRepo:fieldChanged",e),a&&u.$emit("itemRepo:linkChanged",e)},proxyEventTypeName:"itemFieldSetValue"})}proxyGraphBlockField(e,t,a){return this._proxyObject(e,t,a,{isLink:"Link"===e.type,isField:!0,changeEventFunc:function(e){u.$emit("itemRepo:graphNodeFieldChanged",e)},proxyEventTypeName:"blockFieldSetValue"})}proxyBlockField(e,t,a){const n="Link"===e.type;return this._proxyObject(e,t,a,{isLink:n,isField:!0,changeEventFunc:function(e){u.$emit("itemRepo:fieldChanged",e),n&&u.$emit("itemRepo:linkChanged",e)},proxyEventTypeName:"blockFieldSetValue"})}proxyScriptItem(e,t,a){return this._proxyObject(e,t,a,{isLink:!0,changeEventFunc:function(e){u.$emit("itemRepo:scriptItemChanged",e)},proxyEventTypeName:"scriptItemSetValue"})}proxyScriptFieldsArray(e,t,a){return this._proxyArray(e,t,a,{addEventFunc:function(e){u.$emit("itemRepo:scriptFieldAdded",e)},deleteEventFunc:function(e){u.$emit("itemRepo:scriptFieldDeleted",e)},changeDoesNotMakeItemDirty:!0})}proxyScriptField(e,t,a){return this._proxyObject(e,t,a,{isLink:!1,isField:!0,changeEventFunc:function(e){u.$emit("itemRepo:scriptFieldChanged",e)},proxyEventTypeName:"itemScriptFieldSetValue",changeDoesNotMakeItemDirty:!1})}proxyCustomFieldsArray(e,t){return this._proxyArray(e,null,t,{addEventFunc:function(e){u.$emit("itemRepo:customFieldAdded",e)},deleteEventFunc:function(e){u.$emit("itemRepo:customFieldDeleted",e)},changeDoesNotMakeItemDirty:!0})}proxyCustomField(e,t){return this._proxyObject(e,null,t,{isLink:!1,isField:!0,changeEventFunc:function(e){u.$emit("itemRepo:customFieldChanged",e)},proxyEventTypeName:"itemCustomFieldSetValue",changeDoesNotMakeItemDirty:!1})}}class b{level;name;times;durations=[];childrenMap=new Map;children=[];parent;constructor(e,t,a,n){this.name=e,this.level=t,this.times=[a],this.parent=n}}class v{startTime=0;endTime=0;startIteration=0;currentLevel=0;root=new b("root",0,0,void 0);currentEntry;active=!1;static _instance;static get instance(){return this._instance||(this._instance=new this)}constructor(){this.currentEntry=this.root}start(){this.startTime=performance.now(),this.startIteration=this.startTime,this.root=new b("root",0,0,void 0),this.currentEntry=this.root,this.currentLevel=0,this.active=!0}end(e=!1){this.active=!1,this.endTime=performance.now()-this.startTime,this.root.durations.push(this.endTime-this.root.times[0]),e&&this.printResults()}_iterate(e,t){e(t=t||this.root);for(const a of t.children)this._iterate(e,a)}getResults(){const e=[];function t(e){return Math.round(1e3*e)/1e3}function a(e){return e.reduce(((e,t)=>e+t),0)}return this._iterate((function(n){const i=t(a(n.times)/n.times.length),r=t(a(n.durations)/n.durations.length),s=t(a(n.durations)),o=t(s-n.children.reduce(((e,t)=>e+a(t.durations)),0));e.push({name:"".padStart(2*n.level," .")+n.name,executions:n.times.length,avgTimeStartMs:i,avgTimeEndMs:t(i+r),avgDurationMs:r,totalDurationMs:s,selfDurationMs:o})})),e}printResults(){console.table(this.getResults(),["name","executions","avgTimeStartMs","avgTimeEndMs","avgDurationMs","totalDurationMs","selfDurationMs"])}newIteration(){this.startIteration=performance.now(),this.currentLevel=0}async asyncBlock(e,t){if(!this.active)return t();let a;try{return a=this.beginBlock(e),await t()}finally{this.endBlock(a)}}block(e,t){if(!this.active)return t();let a;try{return a=this.beginBlock(e),t()}finally{this.endBlock(a)}}beginBlock(e){if(!this.active)return;this.currentLevel++;const t=performance.now()-this.startIteration;let a=this.currentEntry.childrenMap.get(e);return a?a.times.push(t):(a=new b(e,this.currentLevel,t,this.currentEntry),this.currentEntry.children.push(a),this.currentEntry.childrenMap.set(e,a)),this.currentEntry=a,a}endBlock(e){if(!e)return;const t=performance.now()-this.startIteration-e.times[e.times.length-1];e.durations.push(t),this.currentEntry=e.parent,this.currentLevel--}}class _ extends Error{constructor(e,t){super(e),t&&(this.name=t)}toString(){return this.name?`${this.name}: ${this.message}`:this.message}}class w extends _{constructor(e){super(e,"InvalidArgumentException")}}class A extends _{constructor(e){super(e,"RuntimeException")}}class k extends _{constructor(e){super(e,"LoaderException")}}class S extends _{constructor(e){super(e,"QuotaExceededException")}}class N extends _{constructor(e){super(e,"AccessDeniedException")}}let T=class{_id;name;folder;folderPath;links;attributes;userAttributes;filename;createdAt;updatedAt;version;filesize;hash;mimeType;type;packageType;createdBy;updatedBy;acl;visibility;properties;allowConversation;conversation;tags;contributors;description;shortDescription;userAttributeTemplate;categories;attachments;license;quotaUser;quotaGroup;itemSize;totalSize;flags;perceptiveHash;unpackagedSize;location;itemFlag;constructor(e){if(this._id=e._id,this.name=e.name,this.folder=e.folder,this.folderPath=e.folderPath,this.links=[],Array.isArray(e.links))for(const t of e.links)this.links.push({to:t.to,usage:t.usage});this.attributes=JSON.parse(JSON.stringify(e.attributes||{})),this.userAttributes=JSON.parse(JSON.stringify(e.userAttributes||{})),this.filename=e.filename,this.createdAt=e.createdAt,this.updatedAt=e.updatedAt,this.version={major:e.version?.major||0,minor:e.version?.minor||0,revision:e.version?.revision||1},this.filesize=e.filesize,this.hash=e.hash,this.mimeType=e.mimeType,this.type=e.type,this.packageType=e.packageType,this.createdBy=e.createdBy,this.updatedBy=e.updatedBy,this.acl=JSON.parse(JSON.stringify(e.acl||[])),this.visibility=e.visibility,this.properties=JSON.parse(JSON.stringify(e.properties||{})),this.allowConversation=e.allowConversation,this.conversation=e.conversation,this.tags=JSON.parse(JSON.stringify(e.tags||[])),this.contributors=JSON.parse(JSON.stringify(e.contributors||[])),this.description=e.description,this.shortDescription=e.shortDescription,this.userAttributeTemplate=e.userAttributeTemplate,this.categories=e.categories,this.attachments=JSON.parse(JSON.stringify(e.attachments||[])),this.license=e.license,this.quotaUser=e.quotaUser,this.quotaGroup=e.quotaGroup,this.itemSize=e.itemSize,this.totalSize=e.totalSize,this.flags=JSON.parse(JSON.stringify(e.flags||[])),this.perceptiveHash=e.perceptiveHash,this.unpackagedSize=e.unpackagedSize,this.location=e.location,this.itemFlag=JSON.parse(JSON.stringify(e.itemFlag||{}))}};class M extends T{links;thumbnails;fieldSets;fields;userFields;isAggregatedItem=!0;constructor(e){if(super(e),this.links=[],Array.isArray(e.links))for(const t of e.links)this.links.push({to:t.to,usage:t.usage,stopRecursion:t.stopRecursion});this.thumbnails=JSON.parse(JSON.stringify(e.thumbnails||[])),this.fieldSets=JSON.parse(JSON.stringify(e.fieldSets||[])),this.fields=JSON.parse(JSON.stringify(e.fields||[])),this.userFields=JSON.parse(JSON.stringify(e.userFields||[]))}}var x=[{_id:{$oid:"5e6a1ace89707feef5738292"},contentTypes:["model/splat"],fieldSets:[],fields:[],name:"Gaussian Splats",updateRequiresThumbRefresh:!0,creatableEmpty:!1},{_id:{$oid:"5e6a1ace89707eee5523aa61"},contentTypes:["application/json"],fieldSets:[],fields:[],name:"Structured Data",updateRequiresThumbRefresh:!1,creatableEmpty:!0},{_id:{$oid:"5e6a1ace89707feef3748569"},contentTypes:[],fieldSets:[],fields:[{label:"Scenes",type:"Separator"},{elementName:"Scene",fields:[{linkableTypes:["Scene"],type:"Link",usageAs:"Scene",mandatory:!0},{datatype:"Boolean",defaultValue:!0,displayName:"Load",name:"Load",type:"Attribute"},{datatype:"Boolean",defaultValue:!0,displayName:"Active",if:{Load:!0},name:"Active",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Primary",name:"Primary",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Exclude in packages",name:"ExcludeInPackages",type:"Attribute"},{datatype:"Transform",defaultValue:{position:{x:0,y:0,z:0},rotation:{w:1,x:0,y:0,z:0},scale:{x:1,y:1,z:1}},name:"Transform",type:"Attribute"}],name:"Scenes",type:"List"},{label:"Variable Sets",type:"Separator",collapsed:!0},{displayName:"Variable sets",elementName:"Variable set",fields:[{displayName:"Variable set",linkableTypes:["Variable Set"],type:"Link",usageAs:"VariableSet",mandatory:!0},{datatype:"String",defaultValue:"",displayName:"Name",name:"Name",type:"Attribute"}],name:"VariableSets",type:"List"},{label:"Graphics",type:"Separator",collapsed:!0},{datatype:"Enum",defaultValue:"Not defined",displayName:"Aspect ratio",info:"This determines the project's aspect ratio. If not defined, the game will run in the default aspect depending on platform and browser size",name:"AspectRatio",options:["Not defined","Standard (4:3)","Widescreen (16:9)","Ultrawide (21:9)","Custom"],type:"Attribute"},{datatype:"Float",defaultValue:1.3,minValue:.1,maxValue:10,displayName:"Custom Aspect",if:{AspectRatio:"Custom"},name:"CustomAspect",type:"Attribute"},{label:"Physics",type:"Separator",collapsed:!0},{datatype:"Boolean",defaultValue:!1,displayName:"Enabled",name:"PhysicsEnabled",type:"Attribute"},{datatype:"Vector3d",defaultValue:{x:0,y:-9.81,z:0},displayName:"Gravity",if:{PhysicsEnabled:!0},name:"Gravity",type:"Attribute"},{datatype:"LayerMatrix",defaultValue:[[0]],displayName:"Collision matrix",if:{PhysicsEnabled:!0},info:"This controls which physics object interact with which others depending on their layers",name:"CollisionMatrix",type:"Attribute"},{datatype:"StringList",defaultValue:["Default","Terrain","TransparentFX","Water"],displayName:"Layer names",fixedLength:!0,info:"Names of the layers to use with all scenegraph nodes",name:"LayerNames",type:"Attribute"},{label:"Resources",type:"Separator",collapsed:!0},{datatype:"Enum",defaultValue:"After loading everything",displayName:"Start execution",info:"This controls when the engine will start execution of the project in the player",name:"StartExecution",options:["Right away","After loading minimum LOD","After loading everything"],type:"Attribute"},{label:"Controls",type:"Separator",collapsed:!0},{datatype:"Boolean",defaultValue:!1,displayName:"Automatic pointer lock",name:"AutomaticPointerLock",type:"Attribute",info:"Enabling this will cause the mouse pointer to be locked until Escape is pressed"},{label:"Canvas Fonts",type:"Separator",collapsed:!0},{displayName:"Canvas fonts",elementName:"Font",fields:[{displayName:"Font",linkableTypes:["Font"],type:"Link",usageAs:"Font",mandatory:!0}],name:"CanvasFonts",type:"List"}],name:"Project",recursiveLoadStopsHere:!0,updateRequiresThumbRefresh:!1,creatableEmpty:!1},{_id:{$oid:"5e6a1ace24a07f56f3742569"},contentTypes:[],fieldSets:[],fields:[{elementName:"Variable",fields:[{datatype:"String",defaultValue:"Name",displayName:"Name",name:"Name",type:"Attribute"},{datatype:"Enum",defaultValue:"Integer",displayName:"Type",name:"Type",options:["Integer","Float","String","Boolean"],type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Value",if:{Type:"Boolean"},name:"BooleanValue",type:"Attribute"},{datatype:"Integer",defaultValue:0,displayName:"Value",if:{Type:"Integer"},name:"IntegerValue",type:"Attribute"},{datatype:"Float",defaultValue:0,displayName:"Value",if:{Type:"Float"},name:"FloatValue",type:"Attribute"},{datatype:"String",defaultValue:"",displayName:"Value",if:{Type:"String"},name:"StringValue",type:"Attribute"}],name:"Variables",type:"List"}],name:"Variable Set",updateRequiresThumbRefresh:!1,creatableEmpty:!0},{_id:{$oid:"5e6a1ace89707feef9173386"},contentTypes:["audio/mpeg"],fieldSets:[],fields:[{datatype:"Float",defaultValue:1,displayName:"Volume",maxValue:1,minValue:0,name:"Volume",type:"Attribute",widget:"Slider"}],name:"Audio",updateRequiresThumbRefresh:!1,creatableEmpty:!1},{_id:{$oid:"5e6a1acf89707feef917338f"},contentTypes:["*"],fieldSets:[],fields:[],name:"Binary",creatableEmpty:!1},{_id:{$oid:"5e6a1acf89707feef917337f"},contentTypes:["application/vnd.lumino.package"],fieldSets:[],fields:[],name:"Package",creatableEmpty:!1},{_id:{$oid:"5e6a1ad189707feef9173391"},contentTypes:["image/vnd.radiance"],fieldSets:[],fields:[],name:"HDR Image",creatableEmpty:!1},{_id:{$oid:"5e6a1ad189707feef9173392"},contentTypes:["image/png","image/jpeg","image/avif","image/heif"],fieldSets:[],fields:[{datatype:"Enum",defaultValue:"Linear",displayName:"Encoding",name:"Encoding",options:["Linear","sRGB"],type:"Attribute"}],name:"Image",updateRequiresThumbRefresh:!0,creatableEmpty:!1},{_id:{$oid:"5e6a1ad189707feef9173393"},contentTypes:[""],fieldSets:[],fields:[{label:"Type",type:"Separator"},{datatype:"Enum",defaultValue:"Physical",displayName:"Material type",name:"MaterialType",options:["Physical","Shader","Point","Basic","Normal","Toon","Matcap","Lambert","Phong"],type:"Attribute"},{label:"Matcap material options",type:"Separator",if:{MaterialType:"Matcap"}},{displayName:"Matcap map",linkableTypes:["Image"],type:"Link",usageAs:"Matcap",if:{MaterialType:"Matcap"}},{datatype:"Enum",defaultValue:"Repeat",displayName:"Horiz. wrapping",if:{MaterialType:"Matcap",Matcap:{$isset:!0}},name:"MatcapWrapS",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Repeat",displayName:"Vert. wrapping",if:{MaterialType:"Matcap",Matcap:{$isset:!0}},name:"MatcapWrapT",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear",displayName:"Mag filter",if:{MaterialType:"Matcap",Matcap:{$isset:!0}},name:"MatcapMagFilter",options:["Linear","Nearest"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear, Mipmap linear",displayName:"Min Filter",if:{MaterialType:"Matcap",Matcap:{$isset:!0}},name:"MatcapMinFilter",options:["Nearest","Nearest, Mipmap nearest","Nearest, Mipmap linear","Linear","Linear, Mipmap nearest","Linear, Mipmap linear"],type:"Attribute"},{datatype:"Enum",defaultValue:"1x",displayName:"Anisotropy",if:{MaterialType:"Matcap",Matcap:{$isset:!0}},name:"MatcapAnisotropy",options:["1x","2x","4x","8x","16x"],type:"Attribute"},{label:"Toon material options",type:"Separator",if:{MaterialType:"Toon"}},{displayName:"Gradient map",linkableTypes:["Image"],if:{MaterialType:"Toon"},type:"Link",usageAs:"Gradient"},{datatype:"Enum",defaultValue:"Repeat",displayName:"Horiz. wrapping",if:{MaterialType:"Toon",Gradient:{$isset:!0}},name:"GradientWrapS",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Repeat",displayName:"Vert. wrapping",if:{MaterialType:"Toon",Gradient:{$isset:!0}},name:"GradientWrapT",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Nearest",displayName:"Mag filter",if:{MaterialType:"Toon",Gradient:{$isset:!0}},name:"GradientMagFilter",options:["Nearest"],type:"Attribute"},{datatype:"Enum",defaultValue:"Nearest",displayName:"Min Filter",if:{MaterialType:"Toon",Gradient:{$isset:!0}},name:"GradientMinFilter",options:["Nearest"],type:"Attribute"},{datatype:"Enum",defaultValue:"1x",displayName:"Anisotropy",if:{MaterialType:"Toon",Gradient:{$isset:!0}},name:"GradientAnisotropy",options:["1x","2x","4x","8x","16x"],type:"Attribute"},{label:"Basic material options",type:"Separator",if:{MaterialType:"Basic"}},{datatype:"Color",defaultValue:{a:255,b:255,g:255,r:255},displayName:"Color",name:"EmissionColor",type:"Attribute",if:{MaterialType:"Basic"}},{label:"Custom shaders",type:"Separator",if:{MaterialType:"Shader"}},{displayName:"Vertex shader",linkableTypes:["Vertex Shader"],type:"Link",usageAs:"VertexShader",if:{MaterialType:"Shader"}},{displayName:"Pixel shader",linkableTypes:["Pixel Shader"],type:"Link",usageAs:"PixelShader",if:{MaterialType:"Shader"}},{label:"Point rendering",type:"Separator",if:{MaterialType:"Point"}},{datatype:"Float",defaultValue:1,displayName:"Size",if:{MaterialType:"Point"},minValue:0,name:"PointSize",type:"Attribute"},{datatype:"Boolean",defaultValue:!0,displayName:"Size attenuation",if:{MaterialType:"Point"},name:"PointSizeAttenuation",type:"Attribute"},{label:"Attenuation",type:"Separator",if:{MaterialType:"Physical"}},{datatype:"Color",defaultValue:{a:255,b:255,g:255,r:255},displayName:"Color",info:"The color that white light turns into due to absorption when reaching the attenuation distance.",name:"AttenuationColor",type:"Attribute",if:{MaterialType:"Physical"}},{datatype:"Float",defaultValue:1e3,displayName:"Distance",info:"Density of the medium given as the average distance that light travels in the medium before interacting with a particle. The value is given in world space units, and must be greater than zero.",minValue:1e-5,name:"AttenuationDistance",type:"Attribute",if:{MaterialType:"Physical"}},{label:"Diffuse",type:"Separator",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Point"},{MaterialType:"Basic"},{MaterialType:"Toon"},{MaterialType:"Matcap"},{MaterialType:"Lambert"},{MaterialType:"Phong"}]}},{datatype:"Color",defaultValue:{a:255,b:255,g:255,r:255},displayName:"Color",name:"DiffuseColor",type:"Attribute",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Point"},{MaterialType:"Toon"},{MaterialType:"Matcap"},{MaterialType:"Lambert"},{MaterialType:"Phong"}]}},{displayName:"Albedo map",linkableTypes:["Image","Composition","Video"],type:"Link",usageAs:"Albedo",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Point"},{MaterialType:"Basic"},{MaterialType:"Toon"},{MaterialType:"Matcap"},{MaterialType:"Lambert"},{MaterialType:"Phong"}]}},{datatype:"Enum",defaultValue:"Repeat",displayName:"Horiz. wrapping",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Point"},{MaterialType:"Basic"},{MaterialType:"Toon"},{MaterialType:"Matcap"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],Albedo:{$isset:!0}},name:"AlbedoWrapS",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Repeat",displayName:"Vert. wrapping",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Point"},{MaterialType:"Basic"},{MaterialType:"Toon"},{MaterialType:"Matcap"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],Albedo:{$isset:!0}},name:"AlbedoWrapT",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear",displayName:"Mag filter",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Point"},{MaterialType:"Basic"},{MaterialType:"Toon"},{MaterialType:"Matcap"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],Albedo:{$isset:!0}},name:"AlbedoMagFilter",options:["Linear","Nearest"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear, Mipmap linear",displayName:"Min Filter",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Point"},{MaterialType:"Basic"},{MaterialType:"Toon"},{MaterialType:"Matcap"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],Albedo:{$isset:!0}},name:"AlbedoMinFilter",options:["Nearest","Nearest, Mipmap nearest","Nearest, Mipmap linear","Linear","Linear, Mipmap nearest","Linear, Mipmap linear"],type:"Attribute"},{datatype:"Enum",defaultValue:"1x",displayName:"Anisotropy",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Point"},{MaterialType:"Basic"},{MaterialType:"Toon"},{MaterialType:"Matcap"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],Albedo:{$isset:!0}},name:"AlbedoAnisotropy",options:["1x","2x","4x","8x","16x"],type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Vertex Colors",name:"VertexColors",type:"Attribute"},{label:"Transparency",type:"Separator"},{datatype:"Float",defaultValue:0,displayName:"Alpha test",maxValue:1,minValue:0,name:"AlphaTest",type:"Attribute",widget:"Slider"},{datatype:"Boolean",defaultValue:!1,displayName:"Transparent",name:"Transparent",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Opacity",if:{Transparent:!0},maxValue:1,minValue:0,name:"Opacity",type:"Attribute",widget:"Slider"},{displayName:"Alpha map",linkableTypes:["Image"],type:"Link",usageAs:"Alpha",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Point"},{MaterialType:"Basic"},{MaterialType:"Toon"},{MaterialType:"Matcap"},{MaterialType:"Lambert"},{MaterialType:"Phong"}]}},{datatype:"Enum",defaultValue:"Repeat",displayName:"Horiz. wrapping",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Point"},{MaterialType:"Basic"},{MaterialType:"Toon"},{MaterialType:"Matcap"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],Alpha:{$isset:!0}},name:"AlphaWrapS",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Repeat",displayName:"Vert. wrapping",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Point"},{MaterialType:"Basic"},{MaterialType:"Toon"},{MaterialType:"Matcap"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],Alpha:{$isset:!0}},name:"AlphaWrapT",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear",displayName:"Mag filter",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Point"},{MaterialType:"Basic"},{MaterialType:"Toon"},{MaterialType:"Matcap"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],Alpha:{$isset:!0}},name:"AlphaMagFilter",options:["Linear","Nearest"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear, Mipmap linear",displayName:"Min Filter",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Point"},{MaterialType:"Basic"},{MaterialType:"Toon"},{MaterialType:"Matcap"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],Alpha:{$isset:!0}},name:"AlphaMinFilter",options:["Nearest","Nearest, Mipmap nearest","Nearest, Mipmap linear","Linear","Linear, Mipmap nearest","Linear, Mipmap linear"],type:"Attribute"},{datatype:"Enum",defaultValue:"1x",displayName:"Anisotropy",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Point"},{MaterialType:"Basic"},{MaterialType:"Toon"},{MaterialType:"Matcap"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],Alpha:{$isset:!0}},name:"AlphaAnisotropy",options:["1x","2x","4x","8x","16x"],type:"Attribute"},{label:"Emission",type:"Separator",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Toon"},{MaterialType:"Lambert"},{MaterialType:"Phong"}]}},{datatype:"Color",defaultValue:{a:255,b:0,g:0,r:0},displayName:"Color",name:"EmissiveColor",type:"Attribute",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Toon"},{MaterialType:"Lambert"},{MaterialType:"Phong"}]}},{datatype:"Float",defaultValue:1,displayName:"Intensity",maxValue:10,minValue:0,name:"EmissiveIntensity",type:"Attribute",widget:"Slider",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Toon"},{MaterialType:"Lambert"},{MaterialType:"Phong"}]}},{displayName:"Emissive map",linkableTypes:["Image"],type:"Link",usageAs:"Emissive",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Toon"},{MaterialType:"Lambert"},{MaterialType:"Phong"}]}},{datatype:"Enum",defaultValue:"Repeat",displayName:"Horiz. wrapping",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Toon"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],Emissive:{$isset:!0}},name:"EmissiveWrapS",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Repeat",displayName:"Vert. wrapping",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Toon"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],Emissive:{$isset:!0}},name:"EmissiveWrapT",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear",displayName:"Mag filter",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Toon"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],Emissive:{$isset:!0}},name:"EmissiveMagFilter",options:["Linear","Nearest"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear, Mipmap linear",displayName:"Min Filter",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Toon"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],Emissive:{$isset:!0}},name:"EmissiveMinFilter",options:["Nearest","Nearest, Mipmap nearest","Nearest, Mipmap linear","Linear","Linear, Mipmap nearest","Linear, Mipmap linear"],type:"Attribute"},{datatype:"Enum",defaultValue:"1x",displayName:"Anisotropy",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Toon"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],Emissive:{$isset:!0}},name:"EmissiveAnisotropy",options:["1x","2x","4x","8x","16x"],type:"Attribute"},{label:"Sheen",type:"Separator",if:{MaterialType:"Physical"}},{datatype:"Float",defaultValue:0,displayName:"Sheen",maxValue:1,minValue:0,name:"Sheen",type:"Attribute",if:{MaterialType:"Physical"}},{datatype:"Float",defaultValue:0,displayName:"Sheen roughness",maxValue:1,minValue:0,name:"SheenRoughness",type:"Attribute",if:{MaterialType:"Physical"}},{displayName:"Sheen roughness map",linkableTypes:["Image"],type:"Link",usageAs:"SheenRoughnessMap",if:{MaterialType:"Physical"}},{datatype:"Enum",defaultValue:"Repeat",displayName:"Horiz. wrapping",if:{MaterialType:"Physical",SheenRoughnessMap:{$isset:!0}},name:"SheenRoughnessWrapS",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Repeat",displayName:"Vert. wrapping",if:{MaterialType:"Physical",SheenRoughnessMap:{$isset:!0}},name:"SheenRoughnessWrapT",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear",displayName:"Mag filter",if:{MaterialType:"Physical",SheenRoughnessMap:{$isset:!0}},name:"SheenRoughnessMagFilter",options:["Linear","Nearest"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear, Mipmap linear",displayName:"Min Filter",if:{MaterialType:"Physical",SheenRoughnessMap:{$isset:!0}},name:"SheenRoughnessMinFilter",options:["Nearest","Nearest, Mipmap nearest","Nearest, Mipmap linear","Linear","Linear, Mipmap nearest","Linear, Mipmap linear"],type:"Attribute"},{datatype:"Enum",defaultValue:"1x",displayName:"Anisotropy",if:{MaterialType:"Physical",SheenRoughnessMap:{$isset:!0}},name:"SheenRoughnessAnisotropy",options:["1x","2x","4x","8x","16x"],type:"Attribute"},{datatype:"Color",defaultValue:{a:255,b:255,g:255,r:255},displayName:"Sheen color",name:"SheenColor",type:"Attribute",if:{MaterialType:"Physical"}},{displayName:"Sheen color map",linkableTypes:["Image"],type:"Link",usageAs:"SheenColorMap",if:{MaterialType:"Physical"}},{datatype:"Enum",defaultValue:"Repeat",displayName:"Horiz. wrapping",if:{MaterialType:"Physical",SheenColorMap:{$isset:!0}},name:"SheenColorWrapS",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Repeat",displayName:"Vert. wrapping",if:{MaterialType:"Physical",SheenColorMap:{$isset:!0}},name:"SheenColorWrapT",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear",displayName:"Mag filter",if:{MaterialType:"Physical",SheenColorMap:{$isset:!0}},name:"SheenColorMagFilter",options:["Linear","Nearest"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear, Mipmap linear",displayName:"Min Filter",if:{MaterialType:"Physical",SheenColorMap:{$isset:!0}},name:"SheenColorMinFilter",options:["Nearest","Nearest, Mipmap nearest","Nearest, Mipmap linear","Linear","Linear, Mipmap nearest","Linear, Mipmap linear"],type:"Attribute"},{datatype:"Enum",defaultValue:"1x",displayName:"Anisotropy",if:{MaterialType:"Physical",SheenColorMap:{$isset:!0}},name:"SheenColorAnisotropy",options:["1x","2x","4x","8x","16x"],type:"Attribute"},{label:"Normal",type:"Separator",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Normal"},{MaterialType:"Toon"},{MaterialType:"Matcap"},{MaterialType:"Lambert"},{MaterialType:"Phong"}]}},{displayName:"Normal map",linkableTypes:["Image"],type:"Link",usageAs:"Normal",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Normal"},{MaterialType:"Toon"},{MaterialType:"Matcap"},{MaterialType:"Lambert"},{MaterialType:"Phong"}]}},{datatype:"Vector2d",defaultValue:{x:1,y:1},displayName:"Scale",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Normal"},{MaterialType:"Toon"},{MaterialType:"Matcap"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],Normal:{$isset:!0}},maxValue:10,minValue:0,name:"NormalScale2d",type:"Attribute"},{datatype:"Enum",defaultValue:"TangentSpace",displayName:"Type",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Normal"},{MaterialType:"Toon"},{MaterialType:"Matcap"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],Normal:{$isset:!0}},name:"NormalType",options:["TangentSpace","ObjectSpace"],type:"Attribute"},{datatype:"Enum",defaultValue:"Repeat",displayName:"Horiz. wrapping",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Normal"},{MaterialType:"Toon"},{MaterialType:"Matcap"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],Normal:{$isset:!0}},name:"NormalWrapS",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Repeat",displayName:"Vert. wrapping",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Normal"},{MaterialType:"Toon"},{MaterialType:"Matcap"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],Normal:{$isset:!0}},name:"NormalWrapT",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear",displayName:"Mag filter",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Normal"},{MaterialType:"Toon"},{MaterialType:"Matcap"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],Normal:{$isset:!0}},name:"NormalMagFilter",options:["Linear","Nearest"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear, Mipmap linear",displayName:"Min Filter",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Normal"},{MaterialType:"Toon"},{MaterialType:"Matcap"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],Normal:{$isset:!0}},name:"NormalMinFilter",options:["Nearest","Nearest, Mipmap nearest","Nearest, Mipmap linear","Linear","Linear, Mipmap nearest","Linear, Mipmap linear"],type:"Attribute"},{datatype:"Enum",defaultValue:"1x",displayName:"Anisotropy",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Normal"},{MaterialType:"Toon"},{MaterialType:"Matcap"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],Normal:{$isset:!0}},name:"NormalAnisotropy",options:["1x","2x","4x","8x","16x"],type:"Attribute"},{label:"Roughness",type:"Separator",if:{MaterialType:"Physical"}},{datatype:"Float",defaultValue:1,displayName:"Roughness Intensity",maxValue:1,minValue:0,name:"RoughnessIntensity",type:"Attribute",widget:"Slider",if:{MaterialType:"Physical"}},{displayName:"Roughness map",linkableTypes:["Image"],type:"Link",usageAs:"Roughness",if:{MaterialType:"Physical"}},{datatype:"Enum",defaultValue:"Repeat",displayName:"Horiz. wrapping",if:{Roughness:{$isset:!0}},name:"RoughnessWrapS",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Repeat",displayName:"Vert. wrapping",if:{Roughness:{$isset:!0}},name:"RoughnessWrapT",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear",displayName:"Mag filter",if:{Roughness:{$isset:!0}},name:"RoughnessMagFilter",options:["Linear","Nearest"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear, Mipmap linear",displayName:"Min Filter",if:{Roughness:{$isset:!0}},name:"RoughnessMinFilter",options:["Nearest","Nearest, Mipmap nearest","Nearest, Mipmap linear","Linear","Linear, Mipmap nearest","Linear, Mipmap linear"],type:"Attribute"},{datatype:"Enum",defaultValue:"1x",displayName:"Anisotropy",if:{MaterialType:"Physical",Roughness:{$isset:!0}},name:"RoughnessAnisotropy",options:["1x","2x","4x","8x","16x"],type:"Attribute"},{label:"Metalness",type:"Separator",if:{MaterialType:"Physical"}},{datatype:"Float",defaultValue:1,displayName:"Metalness Intensity",maxValue:1,minValue:0,name:"MetalnessIntensity",type:"Attribute",widget:"Slider",if:{MaterialType:"Physical"}},{displayName:"Metalness map",linkableTypes:["Image"],type:"Link",usageAs:"Metalness",if:{MaterialType:"Physical"}},{datatype:"Enum",defaultValue:"Repeat",displayName:"Horiz. wrapping",if:{Metalness:{$isset:!0}},name:"MetalnessWrapS",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Repeat",displayName:"Vert. wrapping",if:{Metalness:{$isset:!0}},name:"MetalnessWrapT",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear",displayName:"Mag filter",if:{Metalness:{$isset:!0}},name:"MetalnessMagFilter",options:["Linear","Nearest"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear, Mipmap linear",displayName:"Min Filter",if:{Metalness:{$isset:!0}},name:"MetalnessMinFilter",options:["Nearest","Nearest, Mipmap nearest","Nearest, Mipmap linear","Linear","Linear, Mipmap nearest","Linear, Mipmap linear"],type:"Attribute"},{datatype:"Enum",defaultValue:"1x",displayName:"Anisotropy",if:{MaterialType:"Physical",Metalness:{$isset:!0}},name:"MetalnessAnisotropy",options:["1x","2x","4x","8x","16x"],type:"Attribute"},{label:"Specular",type:"Separator",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Basic"}]}},{datatype:"Float",defaultValue:1,displayName:"Specular intensity",maxValue:1,minValue:0,name:"SpecularIntensity",type:"Attribute",widget:"Slider",if:{MaterialType:"Physical"}},{displayName:"Specular intensity map",linkableTypes:["Image"],type:"Link",usageAs:"SpecularIntensityMap",if:{MaterialType:"Physical"}},{datatype:"Enum",defaultValue:"Repeat",displayName:"Horiz. wrapping",if:{MaterialType:"Physical",SpecularIntensityMap:{$isset:!0}},name:"SpecularIntensityWrapS",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Repeat",displayName:"Vert. wrapping",if:{MaterialType:"Physical",SpecularIntensityMap:{$isset:!0}},name:"SpecularIntensityWrapT",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear",displayName:"Mag filter",if:{MaterialType:"Physical",SpecularIntensityMap:{$isset:!0}},name:"SpecularIntensityMagFilter",options:["Linear","Nearest"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear, Mipmap linear",displayName:"Min Filter",if:{MaterialType:"Physical",SpecularIntensityMap:{$isset:!0}},name:"SpecularIntensityMinFilter",options:["Nearest","Nearest, Mipmap nearest","Nearest, Mipmap linear","Linear","Linear, Mipmap nearest","Linear, Mipmap linear"],type:"Attribute"},{datatype:"Enum",defaultValue:"1x",displayName:"Anisotropy",if:{MaterialType:"Physical",SpecularIntensityMap:{$isset:!0}},name:"SpecularIntensityAnisotropy",options:["1x","2x","4x","8x","16x"],type:"Attribute"},{datatype:"Color",defaultValue:{a:255,b:255,g:255,r:255},if:{MaterialType:"Physical"},displayName:"Specular color",name:"SpecularColor",type:"Attribute"},{displayName:"Specular color map",linkableTypes:["Image"],if:{MaterialType:"Physical"},type:"Link",usageAs:"SpecularColorMap"},{datatype:"Enum",defaultValue:"Repeat",displayName:"Horiz. wrapping",if:{MaterialType:"Physical",SpecularColorMap:{$isset:!0}},name:"SpecularColorWrapS",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Repeat",displayName:"Vert. wrapping",if:{MaterialType:"Physical",SpecularColorMap:{$isset:!0}},name:"SpecularColorWrapT",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear",displayName:"Mag filter",if:{MaterialType:"Physical",SpecularColorMap:{$isset:!0}},name:"SpecularColorMagFilter",options:["Linear","Nearest"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear, Mipmap linear",displayName:"Min Filter",if:{MaterialType:"Physical",SpecularColorMap:{$isset:!0}},name:"SpecularColorMinFilter",options:["Nearest","Nearest, Mipmap nearest","Nearest, Mipmap linear","Linear","Linear, Mipmap nearest","Linear, Mipmap linear"],type:"Attribute"},{datatype:"Enum",defaultValue:"1x",displayName:"Anisotropy",if:{MaterialType:"Physical",SpecularColorMap:{$isset:!0}},name:"SpecularColorAnisotropy",options:["1x","2x","4x","8x","16x"],type:"Attribute"},{label:"Ambient occlusion",type:"Separator",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Basic"},{MaterialType:"Toon"},{MaterialType:"Lambert"},{MaterialType:"Phong"}]}},{displayName:"Ambient occlusion map",linkableTypes:["Image"],type:"Link",usageAs:"AmbientOcclusion",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Basic"},{MaterialType:"Toon"},{MaterialType:"Lambert"},{MaterialType:"Phong"}]}},{datatype:"Float",defaultValue:1,displayName:"Intensity",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Basic"},{MaterialType:"Toon"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],AmbientOcclusion:{$isset:!0}},maxValue:10,minValue:0,name:"AmbientOcclusionIntensity",type:"Attribute",widget:"Slider"},{datatype:"Enum",defaultValue:"Repeat",displayName:"Horiz. wrapping",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Basic"},{MaterialType:"Toon"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],AmbientOcclusion:{$isset:!0}},name:"AmbientOcclusionWrapS",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Repeat",displayName:"Vert. wrapping",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Basic"},{MaterialType:"Toon"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],AmbientOcclusion:{$isset:!0}},name:"AmbientOcclusionWrapT",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear",displayName:"Mag filter",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Basic"},{MaterialType:"Toon"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],AmbientOcclusion:{$isset:!0}},name:"AmbientOcclusionMagFilter",options:["Linear","Nearest"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear, Mipmap linear",displayName:"Min Filter",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Basic"},{MaterialType:"Toon"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],AmbientOcclusion:{$isset:!0}},name:"AmbientOcclusionMinFilter",options:["Nearest","Nearest, Mipmap nearest","Nearest, Mipmap linear","Linear","Linear, Mipmap nearest","Linear, Mipmap linear"],type:"Attribute"},{datatype:"Enum",defaultValue:"1x",displayName:"Anisotropy",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Basic"},{MaterialType:"Toon"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],AmbientOcclusion:{$isset:!0}},name:"AmbientOcclusionAnisotropy",options:["1x","2x","4x","8x","16x"],type:"Attribute"},{label:"Clearcoat",type:"Separator",if:{MaterialType:"Physical"}},{datatype:"Float",defaultValue:0,displayName:"Intensity",maxValue:1,minValue:0,name:"ClearcoatLevel",type:"Attribute",widget:"Slider",if:{MaterialType:"Physical"}},{displayName:"Clearcoat map",linkableTypes:["Image"],type:"Link",usageAs:"Clearcoat",if:{MaterialType:"Physical"}},{datatype:"Enum",defaultValue:"Repeat",displayName:"Horiz. wrapping",if:{MaterialType:"Physical",Clearcoat:{$isset:!0}},name:"ClearcoatWrapS",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Repeat",displayName:"Vert. wrapping",if:{MaterialType:"Physical",Clearcoat:{$isset:!0}},name:"ClearcoatWrapT",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear",displayName:"Mag filter",if:{MaterialType:"Physical",Clearcoat:{$isset:!0}},name:"ClearcoatMagFilter",options:["Linear","Nearest"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear, Mipmap linear",displayName:"Min Filter",if:{MaterialType:"Physical",Clearcoat:{$isset:!0}},name:"ClearcoatMinFilter",options:["Nearest","Nearest, Mipmap nearest","Nearest, Mipmap linear","Linear","Linear, Mipmap nearest","Linear, Mipmap linear"],type:"Attribute"},{datatype:"Enum",defaultValue:"1x",displayName:"Anisotropy",if:{MaterialType:"Physical",Clearcoat:{$isset:!0}},name:"ClearcoatAnisotropy",options:["1x","2x","4x","8x","16x"],type:"Attribute"},{displayName:"Normal map",linkableTypes:["Image"],type:"Link",usageAs:"ClearcoatNormalMap",if:{MaterialType:"Physical"}},{datatype:"Vector2d",defaultValue:{x:1,y:1},displayName:"Normal scale",if:{MaterialType:"Physical",ClearcoatNormalMap:{$isset:!0}},maxValue:10,minValue:0,name:"ClearcoatNormalScale2d",type:"Attribute",widget:"Slider"},{datatype:"Enum",defaultValue:"Repeat",displayName:"Normal H-wrapping",if:{MaterialType:"Physical",ClearcoatNormalMap:{$isset:!0}},name:"ClearcoatNormalWrapS",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Repeat",displayName:"Normal V-wrapping",if:{MaterialType:"Physical",ClearcoatNormalMap:{$isset:!0}},name:"ClearcoatNormalWrapT",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear",displayName:"Normal mag filter",if:{MaterialType:"Physical",ClearcoatNormalMap:{$isset:!0}},name:"ClearcoatNormalMagFilter",options:["Linear","Nearest"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear, Mipmap linear",displayName:"Normal min Filter",if:{MaterialType:"Physical",ClearcoatNormalMap:{$isset:!0}},name:"ClearcoatNormalMinFilter",options:["Nearest","Nearest, Mipmap nearest","Nearest, Mipmap linear","Linear","Linear, Mipmap nearest","Linear, Mipmap linear"],type:"Attribute"},{datatype:"Enum",defaultValue:"1x",displayName:"Normal Anisotropy",if:{MaterialType:"Physical",ClearcoatNormalMap:{$isset:!0}},name:"ClearcoatNormalAnisotropy",options:["1x","2x","4x","8x","16x"],type:"Attribute"},{datatype:"Float",defaultValue:0,displayName:"Roughness intensity",maxValue:1,minValue:0,name:"ClearcoatRoughness",type:"Attribute",widget:"Slider",if:{MaterialType:"Physical"}},{displayName:"Roughness map",linkableTypes:["Image"],type:"Link",usageAs:"ClearcoatRoughnessMap"},{datatype:"Enum",defaultValue:"Repeat",displayName:"Roughness H-wrapping",if:{MaterialType:"Physical",ClearcoatRoughnessMap:{$isset:!0}},name:"ClearcoatRoughnessWrapS",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Repeat",displayName:"Roughness V-wrapping",if:{MaterialType:"Physical",ClearcoatRoughnessMap:{$isset:!0}},name:"ClearcoatRoughnessWrapT",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear",displayName:"Roughness mag filter",if:{MaterialType:"Physical",ClearcoatRoughnessMap:{$isset:!0}},name:"ClearcoatRoughnessMagFilter",options:["Linear","Nearest"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear, Mipmap linear",displayName:"Roughness min Filter",if:{MaterialType:"Physical",ClearcoatRoughnessMap:{$isset:!0}},name:"ClearcoatRoughnessMinFilter",options:["Nearest","Nearest, Mipmap nearest","Nearest, Mipmap linear","Linear","Linear, Mipmap nearest","Linear, Mipmap linear"],type:"Attribute"},{datatype:"Enum",defaultValue:"1x",displayName:"Roughness Anisotropy",if:{MaterialType:"Physical",ClearcoatRoughnessMap:{$isset:!0}},name:"ClearcoatRoughnessAnisotropy",options:["1x","2x","4x","8x","16x"],type:"Attribute"},{label:"Reflections and Refractions",type:"Separator",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Basic"},{MaterialType:"Lambert"},{MaterialType:"Phong"}]}},{datatype:"Float",defaultValue:.98,displayName:"Refraction ratio",if:{$or:[{MaterialType:"Basic"},{MaterialType:"Lambert"},{MaterialType:"Phong"}]},minValue:0,maxValue:1,name:"RefractionRatio",type:"Attribute"},{datatype:"Float",defaultValue:.5,displayName:"Reflectivity",maxValue:1,minValue:0,name:"Reflectivity",type:"Attribute",widget:"Slider",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Basic"},{MaterialType:"Lambert"},{MaterialType:"Phong"}]}},{datatype:"Float",defaultValue:1.5,displayName:"Index of refraction",maxValue:2.333,minValue:1,name:"IndexOfRefraction",type:"Attribute",widget:"Slider",if:{MaterialType:"Physical"}},{label:"Environment",type:"Separator",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Basic"},{MaterialType:"Lambert"},{MaterialType:"Phong"}]}},{displayName:"Environment map",linkableTypes:["HDR Image"],type:"Link",usageAs:"Environment",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Basic"},{MaterialType:"Lambert"},{MaterialType:"Phong"}]}},{datatype:"Float",defaultValue:1,displayName:"Intensity",if:{$or:[{MaterialType:"Physical"}],Environment:{$isset:!0}},maxValue:10,minValue:0,name:"EnvironmentIntensity",type:"Attribute",widget:"Slider"},{datatype:"Enum",defaultValue:"Multiply",info:"How to combine the result of the surface's color with the environment map, if any. If mix is chosen, the .reflectivity is used to blend between the two colors.",displayName:"Surface combination",name:"SurfaceEnvironmentCombination",options:["Multiply","Mix","Add"],type:"Attribute",if:{$or:[{MaterialType:"Lambert"},{MaterialType:"Basic"},{MaterialType:"Phong"}]}},{label:"Thickness",type:"Separator",if:{MaterialType:"Physical"}},{datatype:"Float",defaultValue:0,displayName:"Thickness",minValue:0,name:"Thickness",type:"Attribute",if:{MaterialType:"Physical"}},{displayName:"Thickness map",linkableTypes:["Image"],type:"Link",usageAs:"ThicknessMap",if:{MaterialType:"Physical"}},{datatype:"Enum",defaultValue:"Repeat",displayName:"Horiz. wrapping",if:{MaterialType:"Physical",ThicknessMap:{$isset:!0}},name:"ThicknessWrapS",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Repeat",displayName:"Vert. wrapping",if:{MaterialType:"Physical",ThicknessMap:{$isset:!0}},name:"ThicknessWrapT",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear",displayName:"Mag filter",if:{MaterialType:"Physical",ThicknessMap:{$isset:!0}},name:"ThicknessMagFilter",options:["Linear","Nearest"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear, Mipmap linear",displayName:"Min Filter",if:{MaterialType:"Physical",ThicknessMap:{$isset:!0}},name:"ThicknessMinFilter",options:["Nearest","Nearest, Mipmap nearest","Nearest, Mipmap linear","Linear","Linear, Mipmap nearest","Linear, Mipmap linear"],type:"Attribute"},{datatype:"Enum",defaultValue:"1x",displayName:"Anisotropy",if:{MaterialType:"Physical",ThicknessMap:{$isset:!0}},name:"ThicknessAnisotropy",options:["1x","2x","4x","8x","16x"],type:"Attribute"},{label:"Displacement",type:"Separator",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Normal"},{MaterialType:"Toon"},{MaterialType:"Matcap"},{MaterialType:"Lambert"},{MaterialType:"Phong"}]}},{displayName:"Displacement map",linkableTypes:["Image"],type:"Link",usageAs:"Displacement",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Normal"},{MaterialType:"Toon"},{MaterialType:"Matcap"},{MaterialType:"Lambert"},{MaterialType:"Phong"}]}},{datatype:"Float",defaultValue:.1,displayName:"Scale",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Normal"},{MaterialType:"Toon"},{MaterialType:"Matcap"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],Displacement:{$isset:!0}},maxValue:10,minValue:0,name:"DisplacementScale",type:"Attribute",widget:"Slider"},{datatype:"Float",defaultValue:0,displayName:"Bias",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Normal"},{MaterialType:"Toon"},{MaterialType:"Matcap"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],Displacement:{$isset:!0}},name:"DisplacementBias",type:"Attribute"},{datatype:"Enum",defaultValue:"Repeat",displayName:"Horiz. wrapping",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Normal"},{MaterialType:"Toon"},{MaterialType:"Matcap"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],Displacement:{$isset:!0}},name:"DisplacementWrapS",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Repeat",displayName:"Vert. wrapping",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Normal"},{MaterialType:"Toon"},{MaterialType:"Matcap"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],Displacement:{$isset:!0}},name:"DisplacementWrapT",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear",displayName:"Mag filter",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Normal"},{MaterialType:"Toon"},{MaterialType:"Matcap"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],Displacement:{$isset:!0}},name:"DisplacementMagFilter",options:["Linear","Nearest"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear, Mipmap linear",displayName:"Min Filter",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Normal"},{MaterialType:"Toon"},{MaterialType:"Matcap"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],Displacement:{$isset:!0}},name:"DisplacementMinFilter",options:["Nearest","Nearest, Mipmap nearest","Nearest, Mipmap linear","Linear","Linear, Mipmap nearest","Linear, Mipmap linear"],type:"Attribute"},{datatype:"Enum",defaultValue:"1x",displayName:"Anisotropy",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Normal"},{MaterialType:"Toon"},{MaterialType:"Matcap"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],Displacement:{$isset:!0}},name:"DisplacementAnisotropy",options:["1x","2x","4x","8x","16x"],type:"Attribute"},{label:"Lightmaps",type:"Separator",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Basic"},{MaterialType:"Toon"},{MaterialType:"Lambert"},{MaterialType:"Phong"}]}},{displayName:"Light map",linkableTypes:["Image"],type:"Link",usageAs:"LightMap",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Basic"},{MaterialType:"Toon"},{MaterialType:"Lambert"},{MaterialType:"Phong"}]}},{datatype:"Float",defaultValue:1,displayName:"Intensity",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Basic"},{MaterialType:"Toon"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],LightMap:{$isset:!0}},maxValue:100,minValue:0,name:"LightMapIntensity",type:"Attribute",widget:"Slider"},{datatype:"Enum",defaultValue:"Repeat",displayName:"Horiz. wrapping",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Basic"},{MaterialType:"Toon"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],LightMap:{$isset:!0}},name:"LightMapWrapS",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Repeat",displayName:"Vert. wrapping",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Basic"},{MaterialType:"Toon"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],LightMap:{$isset:!0}},name:"LightMapWrapT",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear",displayName:"Mag filter",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Basic"},{MaterialType:"Toon"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],LightMap:{$isset:!0}},name:"LightMapMagFilter",options:["Linear","Nearest"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear, Mipmap linear",displayName:"Min Filter",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Basic"},{MaterialType:"Toon"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],LightMap:{$isset:!0}},name:"LightMapMinFilter",options:["Nearest","Nearest, Mipmap nearest","Nearest, Mipmap linear","Linear","Linear, Mipmap nearest","Linear, Mipmap linear"],type:"Attribute"},{datatype:"Enum",defaultValue:"1x",displayName:"Anisotropy",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Basic"},{MaterialType:"Toon"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],LightMap:{$isset:!0}},name:"LightMapAnisotropy",options:["1x","2x","4x","8x","16x"],type:"Attribute"},{label:"Specular map options",type:"Separator",if:{$or:[{MaterialType:"Basic"},{MaterialType:"Lambert"},{MaterialType:"Phong"}]}},{datatype:"Float",defaultValue:30,displayName:"Shininess",minValue:0,name:"Shininess",type:"Attribute",widget:"Slider",if:{$or:[{MaterialType:"Phong"}]}},{datatype:"Color",defaultValue:{a:255,b:255,g:255,r:255},if:{MaterialType:"Phong"},displayName:"Specular color",name:"SpecularColor",type:"Attribute"},{displayName:"Specular map",linkableTypes:["Image"],if:{$or:[{MaterialType:"Basic"},{MaterialType:"Lambert"},{MaterialType:"Phong"}]},type:"Link",usageAs:"SpecularMap"},{datatype:"Enum",defaultValue:"Repeat",displayName:"Horiz. wrapping",if:{$or:[{MaterialType:"Basic"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],SpecularMap:{$isset:!0}},name:"SpecularWrapS",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Repeat",displayName:"Vert. wrapping",if:{$or:[{MaterialType:"Basic"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],SpecularMap:{$isset:!0}},name:"SpecularWrapT",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear",displayName:"Mag filter",if:{$or:[{MaterialType:"Basic"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],SpecularMap:{$isset:!0}},name:"SpecularMagFilter",options:["Linear","Nearest"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear, Mipmap linear",displayName:"Min Filter",if:{$or:[{MaterialType:"Basic"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],SpecularMap:{$isset:!0}},name:"SpecularMinFilter",options:["Nearest","Nearest, Mipmap nearest","Nearest, Mipmap linear","Linear","Linear, Mipmap nearest","Linear, Mipmap linear"],type:"Attribute"},{datatype:"Enum",defaultValue:"1x",displayName:"Anisotropy",if:{$or:[{MaterialType:"Basic"},{MaterialType:"Lambert"},{MaterialType:"Phong"}],SpecularMap:{$isset:!0}},name:"SpecularAnisotropy",options:["1x","2x","4x","8x","16x"],type:"Attribute"},{label:"Transmission",type:"Separator",if:{MaterialType:"Physical"}},{datatype:"Float",defaultValue:0,displayName:"Intensity",maxValue:1,minValue:0,name:"Transmission",type:"Attribute",widget:"Slider",if:{MaterialType:"Physical"}},{displayName:"Transmission map",linkableTypes:["Image"],type:"Link",usageAs:"TransmissionMap",if:{MaterialType:"Physical"}},{datatype:"Enum",defaultValue:"Repeat",displayName:"Horiz. wrapping",if:{MaterialType:"Physical",TransmissionMap:{$isset:!0}},name:"TransmissionWrapS",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Repeat",displayName:"Vert. wrapping",if:{MaterialType:"Physical",TransmissionMap:{$isset:!0}},name:"TransmissionWrapT",options:["Repeat","Clamp to edge","Mirrored repeat"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear",displayName:"Mag filter",if:{MaterialType:"Physical",TransmissionMap:{$isset:!0}},name:"TransmissionMagFilter",options:["Linear","Nearest"],type:"Attribute"},{datatype:"Enum",defaultValue:"Linear, Mipmap linear",displayName:"Min Filter",if:{MaterialType:"Physical",TransmissionMap:{$isset:!0}},name:"TransmissionMinFilter",options:["Nearest","Nearest, Mipmap nearest","Nearest, Mipmap linear","Linear","Linear, Mipmap nearest","Linear, Mipmap linear"],type:"Attribute"},{datatype:"Enum",defaultValue:"1x",displayName:"Anisotropy",if:{MaterialType:"Physical",TransmissionMap:{$isset:!0}},name:"TransmissionAnisotropy",options:["1x","2x","4x","8x","16x"],type:"Attribute"},{label:"Blending",type:"Separator"},{datatype:"Enum",defaultValue:"Normal",displayName:"Mode",name:"Blending",options:["None","Normal","Additive","Subtractive","Multiply","Custom"],type:"Attribute"},{datatype:"Enum",defaultValue:"Source alpha",displayName:"Source",name:"BlendSrc",options:["Zero","One","Source color","One minus source color","Source alpha","One minus source alpha","Destination alpha","One minus destination alpha","Destination color","One minus destination color","Source alpha saturate"],type:"Attribute",if:{Blending:"Custom"}},{datatype:"Enum",defaultValue:"One minus source alpha",displayName:"Destination",name:"BlendDest",options:["Zero","One","Source color","One minus source color","Source alpha","One minus source alpha","Destination alpha","One minus destination alpha","Destination color","One minus destination color"],type:"Attribute",if:{Blending:"Custom"}},{datatype:"Enum",defaultValue:"Add",displayName:"Equation",name:"BlendEquation",options:["Add","Subtract","Reverse subtract","Min","Max"],type:"Attribute",if:{Blending:"Custom"}},{label:"Depth test",type:"Separator"},{datatype:"Boolean",defaultValue:!0,displayName:"Active",name:"DepthTest",type:"Attribute"},{datatype:"Boolean",defaultValue:!0,displayName:"Write",if:{DepthTest:!0},name:"DepthWrite",type:"Attribute"},{datatype:"Enum",defaultValue:"Less/equal",displayName:"Mode",if:{DepthTest:!0},name:"DepthMode",options:["Never","Always","Less","Less/equal","Greater/equal","Greater","Not equal"],type:"Attribute"},{label:"Culling",type:"Separator"},{datatype:"Enum",defaultValue:"Back",displayName:"Mode",name:"Culling",options:["Front","Back","Off"],type:"Attribute"},{label:"Flat shading",type:"Separator",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Normal"},{MaterialType:"Matcap"},{MaterialType:"Lambert"},{MaterialType:"Phong"}]}},{datatype:"Boolean",defaultValue:!1,displayName:"Active",name:"FlatShading",type:"Attribute",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Normal"},{MaterialType:"Matcap"},{MaterialType:"Lambert"},{MaterialType:"Phong"}]}},{label:"Wireframe",type:"Separator",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Basic"},{MaterialType:"Normal"},{MaterialType:"Toon"},{MaterialType:"Shader"},{MaterialType:"Lambert"},{MaterialType:"Phong"}]}},{datatype:"Boolean",defaultValue:!1,displayName:"Wireframe",name:"Wireframe",type:"Attribute",if:{$or:[{MaterialType:"Physical"},{MaterialType:"Basic"},{MaterialType:"Normal"},{MaterialType:"Toon"},{MaterialType:"Shader"},{MaterialType:"Lambert"},{MaterialType:"Phong"}]}}],name:"Material",updateRequiresThumbRefresh:!0,creatableEmpty:!0},{_id:{$oid:"5e6a1ad189707feef9173394"},contentTypes:["model/obj","model/gltf-binary","model/vnd.usdz+zip","model/draco","model/ply","model/fbx"],fieldSets:[],fields:[{linkableTypes:["Material"],type:"Link",usageAs:"Material"},{doesNotAffectThumbnail:!0,linkableTypes:["Mesh"],loadingManager:"ignore",preload:!1,type:"Link",usageAs:"USDZ"},{doesNotAffectThumbnail:!0,linkableTypes:["Mesh"],loadingManager:"ignore",preload:!1,type:"Link",usageAs:"GLB"},{datatype:"Vector3d",defaultValue:{x:0,y:0,z:0},name:"Pivot",type:"Attribute"},{datatype:"Transform",defaultValue:{position:{x:0,y:0,z:0},rotation:{w:1,x:0,y:0,z:0},scale:{x:1,y:1,z:1}},name:"DefaultTransform",displayName:"Default transform",type:"Attribute"}],name:"Mesh",updateRequiresThumbRefresh:!0,creatableEmpty:!1},{_id:{$oid:"5e6a1ad189707feef9173396"},contentTypes:[""],fields:[{label:"Camera & Composition",type:"Separator"},{datatype:"Enum",defaultValue:"Automatic user controllable camera",displayName:"Camera mode",info:"Camera to render during playback. The main camera is the one with the 'mainCamera' Tag or if only one camera exists, that is the one. Composer setting will render whatever the composition defines.",name:"CameraMode",options:["Automatic user controllable camera","Main camera","Composer"],type:"Attribute"},{linkableTypes:["Composition"],type:"Link",if:{CameraMode:"Composer"},usageAs:"Composition",mandatory:!0},{label:"Environment & Background",type:"Separator"},{datatype:"Enum",defaultValue:"None",displayName:"Background mode",name:"BackgroundMode",options:["None","Color","Image","Environment map","Shader"],type:"Attribute"},{datatype:"Float",defaultValue:0,displayName:"Background blurriness",if:{BackgroundMode:"Environment map"},maxValue:1,minValue:0,name:"BackgroundBlurriness",type:"Attribute",widget:"Slider"},{datatype:"Float",defaultValue:1,displayName:"Background intensity",if:{$or:[{BackgroundMode:"Image"},{BackgroundMode:"Environment map"}]},maxValue:10,minValue:0,name:"BackgroundIntensity",type:"Attribute",widget:"Slider"},{displayName:"Background shader",if:{BackgroundMode:"Shader"},linkableTypes:["Background Shader"],type:"Link",usageAs:"BackgroundShader",mandatory:!0},{displayName:"Background image",if:{BackgroundMode:"Image"},linkableTypes:["Image"],type:"Link",usageAs:"Background",mandatory:!0},{datatype:"Color",defaultValue:{a:255,b:255,g:255,r:255},displayName:"Background color",if:{BackgroundMode:"Color"},name:"BackgroundColor",type:"Attribute"},{displayName:"Environment map",linkableTypes:["HDR Image"],type:"Link",usageAs:"Environment"},{datatype:"Float",defaultValue:1,displayName:"Environment intensity",maxValue:10,minValue:0,name:"EnvironmentIntensity",type:"Attribute",widget:"Slider"},{datatype:"Color",defaultValue:{a:255,b:0,g:0,r:0},displayName:"Clear color",name:"ClearColor",type:"Attribute"},{label:"Rendering",type:"Separator",collapsed:!1},{datatype:"Enum",defaultValue:"PCF Shadow Map",displayName:"Shadow type",name:"ShadowType",options:["Basic Shadow Map","PCF Shadow Map","VSM Shadow Map"],type:"Attribute"}],name:"Scene",updateRequiresThumbRefresh:!0,inherits:"Prefab",creatableEmpty:!0},{_id:{$oid:"5e6a1ad189707fcef4252336"},contentTypes:[""],fieldSets:[{fields:[{label:"3D Object",type:"Separator"},{datatype:"Boolean",defaultValue:!0,displayName:"Active",info:"Indicates if the 3D object is currently active or inactive. When set to true, the object is active.",name:"Active",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Static",info:"A Boolean attribute indicating whether the 3D object is static or not. Static objects can and will never be transformed during runtime.",name:"Static",type:"Attribute"},{datatype:"String",defaultValue:"",displayName:"Name",info:"Specifies the name of the 3D object. This is used for identification and reference in the scene.",name:"Name",type:"Attribute"},{datatype:"Transform",defaultValue:{position:{x:0,y:0,z:0},rotation:{w:1,x:0,y:0,z:0},scale:{x:1,y:1,z:1}},info:"Describes the object's transformation attributes including its position, rotation, and scale in the 3D space.",name:"Transform",type:"Attribute"},{type:"Label",text:"Changing scale in transforms for physics enabled objects is not recommended. Not all objects fully support it. Keep it at least uniform!",labelType:"warning",if:{"PhysicsEnabled?":!0,$or:[{"Transform.scale.x":{$not:1}},{"Transform.scale.y":{$not:1}},{"Transform.scale.z":{$not:1}}]}},{datatype:"Layers",defaultValue:[0],info:"Defines the layers that the 3D object is part of. Layers are used for managing object interactions and visibility in the scene.",name:"Layers",type:"Attribute"},{datatype:"Tags",defaultValue:[],info:"Lists tags associated with the 3D object. Tags are useful for categorizing and searching objects in the scene.",name:"Tags",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Receive shadow",info:"Determines whether the object can receive shadows from other objects. Set to true if the object should display shadows cast upon it.",name:"ReceiveShadow",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Cast shadow",info:"Controls whether the object casts shadows in the presence of light sources. Set to true to enable shadow casting from this object.",name:"CastShadow",type:"Attribute"},{datatype:"Boolean",defaultValue:!0,displayName:"Rendered",info:"Indicates if the 3D object is being rendered.",name:"Rendered",type:"Attribute"}],name:"3dObjectDefault"},{fields:[{label:"3D Object",type:"Separator"},{datatype:"Boolean",defaultValue:!0,displayName:"Active",info:"A Boolean attribute indicating whether the 3D object is active or not. When set to true, the object is considered active in the scene.",name:"Active",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Static",info:"A Boolean attribute indicating whether the 3D object is static or not. Static objects can and will never be transformed during runtime.",name:"Static",type:"Attribute"},{datatype:"String",defaultValue:"",displayName:"Name",info:"A string attribute representing the name of the 3D object. It is used to identify and reference the object within the scene.",name:"Name",type:"Attribute"},{datatype:"Transform",defaultValue:{position:{x:0,y:0,z:0},rotation:{w:1,x:0,y:0,z:0},scale:{x:1,y:1,z:1}},info:"Specifies the transformation properties of the 3D object, including its position, rotation, and scale in the scene.",name:"Transform",type:"Attribute"},{datatype:"Layers",defaultValue:[0],info:"Determines the layers the 3D object belongs to. Layers are used to organize objects in the scene for various purposes like rendering and interaction.",name:"Layers",type:"Attribute"},{datatype:"Tags",defaultValue:[],info:"A list of tags associated with the 3D object. Tags are used for categorizing and identifying objects for scripting and scene management.",name:"Tags",type:"Attribute"},{datatype:"Boolean",defaultValue:!0,displayName:"Rendered",info:"Indicates if the 3D object is being rendered.",name:"Rendered",type:"Attribute"}],name:"3dObjectNoShadows"},{fields:[{label:"Physics",type:"Separator"},{datatype:"Boolean",defaultValue:!1,displayName:"Physics enabled",info:"A Boolean attribute that determines whether physics properties are applied to the object. Disabling it turns off physics calculations.",name:"PhysicsEnabled",type:"Attribute"},{datatype:"Enum",defaultValue:"Rigid body",displayName:"Body type",if:{PhysicsEnabled:!0},name:"BodyType",options:["Rigid body","Soft body","Ghost object"],type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Separate subobjects",if:{BodyType:"Rigid body",PhysicsEnabled:!0},info:"When adding all subobjects of the mesh separately, they will all act individually. We lose however also the possibility to control and watch them as a single object. The configured mass will be distributed among all subobjects",name:"SeparateSubobjects",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Mass",if:{BodyType:{$not:"Ghost object"},PhysicsEnabled:!0},info:"Specifies the mass of the object as a float value. The mass must be a non-negative value.",minValue:0,name:"Mass",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Pressure",if:{BodyType:"Soft body",PhysicsEnabled:!0},info:"Specifies the pressure of the soft body as a float value. The pressure must be a non-negative value.",minValue:0,name:"Pressure",type:"Attribute"},{datatype:"Float",defaultValue:.01,displayName:"Damping",if:{BodyType:"Soft body",PhysicsEnabled:!0},info:"Specifies the damping of the soft body.",minValue:0,name:"Damping",type:"Attribute"},{datatype:"Float",defaultValue:.04,displayName:"Margin",if:{BodyType:{$not:"Ghost object"},PhysicsEnabled:!0},info:"Defines the margin of the object for physics calculations as a float value. The margin is a non-negative value.",minValue:0,name:"Margin",type:"Attribute"},{datatype:"Float",defaultValue:.1,displayName:"Restitution",if:{BodyType:{$not:"Ghost object"},PhysicsEnabled:!0},info:"Determines the restitution (bounciness) of the object. It's a float value affecting how the object bounces upon impact.",name:"Restitution",type:"Attribute"},{datatype:"Float",defaultValue:.1,displayName:"Friction",if:{BodyType:{$not:"Ghost object"},PhysicsEnabled:!0},info:"Sets the friction coefficient of the object. It's a float value, affecting how the object slides against other surfaces.",name:"Friction",type:"Attribute"},{datatype:"Float",defaultValue:.1,displayName:"Spinning friction",if:{BodyType:{$not:"Ghost object"},PhysicsEnabled:!0},info:"Defines the spinning friction of the object as a float value, affecting the object's rotational resistance.",name:"SpinningFriction",type:"Attribute"},{datatype:"Float",defaultValue:.1,displayName:"Rolling friction",if:{BodyType:{$not:"Ghost object"},PhysicsEnabled:!0},info:"Specifies the rolling friction of the object. It's a float value that influences how the object rolls over surfaces.",name:"RollingFriction",type:"Attribute"},{datatype:"Float",defaultValue:0,displayName:"Linear damping",if:{BodyType:"Rigid body",PhysicsEnabled:!0},info:"Sets the linear damping.",name:"LinearDamping",type:"Attribute"},{datatype:"Float",defaultValue:0,displayName:"Angular damping",if:{BodyType:"Rigid body",PhysicsEnabled:!0},info:"Sets the angular damping.",name:"AngularDamping",type:"Attribute"},{datatype:"Vector3d",defaultValue:{x:1,y:1,z:1},displayName:"Linear factor",if:{BodyType:"Rigid body",PhysicsEnabled:!0},info:"A Vector3d value that defines the linear factor of the object in terms of x, y, and z axes, controlling how the object moves linearly.",name:"LinearFactor",type:"Attribute"},{datatype:"Vector3d",defaultValue:{x:0,y:0,z:0},displayName:"Linear velocity",if:{BodyType:"Rigid body",PhysicsEnabled:!0},info:"Defines the object's linear velocity using a Vector3d value, representing the velocity along the x, y, and z axes.",name:"LinearVelocity",type:"Attribute"},{datatype:"Vector3d",defaultValue:{x:1,y:1,z:1},displayName:"Angular factor",if:{BodyType:"Rigid body",PhysicsEnabled:!0},info:"A Vector3d attribute that specifies the angular factor of the object, influencing the object's rotation around each axis.",name:"AngularFactor",type:"Attribute"},{datatype:"Vector3d",defaultValue:{x:0,y:0,z:0},displayName:"Angular velocity",if:{BodyType:"Rigid body",PhysicsEnabled:!0},info:"Sets the angular velocity of the object using a Vector3d value, affecting the object's rotational speed.",name:"AngularVelocity",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Is kinematic",if:{BodyType:"Rigid body",PhysicsEnabled:!0,SeparateSubobjects:!1},info:"A Boolean attribute that makes the object kinematic when true, meaning it will not be affected by physics but can still affect other objects.",name:"IsKinematic",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Disable deactivation",if:{BodyType:{$not:"Ghost object"},PhysicsEnabled:!0,$or:[{IsKinematic:!1},{BodyType:"Soft body"}]},info:"When set to true, object will be simulated in physics forever. Otherwise it will be deactivated when not moving anymore",name:"DisableDeactivation",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Watch collisions",if:{BodyType:{$not:"Ghost object"},PhysicsEnabled:!0,SeparateSubobjects:!1},info:"When set to true, enables monitoring of collisions involving the object.",name:"WatchCollisions",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Report contact points",if:{BodyType:{$not:"Ghost object"},PhysicsEnabled:!0,SeparateSubobjects:!1},info:"If set to true, collision events will contain the exact contact points. Only enable if you really need it as it costs performance.",name:"ReportContactPoints",type:"Attribute"},{datatype:"Boolean",defaultValue:!0,displayName:"Filter potential collisions",if:{BodyType:{$not:"Ghost object"},PhysicsEnabled:!0,SeparateSubobjects:!1},info:"The physics engine might report collisions without contact points in cases where objects get close. Filter these out by setting this.",name:"FilterPotentialCollisions",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Watch linear velocity",if:{BodyType:{$not:"Ghost object"},PhysicsEnabled:!0,SeparateSubobjects:!1},info:"Enables the tracking of changes in the object's linear velocity when set to true.",name:"WatchLinearVelocity",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Watch angular velocity",if:{BodyType:{$not:"Ghost object"},PhysicsEnabled:!0,SeparateSubobjects:!1},info:"Allows for the monitoring of changes in the object's angular velocity when enabled.",name:"WatchAngularVelocity",type:"Attribute"},{if:{BodyType:{$not:"Soft body"},PhysicsEnabled:!0},label:"Collider",type:"Separator"},{datatype:"Enum",defaultValue:"Self",displayName:"Collider type",if:{BodyType:{$not:"Soft body"},PhysicsEnabled:!0},name:"ColliderType",options:["Self","Bounding Box","Bounding Sphere","Bounding Cylinder","Capsule","Convex Hull","Custom Mesh"],type:"Attribute"},{datatype:"Enum",defaultValue:"Derive from mesh",displayName:"Capsule size",if:{BodyType:{$not:"Soft body"},ColliderType:"Capsule",PhysicsEnabled:!0},name:"CapsuleSize",options:["Derive from mesh","Manual"],type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Capsule height",if:{BodyType:{$not:"Soft body"},ColliderType:"Capsule",CapsuleSize:"Manual",PhysicsEnabled:!0},name:"CapsuleHeight",minValue:0,type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Capsule radius",if:{BodyType:{$not:"Soft body"},ColliderType:"Capsule",CapsuleSize:"Manual",PhysicsEnabled:!0},name:"CapsuleRadius",minValue:0,type:"Attribute"},{displayName:"Collider mesh",if:{BodyType:{$not:"Soft body"},ColliderType:"Custom Mesh",PhysicsEnabled:!0},linkableTypes:["Mesh","Mesh Collection"],type:"Link",usageAs:"ColliderMesh",mandatory:!0},{datatype:"Enum",defaultValue:"",displayName:"Collection entry",if:{BodyType:{$not:"Soft body"},ColliderType:"Custom Mesh",PhysicsEnabled:!0,$optionsexist:!0},name:"ColliderMeshCollectionEntry",options:[],type:"Attribute"}],name:"Physics"},{fields:[{datatype:"Enum",defaultValue:"Single",displayName:"Source type",name:"SourceType",options:["Single","Collection"],type:"Attribute"},{displayName:"Audio item",if:{SourceType:"Single"},linkableTypes:["Audio"],type:"Link",usageAs:"AudioItem"},{displayName:"Audio collection",if:{SourceType:"Collection"},linkableTypes:["Audio Collection"],type:"Link",usageAs:"AudioCollectionItem"},{datatype:"Enum",defaultValue:"",displayName:"Collection entry",if:{SourceType:"Collection"},name:"AudioCollectionEntry",options:[],type:"Attribute"}],name:"AudioLink"},{fields:[{displayName:"Mesh item",linkableTypes:["Mesh","Mesh Collection"],type:"Link",usageAs:"Mesh",mandatory:!0},{datatype:"Enum",defaultValue:"",displayName:"Collection entry",if:{$optionsexist:!0},name:"MeshCollectionEntry",options:[],type:"Attribute"}],name:"MeshLink"}],fields:[{childTypes:[{fields:[{name:"3dObjectDefault",type:"FieldSet"},{label:"Mesh specific fields",type:"Separator"},{name:"MeshLink",type:"FieldSet"},{datatype:"Enum",defaultValue:"Pivot",name:"OriginMode",displayName:"Origin mode",if:{$or:[{MeshCollectionEntry:{$isset:!0}},{Mesh:{$isset:!0}}]},options:["Pivot","Center","Custom"],type:"Attribute"},{name:"CustomPivot",displayName:"Custom Pivot",type:"Attribute",datatype:"Vector3d",if:{OriginMode:"Custom"},defaultValue:{x:0,y:0,z:0}},{datatype:"Animations",defaultValue:[],displayName:"Animations",if:{$or:[{MeshCollectionEntry:{$isset:!0}},{Mesh:{$isset:!0}}]},name:"Animations",type:"Attribute"},{name:"Physics",type:"FieldSet"}],mainItemField:"Mesh",typeName:"Mesh"},{fields:[{name:"3dObjectDefault",type:"FieldSet"},{label:"ScriptedMesh specific fields",type:"Separator"},{displayName:"Material(s)",linkableTypes:["Material","Material Collection"],type:"Link",usageAs:"Materials"},{datatype:"Boolean",defaultValue:!1,displayName:"Indexed",info:"Indicates if the geometry buffer is indexed.",name:"Indexed",type:"Attribute"},{datatype:"Boolean",defaultValue:!0,displayName:"Have positions",info:"Add a position attribute to the mesh.",name:"HavePositions",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Have normals",info:"Add a normal attribute to the mesh.",name:"HaveNormals",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Have colors",info:"Add a color attribute to the mesh.",name:"HaveColors",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Have UV Coords",info:"Add a UV texture coordinate attribute to the mesh.",name:"HaveUVs",type:"Attribute"},{name:"Physics",type:"FieldSet"}],typeName:"ScriptedMesh"},{fields:[{name:"3dObjectDefault",type:"FieldSet"},{label:"Splats specific fields",type:"Separator"},{linkableTypes:["Gaussian Splats"],type:"Link",usageAs:"Splats",mandatory:!0}],mainItemField:"Splats",typeName:"GaussianSplats"},{fields:[{name:"3dObjectDefault",type:"FieldSet"},{label:"Prefab specific fields",type:"Separator"},{linkableTypes:["Scene","Prefab"],type:"Link",usageAs:"Prefab",mandatory:!0}],mainItemField:"Prefab",typeName:"Prefab"},{fields:[{name:"3dObjectDefault",type:"FieldSet"},{label:"Points specific fields",type:"Separator"},{name:"MeshLink",type:"FieldSet"}],mainItemField:"Mesh",typeName:"Points"},{fields:[{name:"3dObjectNoShadows",type:"FieldSet"},{label:"Lightsource specific fields",type:"Separator"},{datatype:"Enum",defaultValue:"Point",name:"Type",options:["Point","Directional","Ambient","Hemisphere","Spot"],type:"Attribute"},{datatype:"Color",defaultValue:{a:255,b:255,g:255,r:255},name:"Color",type:"Attribute"},{datatype:"Color",defaultValue:{a:255,b:64,g:64,r:64},displayName:"Ground color (Hemisphere)",if:{Type:"Hemisphere"},name:"GroundColor",type:"Attribute"},{datatype:"Float",defaultValue:10,minValue:0,name:"Intensity",type:"Attribute"},{datatype:"Float",defaultValue:100,if:{$or:[{Type:"Spot"},{Type:"Point"}]},minValue:0,name:"Distance",type:"Attribute"},{datatype:"Float",defaultValue:2,if:{$or:[{Type:"Spot"},{Type:"Point"}]},minValue:1,name:"Decay",type:"Attribute"},{datatype:"Float",defaultValue:.5,displayName:"Angle",if:{Type:"Spot"},maxValue:1.57,minValue:0,name:"Angle",type:"Attribute"},{datatype:"Float",defaultValue:0,displayName:"Penumbra",if:{Type:"Spot"},maxValue:1,minValue:0,name:"Penumbra",type:"Attribute"},{datatype:"Node",defaultValue:null,displayName:"Target",if:{$or:[{Type:"Spot"},{Type:"Directional"}]},name:"Target",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Cast shadows",name:"CastShadows",type:"Attribute",if:{$or:[{Type:"Point"},{Type:"Directional"},{Type:"Spot"}]}},{datatype:"Float",defaultValue:0,displayName:"Shadow bias",if:{CastShadows:!0,$or:[{Type:"Point"},{Type:"Directional"},{Type:"Spot"}]},maxValue:1,minValue:-1,name:"ShadowBias",type:"Attribute",widget:"Slider"},{datatype:"Enum",defaultValue:512,displayName:"Shadow size",if:{CastShadows:!0,$or:[{Type:"Point"},{Type:"Directional"},{Type:"Spot"}]},name:"ShadowSize",options:[128,256,512,1024,2048],type:"Attribute"},{datatype:"Float",defaultValue:.5,displayName:"Shadow camera near",if:{CastShadows:!0,$or:[{Type:"Point"},{Type:"Directional"},{Type:"Spot"}]},minValue:0,name:"ShadowCameraNear",type:"Attribute"},{datatype:"Float",defaultValue:500,displayName:"Shadow camera far",if:{CastShadows:!0,$or:[{Type:"Point"},{Type:"Directional"},{Type:"Spot"}]},minValue:0,name:"ShadowCameraFar",type:"Attribute"},{datatype:"Float",defaultValue:10,displayName:"Shadow area width",if:{CastShadows:!0,Type:"Directional"},minValue:1,name:"ShadowAreaWidth",type:"Attribute"},{datatype:"Float",defaultValue:10,displayName:"Shadow area height",if:{CastShadows:!0,Type:"Directional"},minValue:1,name:"ShadowAreaHeight",type:"Attribute"},{datatype:"Float",defaultValue:4,displayName:"Shadow radius",minValue:0,name:"ShadowRadius",type:"Attribute",if:{CastShadows:!0,$or:[{Type:"Point"},{Type:"Directional"},{Type:"Spot"}]}},{datatype:"Integer",defaultValue:8,displayName:"VSM blur samples",maxValue:32,minValue:1,name:"VsmBlurSamples",type:"Attribute",if:{CastShadows:!0,$or:[{Type:"Point"},{Type:"Directional"},{Type:"Spot"}]}}],typeName:"Lightsource"},{fields:[{label:"3D Object Fields",type:"Separator"},{datatype:"Boolean",defaultValue:!0,displayName:"Active",info:"Indicates if the 3D object is currently active or inactive. When set to true, the object is active.",name:"Active",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Static",info:"A Boolean attribute indicating whether the 3D object is static or not. Static objects can and will never be transformed during runtime.",name:"Static",type:"Attribute"},{datatype:"String",defaultValue:"",displayName:"Name",info:"Specifies the name of the 3D object. This is used for identification and reference in the scene.",name:"Name",type:"Attribute"},{datatype:"Transform",defaultValue:{position:{x:0,y:0,z:0},rotation:{w:1,x:0,y:0,z:0},scale:{x:1,y:1,z:1}},info:"Describes the object's transformation attributes including its position, rotation, and scale in the 3D space.",name:"Transform",type:"Attribute"},{datatype:"Layers",defaultValue:[],name:"Cullmode",info:"Defines the layers that are not visible to the camera.",displayName:"Cull mode",type:"Attribute"},{datatype:"Tags",defaultValue:[],info:"Lists tags associated with the 3D object. Tags are useful for categorizing and searching objects in the scene.",name:"Tags",type:"Attribute"},{label:"Camera specific fields",type:"Separator"},{datatype:"Enum",defaultValue:"Perspective",name:"Type",options:["Perspective","Orthographic"],type:"Attribute"},{datatype:"Float",defaultValue:60,displayName:"Field of view",if:{Type:"Perspective"},maxValue:360,minValue:1,name:"FieldOfView",type:"Attribute"},{datatype:"Float",defaultValue:-1,displayName:"Left",if:{Type:"Orthographic"},name:"Left",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Right",if:{Type:"Orthographic"},name:"Right",type:"Attribute"},{datatype:"Float",defaultValue:-1,displayName:"Top",if:{Type:"Orthographic"},name:"Top",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Bottom",if:{Type:"Orthographic"},name:"Bottom",type:"Attribute"},{datatype:"Float",defaultValue:.1,displayName:"Near plane",minValue:0,name:"NearPlane",type:"Attribute"},{datatype:"Float",defaultValue:1e3,displayName:"Far plane",minValue:0,name:"FarPlane",type:"Attribute"},{datatype:"Enum",defaultValue:"Free",name:"Mode",options:["Free","Look at"],type:"Attribute"},{datatype:"Vector3d",defaultValue:{x:0,y:0,z:0},if:{Mode:"Look at"},name:"LookAt",type:"Attribute"},{datatype:"Vector3d",defaultValue:{x:0,y:1,z:0},displayName:"Up vector",if:{Mode:"Look at"},name:"UpVector",type:"Attribute"}],typeName:"Camera"},{fields:[{name:"3dObjectNoShadows",type:"FieldSet"}],typeName:"Group"},{fields:[{name:"3dObjectDefault",type:"FieldSet"},{label:"Box specific fields",type:"Separator"},{linkableTypes:["Material"],type:"Link",usageAs:"Material"},{datatype:"Vector3d",defaultValue:{x:1,y:1,z:1},name:"Size",type:"Attribute"},{datatype:"Vector3d",defaultValue:{x:1,y:1,z:1},name:"Segments",type:"Attribute"},{datatype:"Vector2d",defaultValue:{x:1,y:1},displayName:"UV Scale",name:"UVScale",type:"Attribute"},{name:"Physics",type:"FieldSet"}],typeName:"Box"},{fields:[{name:"3dObjectDefault",type:"FieldSet"},{label:"GridMap specific fields",type:"Separator"},{linkableTypes:["GridMap"],type:"Link",usageAs:"GridMap"},{name:"Physics",type:"FieldSet"}],typeName:"GridMap"},{fields:[{name:"3dObjectDefault",type:"FieldSet"},{label:"Ribbon specific fields",type:"Separator"},{linkableTypes:["Material"],type:"Link",usageAs:"Material"},{datatype:"Integer",defaultValue:16,displayName:"Ring vertex count",minValue:3,maxValue:256,name:"RingVertexCount",type:"Attribute"},{datatype:"Integer",defaultValue:16,displayName:"Path steps",minValue:2,name:"PathStepCount",type:"Attribute"},{datatype:"Float",defaultValue:0,displayName:"Start time",minValue:0,name:"StartTime",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"End time",minValue:0,name:"EndTime",type:"Attribute"},{datatype:"Vector2d",defaultValue:{x:1,y:1},displayName:"UV Scale",name:"UVScale",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Closed",name:"Closed",type:"Attribute"},{datatype:"Boolean",defaultValue:!0,displayName:"Add caps",name:"AddCaps",if:{Closed:!1},type:"Attribute"},{datatype:"Boolean",defaultValue:!0,displayName:"Vertex colors",name:"VertexColors",type:"Attribute"},{label:"Ring formulas",type:"Separator",presets:[{name:"Circle",fields:{RingFormulaX:"cos(theta) * 0.5",RingFormulaY:"0",RingFormulaZ:"sin(theta) * 0.5"}}]},{datatype:"Formula",defaultValue:"cos(theta) * 0.5",displayName:"X",name:"RingFormulaX",type:"Attribute"},{datatype:"Formula",defaultValue:"0",displayName:"Y",name:"RingFormulaY",type:"Attribute"},{datatype:"Formula",defaultValue:"sin(theta) * 0.5",displayName:"Z",name:"RingFormulaZ",type:"Attribute"},{label:"Path formulas",type:"Separator"},{datatype:"Formula",defaultValue:"0",displayName:"X",name:"PathFormulaX",type:"Attribute"},{datatype:"Formula",defaultValue:"sin(t)",displayName:"Y",name:"PathFormulaY",type:"Attribute"},{datatype:"Formula",defaultValue:"t",displayName:"Z",name:"PathFormulaZ",type:"Attribute"},{label:"Color formulas",type:"Separator",if:{VertexColors:!0}},{datatype:"Formula",defaultValue:"abs(sin(t))",displayName:"R",name:"ColorFormulaR",type:"Attribute",if:{VertexColors:!0}},{datatype:"Formula",defaultValue:"0",displayName:"G",name:"ColorFormulaG",type:"Attribute",if:{VertexColors:!0}},{datatype:"Formula",defaultValue:"abs(cos(t))",displayName:"B",name:"ColorFormulaB",type:"Attribute",if:{VertexColors:!0}},{label:"Other formulas",type:"Separator"},{datatype:"Formula",defaultValue:"1 + 0.3 * sin(t * 2)",displayName:"Scale",name:"ScaleFormula",type:"Attribute"},{datatype:"Formula",defaultValue:"t * PI * 2",displayName:"Twist",name:"TwistFormula",type:"Attribute"},{name:"Physics",type:"FieldSet"}],typeName:"Ribbon"},{fields:[{name:"3dObjectDefault",type:"FieldSet"},{label:"Billboard Specific Fields",type:"Separator"},{linkableTypes:["Material"],type:"Link",usageAs:"Material",mandatory:!0},{datatype:"Text",defaultValue:"Text",displayName:"Text",name:"Text",type:"Attribute"},{datatype:"Enum",defaultValue:"center",displayName:"Text Alignment",info:"The alignment of the text",name:"TextAlign",options:["left","center","right"],type:"Attribute"},{linkableTypes:["Font"],type:"Link",usageAs:"Font"},{datatype:"Boolean",defaultValue:!0,displayName:"Size Attenuation",info:"Scales the Billboard with respect to distance to the camera.",name:"SizeAttenuation",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Size",minValue:0,name:"Size",type:"Attribute"},{datatype:"Float",defaultValue:2,displayName:"Text Stroke Width",info:"The width of the border of the text.",maxValue:100,minValue:0,name:"TextStrokeWidth",type:"Attribute"},{datatype:"Color",defaultValue:{a:255,b:255,g:255,r:255},displayName:"Text Stroke Color",info:"The color of the border of the text.",name:"TextStrokeColor",type:"Attribute"},{datatype:"Color",defaultValue:{a:255,b:0,g:0,r:0},displayName:"Text color",info:"The infill color of the text.",name:"TextColor",type:"Attribute"},{datatype:"Vector2d",defaultValue:{x:5,y:5},displayName:"Padding",info:"Two values controlling the vertical and horizontal padding size. Higher values increase the size of the padding.",name:"Padding",type:"Attribute"},{datatype:"Color",defaultValue:{a:255,b:255,g:255,r:255},displayName:"Padding color",info:"The background color of the padding section.",name:"BackgroundColor",type:"Attribute"},{datatype:"Color",defaultValue:{a:255,b:255,g:255,r:255},displayName:"Padding Line Color",info:"The color of the border delimited by the padding.",name:"BackgroundStrokeColor",type:"Attribute"},{datatype:"Integer",defaultValue:1,displayName:"Padding Line Width",info:"The width of the border of the padding section.",minValue:0,name:"BackgroundStrokeWidth",type:"Attribute"},{datatype:"Vector2d",defaultValue:{x:2,y:2},displayName:"Border",info:"Two values controlling the vertical and horizontal border size. Higher values increase the size of the border.",name:"BorderWidth",type:"Attribute"},{datatype:"Color",defaultValue:{a:255,b:255,g:255,r:255},displayName:"Border Color",info:"The background color of the border section.",name:"BorderBackgroundColor",type:"Attribute"},{datatype:"Color",defaultValue:{a:255,b:255,g:255,r:255},displayName:"Border Line Color",info:"The color of the outer border of the sprite.",name:"BorderStrokeColor",type:"Attribute"},{datatype:"Integer",defaultValue:1,displayName:"Border Line Width",info:"The width of the outer border.",minValue:0,name:"BorderStrokeWidth",type:"Attribute"},{datatype:"Integer",defaultValue:2,displayName:"Outer Radius",info:"The outer radius of the sprite. Higher values increase the roundness.",minValue:0,name:"OuterRadius",type:"Attribute"},{datatype:"Integer",defaultValue:2,displayName:"Inner Radius",info:"The inner radius of the sprite. Higher values increase the roundness.",minValue:0,name:"InnerRadius",type:"Attribute"},{datatype:"Vector2d",defaultValue:{x:1,y:1},displayName:"UV Scale",name:"UVScale",type:"Attribute"}],typeName:"Billboard"},{fields:[{name:"3dObjectDefault",type:"FieldSet"},{label:"Cone specific fields",type:"Separator"},{linkableTypes:["Material"],type:"Link",usageAs:"Material"},{datatype:"Float",defaultValue:1,displayName:"Radius",minValue:0,name:"Radius",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Height",minValue:0,name:"Height",type:"Attribute"},{datatype:"Integer",defaultValue:8,displayName:"Radial segments",minValue:1,name:"RadialSegments",type:"Attribute"},{datatype:"Integer",defaultValue:1,displayName:"Height segments",minValue:1,name:"HeightSegments",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Open ended",name:"OpenEnded",type:"Attribute"},{datatype:"Float",defaultValue:0,displayName:"Theta start",maxValue:360,minValue:0,name:"ThetaStart",type:"Attribute",widget:"Slider"},{datatype:"Float",defaultValue:360,displayName:"Theta length",maxValue:360,minValue:0,name:"ThetaLength",type:"Attribute",widget:"Slider"},{datatype:"Vector2d",defaultValue:{x:1,y:1},displayName:"UV Scale",name:"UVScale",type:"Attribute"},{name:"Physics",type:"FieldSet"}],typeName:"Cone"},{fields:[{name:"3dObjectNoShadows",type:"FieldSet"},{label:"Lod specific fields",type:"Separator"},{datatype:"String",defaultValue:"0,2,4,6,8,10",displayName:"Distances",name:"Distances",type:"Attribute"}],typeName:"Lod"},{fields:[{name:"3dObjectDefault",type:"FieldSet"},{label:"Cylinder specific fields",type:"Separator"},{linkableTypes:["Material"],type:"Link",usageAs:"Material"},{datatype:"Float",defaultValue:1,displayName:"Radius top",minValue:0,name:"RadiusTop",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Radius bottom",minValue:0,name:"RadiusBottom",type:"Attribute"},{datatype:"Integer",defaultValue:8,displayName:"Radial segments",minValue:1,name:"RadialSegments",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Height",minValue:0,name:"Height",type:"Attribute"},{datatype:"Integer",defaultValue:1,displayName:"Height segments",minValue:1,name:"HeightSegments",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Open ended",name:"OpenEnded",type:"Attribute"},{datatype:"Float",defaultValue:0,displayName:"Theta start",maxValue:360,minValue:0,name:"ThetaStart",type:"Attribute",widget:"Slider"},{datatype:"Float",defaultValue:360,displayName:"Theta length",maxValue:360,minValue:0,name:"ThetaLength",type:"Attribute",widget:"Slider"},{datatype:"Vector2d",defaultValue:{x:1,y:1},displayName:"UV Scale",name:"UVScale",type:"Attribute"},{name:"Physics",type:"FieldSet"}],typeName:"Cylinder"},{fields:[{name:"3dObjectDefault",type:"FieldSet"},{label:"Plane specific fields",type:"Separator"},{linkableTypes:["Material"],type:"Link",usageAs:"Material"},{datatype:"Float",defaultValue:1,displayName:"Width",minValue:0,name:"Width",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Height",minValue:0,name:"Height",type:"Attribute"},{datatype:"Integer",defaultValue:1,displayName:"Width segments",minValue:1,name:"WidthSegments",type:"Attribute"},{datatype:"Integer",defaultValue:1,displayName:"Height segments",minValue:1,name:"HeightSegments",type:"Attribute"},{datatype:"Vector2d",defaultValue:{x:1,y:1},displayName:"UV Scale",name:"UVScale",type:"Attribute"},{name:"Physics",type:"FieldSet"}],typeName:"Plane"},{fields:[{name:"3dObjectDefault",type:"FieldSet"},{label:"Ring specific fields",type:"Separator"},{linkableTypes:["Material"],type:"Link",usageAs:"Material"},{datatype:"Float",defaultValue:.5,displayName:"Inner radius",minValue:0,name:"InnerRadius",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Outer radius",minValue:0,name:"OuterRadius",type:"Attribute"},{datatype:"Integer",defaultValue:8,displayName:"Theta segments",minValue:3,name:"ThetaSegments",type:"Attribute"},{datatype:"Integer",defaultValue:1,displayName:"Phi segments",minValue:1,name:"PhiSegments",type:"Attribute"},{datatype:"Float",defaultValue:0,displayName:"Theta start",maxValue:360,minValue:0,name:"ThetaStart",type:"Attribute",widget:"Slider"},{datatype:"Float",defaultValue:360,displayName:"Theta length",maxValue:360,minValue:0,name:"ThetaLength",type:"Attribute",widget:"Slider"},{datatype:"Vector2d",defaultValue:{x:1,y:1},displayName:"UV Scale",name:"UVScale",type:"Attribute"},{name:"Physics",type:"FieldSet"}],typeName:"Ring"},{fields:[{name:"3dObjectNoShadows",type:"FieldSet"},{label:"Particles Editor Fields",type:"Separator"},{datatype:"Boolean",defaultValue:!1,displayName:"Preview",info:"Previews the particle system by playing it in the editor.",name:"RunPreview",type:"Attribute"},{datatype:"Boolean",defaultValue:!0,displayName:"Show Emitter Preview",info:"Shows a preview of the particle system's emitter.",name:"ShowHelper",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Pause",info:"Pauses the particle system.",name:"Pause",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Kill All Particles",info:"Kills all the alive particles in the system.",name:"KillAllParticles",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Restart",info:"Hard restart of the particle system. It kills all particles, clean all data and reset the simulation time.",name:"Restart",type:"Attribute"},{displayName:"Particle System",label:"Particle System Configuration File",linkableTypes:["Particles"],type:"Link",usageAs:"ParticleData",mandatory:!0}],typeName:"ParticleSystem"},{fields:[{name:"3dObjectDefault",type:"FieldSet"},{label:"CircleShadow specific fields",type:"Separator"},{datatype:"Float",defaultValue:1,displayName:"Size",minValue:0,name:"Size",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Strength",maxValue:1,minValue:0,name:"Strength",type:"Attribute",widget:"Slider"}],typeName:"CircleShadow"},{fields:[{name:"3dObjectDefault",type:"FieldSet"},{label:"Sphere specific fields",type:"Separator"},{linkableTypes:["Material"],type:"Link",usageAs:"Material"},{datatype:"Float",defaultValue:1,displayName:"Radius",minValue:0,name:"Radius",type:"Attribute"},{datatype:"Integer",defaultValue:8,displayName:"Width segments",minValue:3,name:"WidthSegments",type:"Attribute"},{datatype:"Integer",defaultValue:6,displayName:"Height segments",minValue:2,name:"HeightSegments",type:"Attribute"},{datatype:"Float",defaultValue:0,displayName:"Phi start",maxValue:360,minValue:0,name:"PhiStart",type:"Attribute",widget:"Slider"},{datatype:"Float",defaultValue:360,displayName:"Phi length",maxValue:360,minValue:0,name:"PhiLength",type:"Attribute",widget:"Slider"},{datatype:"Float",defaultValue:0,displayName:"Theta start",maxValue:360,minValue:0,name:"ThetaStart",type:"Attribute",widget:"Slider"},{datatype:"Float",defaultValue:180,displayName:"Theta length",maxValue:180,minValue:0,name:"ThetaLength",type:"Attribute",widget:"Slider"},{datatype:"Vector2d",defaultValue:{x:1,y:1},displayName:"UV Scale",name:"UVScale",type:"Attribute"},{name:"Physics",type:"FieldSet"}],typeName:"Sphere"},{fields:[{name:"3dObjectDefault",type:"FieldSet"},{label:"Text specific fields",type:"Separator"},{linkableTypes:["Material"],type:"Link",usageAs:"Material"},{datatype:"String",defaultValue:"Text",name:"Text",type:"Attribute"},{datatype:"Enum",defaultValue:"center",displayName:"Horizontal Alignment",info:"Horizontal text positioning",name:"HorizontalAlign",options:["left","center","right"],type:"Attribute"},{datatype:"Enum",defaultValue:"baseline",displayName:"Vertical Alignment",info:"Vertical text positioning",name:"VerticalAlign",options:["baseline","top","middle","bottom"],type:"Attribute"},{linkableTypes:["Font"],type:"Link",usageAs:"Font"},{datatype:"Float",defaultValue:1,name:"Size",type:"Attribute"},{datatype:"Float",defaultValue:1,name:"Height",type:"Attribute"},{datatype:"Integer",defaultValue:12,displayName:"Curve segments",name:"CurveSegments",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Bevel enabled",name:"BevelEnabled",type:"Attribute"},{datatype:"Float",defaultValue:.1,displayName:"Bevel thickness",name:"BevelThickness",type:"Attribute"},{datatype:"Float",defaultValue:.03,displayName:"Bevel size",name:"BevelSize",type:"Attribute"},{datatype:"Float",defaultValue:0,displayName:"Bevel offset",name:"BevelOffset",type:"Attribute"},{datatype:"Integer",defaultValue:3,displayName:"Bevel segments",name:"BevelSegments",type:"Attribute"},{datatype:"Vector2d",defaultValue:{x:1,y:1},displayName:"UV Scale",name:"UVScale",type:"Attribute"},{name:"Physics",type:"FieldSet"}],typeName:"Text"},{fields:[{name:"3dObjectDefault",type:"FieldSet"},{label:"Torus specific fields",type:"Separator"},{linkableTypes:["Material"],type:"Link",usageAs:"Material"},{datatype:"Float",defaultValue:1,displayName:"Radius",minValue:0,name:"Radius",type:"Attribute"},{datatype:"Float",defaultValue:.4,displayName:"Tube",minValue:0,name:"Tube",type:"Attribute"},{datatype:"Integer",defaultValue:8,displayName:"Radial segments",minValue:3,name:"RadialSegments",type:"Attribute"},{datatype:"Integer",defaultValue:16,displayName:"Tubular segments",minValue:2,name:"TubularSegments",type:"Attribute"},{datatype:"Float",defaultValue:360,displayName:"Arc",maxValue:360,minValue:0,name:"Arc",type:"Attribute",widget:"Slider"},{datatype:"Vector2d",defaultValue:{x:1,y:1},displayName:"UV Scale",name:"UVScale",type:"Attribute"},{name:"Physics",type:"FieldSet"}],typeName:"Torus"},{fields:[{label:"3D Object Fields",type:"Separator"},{datatype:"Boolean",defaultValue:!0,displayName:"Active",name:"Active",type:"Attribute"},{datatype:"String",defaultValue:"",displayName:"Name",name:"Name",type:"Attribute"},{datatype:"Layers",defaultValue:[0],name:"Layers",type:"Attribute"},{datatype:"Tags",defaultValue:[],name:"Tags",type:"Attribute"},{label:"Sky specific fields",type:"Separator"},{datatype:"Float",defaultValue:1e3,name:"Size",type:"Attribute"},{datatype:"Float",defaultValue:10,displayName:"Turbidity",maxValue:20,minValue:1,name:"Turbidity",type:"Attribute",widget:"Slider"},{datatype:"Float",defaultValue:2,displayName:"Rayleigh",maxValue:4,minValue:0,name:"Rayleigh",type:"Attribute",widget:"Slider"},{datatype:"Float",defaultValue:.005,displayName:"Mie coefficient",maxValue:1,minValue:0,name:"MieCoefficient",type:"Attribute",widget:"Slider"},{datatype:"Float",defaultValue:.8,displayName:"Mie directional G",maxValue:1,minValue:0,name:"MieDirectionalG",type:"Attribute",widget:"Slider"},{datatype:"Float",defaultValue:.49,displayName:"Inclination",maxValue:1,minValue:0,name:"Inclination",type:"Attribute",widget:"Slider"},{datatype:"Float",defaultValue:.25,displayName:"Azimuth",maxValue:1,minValue:0,name:"Azimuth",type:"Attribute",widget:"Slider"}],typeName:"Sky"},{fields:[{label:"3D Object Fields",type:"Separator"},{datatype:"Boolean",defaultValue:!0,displayName:"Active",name:"Active",type:"Attribute"},{datatype:"String",defaultValue:"",displayName:"Name",name:"Name",type:"Attribute"},{datatype:"Transform",defaultValue:{position:{x:0,y:0,z:0},rotation:{w:1,x:0,y:0,z:0},scale:{x:1,y:1,z:1}},name:"Transform",type:"Attribute"},{datatype:"Tags",defaultValue:[],name:"Tags",type:"Attribute"},{label:"Audio listener specific fields",type:"Separator"},{datatype:"Float",defaultValue:1,name:"Gain",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Time delta",name:"TimeDelta",type:"Attribute"}],maxInstances:1,typeName:"AudioListener"},{fields:[{label:"3D Object Fields",type:"Separator"},{datatype:"Boolean",defaultValue:!0,displayName:"Active",name:"Active",type:"Attribute"},{datatype:"String",defaultValue:"",displayName:"Name",name:"Name",type:"Attribute"},{datatype:"Transform",defaultValue:{position:{x:0,y:0,z:0},rotation:{w:1,x:0,y:0,z:0},scale:{x:1,y:1,z:1}},name:"Transform",type:"Attribute"},{datatype:"Tags",defaultValue:[],name:"Tags",type:"Attribute"},{label:"Positional audio specific fields",type:"Separator"},{name:"AudioLink",type:"FieldSet"},{datatype:"Boolean",defaultValue:!1,displayName:"Autoplay",name:"Autoplay",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Loop",name:"Loop",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Loop section",name:"LoopSection",type:"Attribute",if:{Loop:!0}},{datatype:"Float",defaultValue:0,displayName:"Loop start",minValue:0,name:"LoopStart",type:"Attribute",widget:"Slider",if:{Loop:!0,LoopSection:!0}},{datatype:"Float",displayName:"Loop end",defaultValue:1,minValue:0,name:"LoopEnd",type:"Attribute",widget:"Slider",if:{Loop:!0,LoopSection:!0}},{datatype:"Float",defaultValue:1,displayName:"Volume",minValue:0,name:"Volume",type:"Attribute"},{datatype:"Float",defaultValue:0,displayName:"Panning",maxValue:1,minValue:-1,name:"Panning",type:"Attribute",widget:"Slider"},{datatype:"Float",defaultValue:0,displayName:"Duration",minValue:0,name:"Duration",type:"Attribute"},{datatype:"Float",defaultValue:0,displayName:"Detune",name:"Detune",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Playback rate",minValue:0,name:"PlaybackRate",type:"Attribute"},{datatype:"Float",defaultValue:0,displayName:"Offset",maxValue:1,minValue:0,name:"Offset",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Ref distance",minValue:0,name:"RefDistance",type:"Attribute"},{datatype:"Float",defaultValue:1e4,displayName:"Max distance",minValue:0,name:"MaxDistance",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Rolloff factor",minValue:0,name:"RolloffFactor",type:"Attribute"},{datatype:"Enum",defaultValue:"Inverse",displayName:"Distance model",name:"DistanceModel",options:["Linear","Inverse","Exponential"],type:"Attribute"},{datatype:"Enum",defaultValue:"Omnidirectional",displayName:"Direction",name:"Direction",options:["Omnidirectional","Directional"],type:"Attribute"},{datatype:"Float",defaultValue:90,displayName:"Cone inner angle",if:{Direction:"Directional"},maxValue:360,minValue:0,name:"ConeInnerAngle",type:"Attribute",widget:"Slider"},{datatype:"Float",defaultValue:180,displayName:"Cone outer angle",if:{Direction:"Directional"},maxValue:360,minValue:0,name:"ConeOuterAngle",type:"Attribute",widget:"Slider"},{datatype:"Float",defaultValue:.2,displayName:"Cone outer gain",if:{Direction:"Directional"},maxValue:1,minValue:0,name:"ConeOuterGain",type:"Attribute",widget:"Slider"}],typeName:"PositionalAudio"},{fields:[{label:"3D Object Fields",type:"Separator"},{datatype:"Boolean",defaultValue:!0,displayName:"Active",name:"Active",type:"Attribute"},{datatype:"String",defaultValue:"",displayName:"Name",name:"Name",type:"Attribute"},{datatype:"Tags",defaultValue:[],name:"Tags",type:"Attribute"},{label:"Audio specific fields",type:"Separator"},{name:"AudioLink",type:"FieldSet"},{datatype:"Boolean",defaultValue:!1,displayName:"Autoplay",name:"Autoplay",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Loop",name:"Loop",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Loop section",name:"LoopSection",type:"Attribute",if:{Loop:!0}},{datatype:"Float",defaultValue:0,displayName:"Loop start",minValue:0,name:"LoopStart",type:"Attribute",widget:"Slider",if:{Loop:!0,LoopSection:!0}},{datatype:"Float",displayName:"Loop end",defaultValue:1,minValue:0,name:"LoopEnd",type:"Attribute",widget:"Slider",if:{Loop:!0,LoopSection:!0}},{datatype:"Float",defaultValue:1,displayName:"Volume",minValue:0,name:"Volume",type:"Attribute"},{datatype:"Float",defaultValue:0,displayName:"Panning",maxValue:1,minValue:-1,name:"Panning",type:"Attribute",widget:"Slider"},{datatype:"Float",defaultValue:0,displayName:"Duration",minValue:0,name:"Duration",type:"Attribute"},{datatype:"Float",defaultValue:0,displayName:"Detune",name:"Detune",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Playback rate",minValue:0,name:"PlaybackRate",type:"Attribute"},{datatype:"Float",defaultValue:0,displayName:"Offset",maxValue:1,minValue:0,name:"Offset",type:"Attribute"}],typeName:"Audio"},{fields:[{name:"3dObjectNoShadows",type:"FieldSet"},{label:"Vehicle specific fields",type:"Separator"},{datatype:"Node",defaultValue:null,displayName:"Chassis node",name:"ChassisNode",type:"Attribute"},{elementName:"Wheel",fields:[{datatype:"Node",defaultValue:null,displayName:"Wheel node",name:"WheelNode",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Is Front",name:"IsFront",type:"Attribute"},{label:"Wheel config",type:"Separator",collapsed:!0},{datatype:"Float",defaultValue:.6,displayName:"Suspension rest length",name:"SuspensionRestLength",type:"Attribute"},{datatype:"Float",defaultValue:20,displayName:"Suspension stiffness",name:"SuspensionStiffness",type:"Attribute"},{datatype:"Float",defaultValue:2.3,displayName:"Suspension damping",name:"SuspensionDamping",type:"Attribute"},{datatype:"Float",defaultValue:4.4,displayName:"Suspension compression",name:"SuspensionCompression",type:"Attribute"},{datatype:"Float",defaultValue:1e3,displayName:"Friction",name:"Friction",type:"Attribute"},{datatype:"Float",defaultValue:.2,displayName:"Roll influence",name:"RollInfluence",type:"Attribute"},{datatype:"Float",defaultValue:.1,displayName:"Radius",name:"Radius",type:"Attribute"},{datatype:"Float",defaultValue:0,displayName:"Acceleration",name:"Acceleration",type:"Attribute"},{datatype:"Float",defaultValue:0,displayName:"Brakes",name:"Brakes",type:"Attribute"},{datatype:"Float",defaultValue:0,displayName:"Steering",name:"Steering",type:"Attribute"}],name:"Wheels",type:"List"}],typeName:"Vehicle"},{fields:[{name:"3dObjectNoShadows",type:"FieldSet"},{label:"Constraint specific fields",type:"Separator"},{datatype:"Enum",defaultValue:"",displayName:"Type",name:"Type",options:["Point to Point","Hinge","Slider","Cone twist"],type:"Attribute"},{datatype:"Node",defaultValue:null,displayName:"First node",name:"FirstNode",type:"Attribute"},{datatype:"Node",defaultValue:null,displayName:"Second node",name:"SecondNode",type:"Attribute"}],typeName:"Constraint"},{fields:[{name:"3dObjectDefault",type:"FieldSet"},{label:"NavMesh specific fields",type:"Separator"},{datatype:"Enum",defaultValue:"Solo",displayName:"Type",name:"Type",options:["Solo","Tiled","Tile cache"],info:"For simple static scenes, use solo. For large maps use tiled, for large and/or dynamic maps, use tile cache",type:"Attribute"},{datatype:"Enum",defaultValue:"From children",displayName:"Mode",name:"Mode",options:["From children","From tags","From layers"],type:"Attribute"},{datatype:"Layers",defaultValue:[0],displayName:"Navmesh layers",info:"Selects which layers are added to the navmesh",name:"NavmeshLayers",type:"Attribute",if:{Mode:"From layers"}},{datatype:"Tags",defaultValue:[],info:"Selects meshes to add to the navmesh based on tag.",displayName:"Navmesh tags",name:"NavmeshTags",type:"Attribute",if:{Mode:"From tags"}},{datatype:"Boolean",defaultValue:!1,displayName:"Auto generate",name:"AutoGenerate",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Always render helper",name:"AlwaysRenderHelper",type:"Attribute"},{datatype:"Button",defaultValue:!1,displayName:"Regenerate now",name:"RegenerateNow",type:"Attribute"},{datatype:"Float",defaultValue:0,minValue:0,displayName:"Border size",name:"BorderSize",type:"Attribute"},{datatype:"Float",defaultValue:.2,minValue:.01,displayName:"Voxel cell height",name:"CellHeight",type:"Attribute",info:"Needs to resolve step/climb height cleanly."},{datatype:"Float",defaultValue:.2,minValue:.01,displayName:"Voxel cell size",name:"CellSize",type:"Attribute",info:"Smaller = more detail. Around 0.2m for human‑scale"},{datatype:"Integer",defaultValue:256,minValue:1,displayName:"Chunky tri mesh tris per chunk",name:"ChunkyTriMeshTrisPerChunk",type:"Attribute",if:{Type:"Tiled"}},{datatype:"Float",defaultValue:6,minValue:.01,displayName:"Detail sample dist",name:"DetailSampleDist",type:"Attribute"},{datatype:"Float",defaultValue:1,minValue:0,displayName:"Detail sample max error",name:"DetailSampleMaxError",type:"Attribute"},{datatype:"Integer",defaultValue:4,minValue:1,displayName:"Expected layers per tile",name:"ExpectedLayersPerTile",type:"Attribute",if:{Type:"Tile Cache"}},{datatype:"Integer",defaultValue:128,minValue:1,displayName:"Max obstacles",name:"MaxObstacles",type:"Attribute",if:{Type:"Tile Cache"}},{datatype:"Float",defaultValue:12,minValue:.01,displayName:"Max edge length",name:"MaxEdgeLen",type:"Attribute"},{datatype:"Float",defaultValue:1.3,minValue:0,displayName:"Max simplification error",name:"MaxSimplificationError",type:"Attribute",info:"Allowed contour deviation from source before another vertex is kept"},{datatype:"Integer",defaultValue:6,minValue:3,displayName:"Max vertices per poly",name:"MaxVertsPerPoly",type:"Attribute"},{datatype:"Float",defaultValue:20,minValue:.01,displayName:"Merge region area",name:"MergeRegionArea",type:"Attribute"},{datatype:"Float",defaultValue:8,minValue:.01,displayName:"Min region area",name:"MinRegionArea",type:"Attribute"},{datatype:"Float",defaultValue:2,minValue:0,displayName:"Walkable climb",name:"WalkableClimb",type:"Attribute",info:"Maximum step height"},{datatype:"Float",defaultValue:2,minValue:0,displayName:"Walkable height",name:"WalkableHeight",type:"Attribute",info:"Required head‑clearance. Must be at least the height of the characters."},{datatype:"Float",defaultValue:.5,minValue:.01,displayName:"Walkable radius",name:"WalkableRadius",type:"Attribute",info:"Clearance from walls/obstacles"},{datatype:"Float",defaultValue:60,minValue:0,maxValue:360,displayName:"Walkable slope angle",name:"WalkableSlopeAngle",type:"Attribute",info:"Steepest walkable slope"},{datatype:"Boolean",defaultValue:!0,displayName:"Build BV Tree",name:"BuildBvTree",info:"",type:"Attribute",if:{$or:[{Type:"Solo"},{Type:"Tiled"}]}},{datatype:"Integer",defaultValue:32,minValue:1,displayName:"Tile size",name:"TileSize",type:"Attribute",info:"The size of the tiles to be used. Typically you will want to stay in the range 32 - 64. Sizes outside this range might result in unexpected behaviour",if:{$or:[{Type:"Tiled"},{Type:"Tile cache"}]}},{label:"Crowd fields",type:"Separator"},{datatype:"Boolean",defaultValue:!0,displayName:"Enable crowd",name:"EnableCrowd",type:"Attribute"},{datatype:"Integer",defaultValue:100,minValue:1,displayName:"Max agent count",name:"MaxAgentCount",type:"Attribute"},{datatype:"Float",defaultValue:1,minValue:.01,displayName:"Max agent radius",name:"MaxAgentRadius",type:"Attribute"}],typeName:"NavMesh"}],name:"Scenegraph",type:"Tree"}],name:"Prefab",updateRequiresThumbRefresh:!0},{_id:{$oid:"5e6a1ad189707feef9173397"},contentTypes:["text/x-lua"],fieldSets:[],fields:[],name:"Script",updateRequiresThumbRefresh:!1,creatableEmpty:!0},{_id:{$oid:"5e6a1ad189707f2ef9133396"},contentTypes:[],fieldSets:[],fields:[{childTypes:[{displayName:"Camera",fields:[{datatype:"String",defaultValue:"",displayName:"Name",name:"Name",type:"Attribute"},{datatype:"String",defaultValue:"",displayName:"Tag",info:"Tag of the camera to render",name:"Tag",type:"Attribute"},{datatype:"Layers",defaultValue:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31],displayName:"Layers",info:"Selects which layers are rendered by the camera. Overrides scene Camera node 'Cull mode' field.",name:"Layers",type:"Attribute"},{datatype:"Float",defaultValue:100,displayName:"Width",info:"Width in percent to render",name:"Width",type:"Attribute",widget:"Slider"},{datatype:"Float",defaultValue:100,displayName:"Height",info:"Height in percent to render",name:"Height",type:"Attribute",widget:"Slider"}],inputs:[],outputs:[{displayName:"Color output",name:"ColorOutput",type:"RGBImage"},{displayName:"Depth output",name:"DepthOutput",type:"GrayImage"},{displayName:"Depth Comparison output",name:"DepthComparisonOutput",type:"GrayImage"},{displayName:"Normal output",name:"NormalOutput",type:"RGBImage"},{displayName:"Camera Output",name:"CameraOutput",type:"Attribute"}],typeName:"camera"},{displayName:"Merge",fields:[{datatype:"String",defaultValue:"",displayName:"Name",name:"Name",type:"Attribute"},{datatype:"Boolean",defaultValue:!0,displayName:"Enabled",name:"Enabled",type:"Attribute"},{datatype:"Enum",defaultValue:"Alpha",displayName:"Blending Mode",name:"BlendingMode",options:["Add","Alpha","Average","Color","Color Burn","Color Dodge","Darken","Difference","Divide","Exclusion","Hard Light","Hard Mix","Hue","Invert","Invert RGB","Lighten","Linear Burn","Linear Dodge","Linear Light","Luminosity","Multiply","Negation","Normal","Overlay","Pin Light","Reflect","Saturation","Screen","Soft Light","Set","Src","Subtract","Vivid Light"],type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Opacity",info:"Adjusts how strongly the blending mode affects the final result.",maxValue:1,minValue:0,name:"Opacity",type:"Attribute",widget:"Slider"},{datatype:"Float",defaultValue:0,displayName:"Offset X",info:"Horizontal offset for the secondary input (relative to composition resolution). Positive values move right, negative left. Percentage-based for resolution independence.",maxValue:100,minValue:-100,name:"OffsetX",type:"Attribute"},{datatype:"Float",defaultValue:0,displayName:"Offset Y",info:"Vertical offset for the secondary input (relative to composition resolution). Positive values move up, negative down. Percentage-based for resolution independence.",maxValue:100,minValue:-100,name:"OffsetY",type:"Attribute"},{datatype:"Float",defaultValue:100,displayName:"Width",info:"Horizontal scale of the secondary input as percentage of composition width. 100% maintains original aspect ratio when Height is also 100%. Values <100% shrink, >100% stretch.",maxValue:100,minValue:0,name:"Width",type:"Attribute"},{datatype:"Float",defaultValue:100,displayName:"Height",info:"Vertical scale of the secondary input as percentage of composition height. 100% maintains original aspect ratio when Width is also 100%. Values <100% shrink, >100% stretch.",maxValue:100,minValue:0,name:"Height",type:"Attribute"}],inputs:[{displayName:"Color input 1",name:"ColorInput1",types:["RGBImage"]},{displayName:"Color input 2",name:"ColorInput2",types:["RGBImage"]}],outputs:[{displayName:"Color output",name:"ColorOutput",type:"RGBImage"}],typeName:"merge"},{displayName:"SSAO",fields:[{datatype:"String",defaultValue:"",displayName:"Name",name:"Name",type:"Attribute"},{datatype:"Boolean",defaultValue:!0,displayName:"Enabled",name:"Enabled",type:"Attribute"},{datatype:"Float",defaultValue:.2,displayName:"Radius",minValue:.01,name:"Radius",type:"Attribute"},{datatype:"Integer",defaultValue:8,displayName:"Samples",maxValue:32,minValue:8,name:"Samples",type:"Attribute"},{datatype:"Float",defaultValue:.001,displayName:"Bias",minValue:.001,name:"Bias",type:"Attribute"},{datatype:"Float",defaultValue:2,displayName:"Intensity",minValue:0,name:"Intensity",type:"Attribute"},{datatype:"Float",defaultValue:.07,displayName:"Max distance",minValue:.01,name:"MaxDistance",type:"Attribute"}],inputs:[{displayName:"Depth input",name:"DepthInput",types:["GrayImage"]},{displayName:"Normal input",name:"NormalInput",types:["RGBImage"]},{displayName:"Camera Input",name:"CameraInput",types:["Attribute"]}],outputs:[{displayName:"Color output",name:"ColorOutput",type:"RGBImage"}],typeName:"ssao"},{displayName:"FXAA",fields:[{datatype:"String",defaultValue:"",displayName:"Name",name:"Name",type:"Attribute"},{datatype:"Boolean",defaultValue:!0,displayName:"Enabled",name:"Enabled",type:"Attribute"}],inputs:[{displayName:"Color input",name:"ColorInput",types:["RGBImage"]}],outputs:[{displayName:"Color output",name:"ColorOutput",type:"RGBImage"}],typeName:"fxaa"},{displayName:"Bloom",fields:[{datatype:"String",defaultValue:"",displayName:"Name",name:"Name",type:"Attribute"},{datatype:"Boolean",defaultValue:!0,displayName:"Enabled",name:"Enabled",type:"Attribute"},{datatype:"Float",defaultValue:1.5,displayName:"Strength",maxValue:10,minValue:0,name:"Strength",type:"Attribute",widget:"Slider"},{datatype:"Float",defaultValue:.4,displayName:"Radius",maxValue:1,minValue:0,name:"Radius",type:"Attribute",widget:"Slider"},{datatype:"Float",defaultValue:.8,displayName:"Threshold",info:"Minimum luminance required for a pixel to contribute to bloom. Pixels darker than this value are suppressed, while brighter pixels contribute to the blur.",maxValue:1,minValue:0,name:"Threshold",type:"Attribute",widget:"Slider"},{datatype:"Float",defaultValue:.4,displayName:"Soft Knee",info:"Creates a smooth transition around the threshold to avoid harsh cutoffs. Higher values produce a more gradual blend between non-blooming and blooming pixels.",maxValue:1,minValue:0,name:"SoftKnee",type:"Attribute",widget:"Slider"}],inputs:[{displayName:"Color input",name:"ColorInput",types:["RGBImage"]}],outputs:[{displayName:"Color output",name:"ColorOutput",type:"RGBImage"}],typeName:"bloom"},{displayName:"Outline",fields:[{datatype:"String",defaultValue:"",displayName:"Name",name:"Name",type:"Attribute"},{datatype:"Boolean",defaultValue:!0,displayName:"Enabled",name:"Enabled",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Edge Strength",maxValue:5,minValue:0,name:"EdgeStrength",type:"Attribute",widget:"Slider"},{datatype:"Float",defaultValue:.5,displayName:"Edge Width",maxValue:2,minValue:.1,name:"EdgeWidth",type:"Attribute",widget:"Slider"},{datatype:"Color",defaultValue:{r:255,g:0,b:0,a:255},displayName:"Edge Color",name:"EdgeColor",type:"Attribute"},{datatype:"Enum",defaultValue:"Add",displayName:"Blending Mode",name:"BlendingMode",options:["Add","Alpha","Average","Color","Color Burn","Color Dodge","Darken","Difference","Divide","Exclusion","Hard Light","Hard Mix","Hue","Invert","Invert RGB","Lighten","Linear Burn","Linear Dodge","Linear Light","Luminosity","Multiply","Negation","Normal","Overlay","Pin Light","Reflect","Saturation","Screen","Soft Light","Set","Src","Subtract","Vivid Light"],type:"Attribute"},{datatype:"Float",defaultValue:.25,displayName:"Opacity",name:"Opacity",maxValue:1,minValue:0,type:"Attribute"}],inputs:[{displayName:"Color input",name:"ColorInput",types:["RGBImage"]},{displayName:"Depth Comparison input",name:"DepthComparisonInput",types:["GrayImage"]}],outputs:[{displayName:"Color output",name:"ColorOutput",type:"RGBImage"}],typeName:"outline"},{displayName:"Film",fields:[{datatype:"String",defaultValue:"",displayName:"Name",name:"Name",type:"Attribute"},{datatype:"Boolean",defaultValue:!0,displayName:"Enabled",name:"Enabled",type:"Attribute"},{datatype:"Float",defaultValue:.05,displayName:"Noise intensity",maxValue:1,minValue:0,name:"NoiseIntensity",type:"Attribute",widget:"Slider"},{datatype:"Float",defaultValue:0,displayName:"Scanlines intensity",maxValue:1,minValue:0,name:"ScanlinesIntensity",type:"Attribute",widget:"Slider"},{datatype:"Integer",defaultValue:0,displayName:"Scanlines count",maxValue:1e3,minValue:0,name:"ScanlinesCount",type:"Attribute",widget:"Slider"},{datatype:"Boolean",defaultValue:!1,displayName:"Grayscale",name:"Grayscale",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Animated",name:"Animated",type:"Attribute"}],inputs:[{displayName:"Color input",name:"ColorInput",types:["RGBImage"]}],outputs:[{displayName:"Color output",name:"ColorOutput",type:"RGBImage"}],typeName:"film"},{displayName:"Fog",fields:[{datatype:"String",defaultValue:"",displayName:"Name",name:"Name",type:"Attribute"},{datatype:"Boolean",defaultValue:!0,displayName:"Enabled",name:"Enabled",type:"Attribute"},{datatype:"Color",defaultValue:{r:255,g:0,b:0,a:255},displayName:"Color",name:"Color",type:"Attribute"},{datatype:"Enum",defaultValue:"Camera Depth",displayName:"Direction",name:"Direction",type:"Attribute",options:["Camera Depth","X","Y","Z"],info:"Defines the ray along which the fog is evaluated. 'Camera Depth' applies fog based on distance from the camera view direction (distances should be non-negative). 'X', 'Y', and 'Z' apply fog along the corresponding world-space axis; distances may be positive or negative depending on where the fog volume should begin and end."},{datatype:"Enum",defaultValue:"Linear",displayName:"Type",name:"Type",type:"Attribute",options:["Linear","Exponential","Exponential Squared"]},{datatype:"Float",defaultValue:1,displayName:"Start Distance",name:"StartDistance",type:"Attribute",info:"Distance along the selected fog ray where the fog begins to accumulate. Must be >= 0 when using Camera Depth."},{datatype:"Float",defaultValue:1e3,displayName:"End Distance",name:"EndDistance",type:"Attribute",info:"Distance along the selected fog ray where the fog reaches maximum density. Must be >= 0 when using Camera Depth."},{datatype:"Float",defaultValue:.0025,displayName:"Density",minValue:1e-5,maxValue:1,name:"Density",type:"Attribute",step:.1,if:{$or:[{FogType:"Exponential"},{FogType:"Exponential Squared"}]}},{datatype:"Boolean",defaultValue:!0,displayName:"Enable Noise",name:"EnableNoise",info:"Adds animated noise to the fog to create more natural variation.",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Noise Scale",minValue:.001,name:"NoiseScale",type:"Attribute",step:1,if:{EnableFogNoise:!0}},{datatype:"Float",defaultValue:.1,displayName:"Noise Speed",maxValue:1,minValue:0,name:"NoiseSpeed",type:"Attribute",step:.1,if:{EnableFogNoise:!0}},{datatype:"Float",defaultValue:.5,displayName:"Noise Amount",maxValue:1,minValue:0,name:"NoiseAmount",type:"Attribute",step:.1,if:{EnableFogNoise:!0}},{datatype:"Float",defaultValue:0,maxValue:1,displayName:"Sky Density",info:"Controls the amount of fog applied to the sky.",name:"SkyDensity",type:"Attribute",step:.1}],inputs:[{displayName:"Color input",name:"ColorInput",types:["RGBImage"]},{displayName:"Depth input",name:"DepthInput",types:["DepthBuffer"]},{displayName:"Camera input",name:"CameraInput",types:["Camera"]}],outputs:[{displayName:"Color output",name:"ColorOutput",type:"RGBImage"}],typeName:"fog"},{displayName:"Sepia",fields:[{datatype:"String",defaultValue:"",displayName:"Name",name:"Name",type:"Attribute"},{datatype:"Boolean",defaultValue:!0,displayName:"Enabled",name:"Enabled",type:"Attribute"},{datatype:"Enum",defaultValue:"Normal",displayName:"Blending Mode",name:"BlendingMode",options:["Add","Alpha","Average","Color","Color Burn","Color Dodge","Darken","Difference","Divide","Exclusion","Hard Light","Hard Mix","Hue","Invert","Invert RGB","Lighten","Linear Burn","Linear Dodge","Linear Light","Luminosity","Multiply","Negation","Normal","Overlay","Pin Light","Reflect","Saturation","Screen","Soft Light","Set","Src","Subtract","Vivid Light"],type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Opacity",name:"Opacity",maxValue:1,minValue:0,type:"Attribute"}],inputs:[{displayName:"Color input",name:"ColorInput",types:["RGBImage"]}],outputs:[{displayName:"Color output",name:"ColorOutput",type:"RGBImage"}],typeName:"sepia"},{displayName:"Vignette",fields:[{datatype:"String",defaultValue:"",displayName:"Name",name:"Name",type:"Attribute"},{datatype:"Boolean",defaultValue:!0,displayName:"Enabled",name:"Enabled",type:"Attribute"},{datatype:"Enum",defaultValue:"Normal",displayName:"Blending Mode",name:"BlendingMode",options:["Add","Alpha","Average","Color","Color Burn","Color Dodge","Darken","Difference","Divide","Exclusion","Hard Light","Hard Mix","Hue","Invert","Invert RGB","Lighten","Linear Burn","Linear Dodge","Linear Light","Luminosity","Multiply","Negation","Normal","Overlay","Pin Light","Reflect","Saturation","Screen","Soft Light","Set","Src","Subtract","Vivid Light"],type:"Attribute"},{datatype:"Float",defaultValue:.9,displayName:"Opacity",name:"Opacity",maxValue:1,minValue:0,type:"Attribute"},{datatype:"Float",defaultValue:.4,displayName:"Amount",maxValue:1,minValue:0,name:"Amount",type:"Attribute"}],inputs:[{displayName:"Color input",name:"ColorInput",types:["RGBImage"]}],outputs:[{displayName:"Color output",name:"ColorOutput",type:"RGBImage"}],typeName:"vignette"},{displayName:"Blur",fields:[{datatype:"String",defaultValue:"",displayName:"Name",name:"Name",type:"Attribute"},{datatype:"Boolean",defaultValue:!0,displayName:"Enabled",name:"Enabled",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Amount",maxValue:10,minValue:0,name:"Amount",type:"Attribute"}],inputs:[{displayName:"Color input",name:"ColorInput",types:["RGBImage"]}],outputs:[{displayName:"Color output",name:"ColorOutput",type:"RGBImage"}],typeName:"blur"},{displayName:"Scanline",fields:[{datatype:"String",defaultValue:"",displayName:"Name",name:"Name",type:"Attribute"},{datatype:"Boolean",defaultValue:!0,displayName:"Enabled",name:"Enabled",type:"Attribute"},{datatype:"Float",defaultValue:.5,displayName:"Density",maxValue:1,minValue:0,name:"Density",type:"Attribute",widget:"Slider"},{datatype:"Float",defaultValue:.01,displayName:"Scroll Speed",maxValue:1,minValue:0,name:"ScrollSpeed",type:"Attribute",widget:"Slider"},{datatype:"Enum",defaultValue:"Overlay",displayName:"Blending Mode",name:"BlendingMode",options:["Add","Alpha","Average","Color","Color Burn","Color Dodge","Darken","Difference","Divide","Exclusion","Hard Light","Hard Mix","Hue","Invert","Invert RGB","Lighten","Linear Burn","Linear Dodge","Linear Light","Luminosity","Multiply","Negation","Normal","Overlay","Pin Light","Reflect","Saturation","Screen","Soft Light","Set","Src","Subtract","Vivid Light"],type:"Attribute"},{datatype:"Float",defaultValue:.25,displayName:"Opacity",name:"Opacity",maxValue:1,minValue:0,type:"Attribute"}],inputs:[{displayName:"Color input",name:"ColorInput",types:["RGBImage"]}],outputs:[{displayName:"Color output",name:"ColorOutput",type:"RGBImage"}],typeName:"scanline"},{displayName:"Shockwave",fields:[{datatype:"String",defaultValue:"",displayName:"Name",name:"Name",type:"Attribute"},{datatype:"Boolean",defaultValue:!0,displayName:"Enabled",name:"Enabled",type:"Attribute"},{datatype:"Boolean",defaultValue:!0,displayName:"Continuous",info:"Whether or not new shockwaves will emit as soon as the previous shockwave ended.",name:"Continuous",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Delay",minValue:0,name:"Delay",info:"How long to wait between shockwave emissions.",type:"Attribute",if:{Continuous:!1}},{datatype:"Integer",defaultValue:5,displayName:"Amount",minValue:0,name:"Amount",info:"The number of shockwaves.",type:"Attribute",if:{Continuous:!1}},{datatype:"Vector3d",defaultValue:{x:0,y:0,z:0},displayName:"Center",info:"The center in world coordinates of the shockwave effect.",name:"Center",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Size",maxValue:100,minValue:.001,name:"Size",type:"Attribute"},{datatype:"Float",defaultValue:2,displayName:"Speed",maxValue:100,minValue:.001,name:"Speed",type:"Attribute"},{datatype:"Float",defaultValue:-.2,displayName:"Radius",maxValue:10,minValue:-10,name:"Radius",type:"Attribute"},{datatype:"Float",defaultValue:.2,displayName:"Maximum Radius",maxValue:10,minValue:0,name:"MaxRadius",type:"Attribute"},{datatype:"Float",defaultValue:10,displayName:"Wave Size",maxValue:100,minValue:1,name:"WaveSize",type:"Attribute"},{datatype:"Float",defaultValue:.05,displayName:"Amplitude",maxValue:10,minValue:0,name:"Amplitude",type:"Attribute"},{datatype:"Enum",defaultValue:"Screen",displayName:"Blending Mode",name:"BlendingMode",options:["Add","Alpha","Average","Color","Color Burn","Color Dodge","Darken","Difference","Divide","Exclusion","Hard Light","Hard Mix","Hue","Invert","Invert RGB","Lighten","Linear Burn","Linear Dodge","Linear Light","Luminosity","Multiply","Negation","Normal","Overlay","Pin Light","Reflect","Saturation","Screen","Soft Light","Set","Src","Subtract","Vivid Light"],type:"Attribute"},{datatype:"Float",defaultValue:.75,displayName:"Opacity",name:"Opacity",maxValue:1,minValue:0,type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Enable Debug",name:"Debug",type:"Attribute"}],inputs:[{displayName:"Color input",name:"ColorInput",types:["RGBImage"]},{displayName:"Camera Input",name:"CameraInput",types:["Attribute"]}],outputs:[{displayName:"Color output",name:"ColorOutput",type:"RGBImage"}],typeName:"shockwave"},{displayName:"Pixelation",fields:[{datatype:"String",defaultValue:"",displayName:"Name",name:"Name",type:"Attribute"},{datatype:"Boolean",defaultValue:!0,displayName:"Enabled",name:"Enabled",type:"Attribute"},{datatype:"Float",defaultValue:10,displayName:"Granularity",maxValue:100,minValue:1,name:"Granularity",type:"Attribute",widget:"Slider"}],inputs:[{displayName:"Color input",name:"ColorInput",types:["RGBImage"]}],outputs:[{displayName:"Color output",name:"ColorOutput",type:"RGBImage"}],typeName:"pixelation"},{displayName:"Adjust",fields:[{datatype:"String",defaultValue:"",displayName:"Name",name:"Name",type:"Attribute"},{datatype:"Boolean",defaultValue:!0,displayName:"Enabled",name:"Enabled",type:"Attribute"},{datatype:"Float",defaultValue:0,displayName:"Brightness",maxValue:10,minValue:-10,name:"Brightness",type:"Attribute"},{datatype:"Float",defaultValue:0,displayName:"Contrast",maxValue:10,minValue:-10,name:"Contrast",type:"Attribute"},{datatype:"Float",defaultValue:0,displayName:"Hue",maxValue:6.283,minValue:0,name:"Hue",type:"Attribute"},{datatype:"Float",defaultValue:0,displayName:"Saturation",maxValue:1,minValue:-1,name:"Saturation",type:"Attribute"}],inputs:[{displayName:"Color input",name:"ColorInput",types:["RGBImage"]}],outputs:[{displayName:"Color output",name:"ColorOutput",type:"RGBImage"}],typeName:"adjust"},{displayName:"Chromatic abberation",fields:[{datatype:"String",defaultValue:"",displayName:"Name",name:"Name",type:"Attribute"},{datatype:"Boolean",defaultValue:!0,displayName:"Enabled",name:"Enabled",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Amount",maxValue:10,minValue:0,name:"Amount",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Red factor",maxValue:1,minValue:0,name:"RedFactor",type:"Attribute"},{datatype:"Float",defaultValue:.5,displayName:"Green factor",maxValue:1,minValue:0,name:"GreenFactor",type:"Attribute"},{datatype:"Float",defaultValue:.25,displayName:"Blue factor",maxValue:1,minValue:0,name:"BlueFactor",type:"Attribute"}],inputs:[{displayName:"Color input",name:"ColorInput",types:["RGBImage"]}],outputs:[{displayName:"Color output",name:"ColorOutput",type:"RGBImage"}],typeName:"chromaticAbberation"},{displayName:"Color Depth",fields:[{datatype:"String",defaultValue:"",displayName:"Name",name:"Name",type:"Attribute"},{datatype:"Boolean",defaultValue:!0,displayName:"Enabled",name:"Enabled",type:"Attribute"},{datatype:"Integer",defaultValue:16,displayName:"Bit Depth",maxValue:32,minValue:1,name:"bitDepth",type:"Attribute"},{datatype:"Enum",defaultValue:"Normal",displayName:"Blending Mode",name:"BlendingMode",options:["Add","Alpha","Average","Color","Color Burn","Color Dodge","Darken","Difference","Divide","Exclusion","Hard Light","Hard Mix","Hue","Invert","Invert RGB","Lighten","Linear Burn","Linear Dodge","Linear Light","Luminosity","Multiply","Negation","Normal","Overlay","Pin Light","Reflect","Saturation","Screen","Soft Light","Set","Src","Subtract","Vivid Light"],type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Opacity",info:"Controls blending. Only valid for additive and subtractive modes",maxValue:1,minValue:0,name:"Opacity",type:"Attribute",widget:"Slider"}],inputs:[{displayName:"Color input",name:"ColorInput",types:["RGBImage"]}],outputs:[{displayName:"Color output",name:"ColorOutput",type:"RGBImage"}],typeName:"colorDepth"},{displayName:"Depth Of Field",fields:[{datatype:"String",defaultValue:"",displayName:"Name",name:"Name",type:"Attribute"},{datatype:"Boolean",defaultValue:!0,displayName:"Enabled",name:"Enabled",type:"Attribute"},{datatype:"String",defaultValue:"",displayName:"Focus Target",name:"FocusTarget",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"World Focus Distance",minValue:0,name:"WorldFocusDistance",type:"Attribute"},{datatype:"Float",defaultValue:5,displayName:"World Focus Range",minValue:0,name:"WorldFocusRange",type:"Attribute"},{datatype:"Integer",defaultValue:4,displayName:"Kawase Blur Kernel Size",maxValue:10,minValue:0,name:"Kernel",type:"Attribute"},{datatype:"Float",defaultValue:.5,displayName:"Bokeh Scale",maxValue:25,minValue:0,name:"BokehScale",type:"Attribute"},{datatype:"Float",defaultValue:.75,displayName:"Resolution Scale",maxValue:1,minValue:0,name:"ResolutionScale",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Enable Debug",name:"Debug",type:"Attribute"}],inputs:[{displayName:"Color input",name:"ColorInput",types:["RGBImage"]},{displayName:"Depth input",name:"DepthInput",types:["GrayImage"]},{displayName:"Camera Input",name:"CameraInput",types:["Attribute"]}],outputs:[{displayName:"Color output",name:"ColorOutput",type:"RGBImage"}],typeName:"depthoffield"},{displayName:"Glitch",fields:[{datatype:"String",defaultValue:"",displayName:"Name",name:"Name",type:"Attribute"},{datatype:"Boolean",defaultValue:!0,displayName:"Enabled",name:"Enabled",type:"Attribute"},{datatype:"Vector2d",defaultValue:{x:.3,y:1},displayName:"Strength",info:"Two values controlling the maximum and minimum strength of the glitch effect.",name:"Strength",type:"Attribute"},{datatype:"Float",defaultValue:.1,displayName:"Columns",maxValue:1,minValue:0,name:"Columns",type:"Attribute"},{datatype:"Vector2d",defaultValue:{x:0,y:2.5},displayName:"Delay",info:"Two values controlling the duration of the delay of the glitch effect.",name:"Delay",type:"Attribute"},{datatype:"Vector2d",defaultValue:{x:0,y:3},displayName:"Duration",info:"Two values controlling the duration of the glitch effect.",name:"Duration",type:"Attribute"}],inputs:[{displayName:"Color input",name:"ColorInput",types:["RGBImage"]}],outputs:[{displayName:"Color output",name:"ColorOutput",type:"RGBImage"}],typeName:"glitch"},{displayName:"God Rays",fields:[{datatype:"String",defaultValue:"",displayName:"Name",name:"Name",type:"Attribute"},{datatype:"Boolean",defaultValue:!0,displayName:"Enabled",name:"Enabled",type:"Attribute"},{datatype:"String",defaultValue:"",type:"Attribute",displayName:"Light Source",name:"SunTag"},{datatype:"Float",defaultValue:1,displayName:"Size",minValue:.01,maxValue:10,name:"Size",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Density",minValue:.01,maxValue:1,name:"Density",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Decay",minValue:.01,maxValue:1,name:"Decay",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Weight",minValue:.01,maxValue:1,name:"Weight",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Exposure",minValue:.01,maxValue:1,name:"Exposure",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"MaximumIntensity",minValue:.01,maxValue:1,name:"MaximumIntensity",type:"Attribute"},{datatype:"Integer",defaultValue:60,displayName:"Samples",minValue:0,name:"Samples",type:"Attribute"},{datatype:"Boolean",defaultValue:!0,displayName:"Blur Rays",name:"BlurRays",type:"Attribute"},{datatype:"Integer",defaultValue:2,displayName:"Kernel Size",info:"The number of kernel applied on the God Rays. A higher number yields to a better blur effect at higher computational cost",maxValue:10,minValue:0,name:"Kernel",if:{BlurRays:!0},type:"Attribute"},{datatype:"Float",defaultValue:.5,displayName:"Resolution Scale",info:"A higher resolution yields a more realistic result at higher computational cost",maxValue:1,minValue:0,name:"ResolutionScale",type:"Attribute"},{datatype:"Enum",defaultValue:"Screen",displayName:"Blending Mode",name:"BlendingMode",options:["Add","Alpha","Average","Color","Color Burn","Color Dodge","Darken","Difference","Divide","Exclusion","Hard Light","Hard Mix","Hue","Invert","Invert RGB","Lighten","Linear Burn","Linear Dodge","Linear Light","Luminosity","Multiply","Negation","Normal","Overlay","Pin Light","Reflect","Saturation","Screen","Soft Light","Set","Src","Subtract","Vivid Light"],type:"Attribute"},{datatype:"Float",defaultValue:.25,displayName:"Opacity",name:"Opacity",maxValue:1,minValue:0,type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Enable Debug",name:"Debug",type:"Attribute"}],inputs:[{displayName:"Color input",name:"ColorInput",types:["RGBImage"]},{displayName:"Depth input",name:"DepthInput",types:["GrayImage"]},{displayName:"Camera Input",name:"CameraInput",types:["Attribute"]}],outputs:[{displayName:"Color output",name:"ColorOutput",type:"RGBImage"}],typeName:"godrays"},{displayName:"Kawase Blur",fields:[{datatype:"String",defaultValue:"",displayName:"Name",name:"Name",type:"Attribute"},{datatype:"Boolean",defaultValue:!0,displayName:"Enabled",name:"Enabled",type:"Attribute"},{datatype:"Integer",defaultValue:2,displayName:"Kernel Size",info:"The number of kernel applied on the effect. A higher number yields to a better blur effect at higher computational cost",maxValue:10,minValue:0,name:"Kernel",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Scale",info:"The strenth of the blur effect.",maxValue:1,minValue:0,name:"Scale",type:"Attribute"}],inputs:[{displayName:"Color input",name:"ColorInput",types:["RGBImage"]}],outputs:[{displayName:"Color output",name:"ColorOutput",type:"RGBImage"}],typeName:"kawaseblur"},{displayName:"Radial blur",fields:[{datatype:"String",defaultValue:"",displayName:"Name",name:"Name",type:"Attribute"},{datatype:"Boolean",defaultValue:!0,displayName:"Enabled",name:"Enabled",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Amount",maxValue:10,minValue:0,name:"Amount",type:"Attribute"},{datatype:"Vector2d",defaultValue:{x:.5,y:.5},displayName:"Center",name:"Center",type:"Attribute"}],inputs:[{displayName:"Color input",name:"ColorInput",types:["RGBImage"]}],outputs:[{displayName:"Color output",name:"ColorOutput",type:"RGBImage"}],typeName:"radialBlur"},{displayName:"Tone Mapping",fields:[{datatype:"String",defaultValue:"",displayName:"Name",name:"Name",type:"Attribute"},{datatype:"Boolean",defaultValue:!0,displayName:"Enabled",name:"Enabled",type:"Attribute"},{datatype:"Enum",defaultValue:"LINEAR",displayName:"Mode",name:"TonemappingMode",options:["LINEAR","REINHARD","REINHARD2","REINHARD2_ADAPTIVE","UNCHARTED2","ACES_FILMIC","AGX","NEUTRAL"],type:"Attribute"},{datatype:"Integer",defaultValue:256,displayName:"Luminance Map Width. Must be a power of 2.",minValue:1,name:"LuminanceMapWidth",type:"Attribute",if:{TonemappingMode:"REINHARD2_ADAPTIVE"}},{datatype:"Integer",defaultValue:256,displayName:"Luminance Map Height. Must be a power of 2.",if:{TonemappingMode:"REINHARD2_ADAPTIVE"},minValue:1,name:"LuminanceMapHeight",type:"Attribute"},{datatype:"Float",defaultValue:4,displayName:"Maximum Luminance",minValue:0,maxValue:20,name:"MaxLuminance",type:"Attribute"},{datatype:"Float",defaultValue:.01,displayName:"Minimum Luminance",minValue:0,maxValue:3,name:"MinLuminance",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Average Luminance",minValue:0,maxValue:1,name:"MeanLuminance",type:"Attribute"},{datatype:"Float",defaultValue:.6,displayName:"Middle Grey",maxValue:1,minValue:0,name:"MiddleGrey",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Adaptation Rate",minValue:0,name:"AdaptationRate",type:"Attribute"}],inputs:[{displayName:"Color input",name:"ColorInput",types:["RGBImage"]}],outputs:[{displayName:"Color output",name:"ColorOutput",type:"RGBImage"}],typeName:"tonemapping"},{displayName:"Output",fields:[{datatype:"String",defaultValue:"Output",displayName:"Name",name:"Name",type:"Attribute"},{datatype:"Integer",defaultValue:256,displayName:"Target width",minValue:1,name:"DesiredWidth",type:"Attribute",info:"This is the width of the render target in case the composition is used in a material albedo slot."},{datatype:"Integer",defaultValue:256,displayName:"Target height",minValue:1,name:"DesiredHeight",type:"Attribute",info:"This is the height of the render target in case the composition is used in a material albedo slot."}],inputs:[{displayName:"Color input",name:"ColorInput",types:["RGBImage"]}],outputs:[],typeName:"output"}],name:"NodeGraph",type:"NodeGraph"}],name:"Composition",updateRequiresThumbRefresh:!1,creatableEmpty:!0},{_id:{$oid:"5e6a1ad189707f2ef9147396"},contentTypes:[],fieldSets:[],fields:[],name:"Behavior",updateRequiresThumbRefresh:!1,creatableEmpty:!1},{_id:{$oid:"5e6a1ad189707feef9173398"},contentTypes:["text/x-glsl"],fieldSets:[],fields:[{datatype:"Enum",defaultValue:1,displayName:"GLSL Version",name:"GLSLVersion",options:[1,3],type:"Attribute"},{datatype:"Enum",defaultValue:"Full",displayName:"Resolution",name:"Resolution",options:["Full","Half","Quarter"],type:"Attribute"},{displayName:"Texture Channel 1",linkableTypes:["Image"],type:"Link",usageAs:"TexChannel1"},{displayName:"Texture Channel 2",linkableTypes:["Image"],type:"Link",usageAs:"TexChannel2"},{displayName:"Texture Channel 3",linkableTypes:["Image"],type:"Link",usageAs:"TexChannel3"},{displayName:"Texture Channel 4",linkableTypes:["Image"],type:"Link",usageAs:"TexChannel4"}],name:"Background Shader",updateRequiresThumbRefresh:!1,creatableEmpty:!0},{_id:{$oid:"5e6a1ad189707feef9173399"},contentTypes:["video/mp4","video/webm"],fieldSets:[],fields:[{datatype:"Enum",defaultValue:"Linear",displayName:"Encoding",name:"Encoding",options:["Linear","sRGB"],type:"Attribute"}],name:"Video",creatableEmpty:!1},{_id:{$oid:"5e8c9d5c02a37596bb1fd5b6"},contentTypes:[""],fieldSets:[],fields:[{elementName:"Item",fields:[{datatype:"String",defaultValue:"",displayName:"Description",name:"Description",type:"Attribute"},{type:"Link",usageAs:"Item",mandatory:!0}],name:"Items",type:"List"}],name:"Collection",creatableEmpty:!0},{_id:{$oid:"5e8c9d5c02a33596bb53d5b6"},contentTypes:[""],fieldSets:[],fields:[{displayName:"Audio items",elementName:"AudioItem",fields:[{datatype:"String",defaultValue:"",displayName:"Name",name:"Name",type:"Attribute"},{linkableTypes:["Audio"],type:"Link",usageAs:"Audio",mandatory:!0}],name:"AudioItems",type:"List"}],name:"Audio Collection",creatableEmpty:!0},{_id:{$oid:"5e8c9d5c01a32576bb53d5b6"},contentTypes:[""],fieldSets:[],fields:[{displayName:"Mesh items",elementName:"MeshItem",fields:[{datatype:"String",defaultValue:"",displayName:"Name",name:"Name",type:"Attribute"},{linkableTypes:["Mesh"],type:"Link",usageAs:"Mesh",mandatory:!0}],name:"MeshItems",type:"List"}],name:"Mesh Collection",creatableEmpty:!0},{_id:{$oid:"5e8c9d5c0233596cb31d5ba2"},contentTypes:[""],fieldSets:[],fields:[{displayName:"Material items",elementName:"MaterialItem",fields:[{datatype:"String",defaultValue:"",displayName:"Name",name:"Name",type:"Attribute"},{linkableTypes:["Material"],type:"Link",usageAs:"Material",mandatory:!0}],name:"MaterialItems",type:"List"}],name:"Material Collection",creatableEmpty:!0},{_id:{$oid:"5edf2f6edc25bdf4e5723e52"},contentTypes:["text/x-yaml"],fieldSets:[],fields:[{displayName:"Material collections",elementName:"Material Collection",fields:[{linkableTypes:["Material Collection"],type:"Link",usageAs:"MaterialCollection",displayName:"Material Collection",mandatory:!0}],name:"MaterialCollections",type:"List"},{displayName:"Mesh collections",elementName:"Mesh Collection",fields:[{linkableTypes:["Mesh Collection"],type:"Link",usageAs:"MeshCollection",displayName:"Mesh Collection",mandatory:!0}],name:"MeshCollections",type:"List"}],name:"GridMap",creatableEmpty:!0},{_id:{$oid:"60827c20d3f7a631e71522cc"},contentTypes:[],fieldSets:[],fields:[],name:"Dataset",creatableEmpty:!1},{_id:{$oid:"62133ff41302cfcd0d9a2346"},contentTypes:["text/x-glsl"],fieldSets:[],fields:[],name:"Pixel Shader",updateRequiresThumbRefresh:!1,creatableEmpty:!0},{_id:{$oid:"62133ffb1302cf53ef9a234e"},contentTypes:["text/x-glsl"],fieldSets:[],fields:[],name:"Vertex Shader",updateRequiresThumbRefresh:!1,creatableEmpty:!0},{_id:{$oid:"62a83a1ef46738fe096fd7e3"},contentTypes:["application/zip"],fieldSets:[],fields:[],name:"Archive",updateRequiresThumbRefresh:!1,creatableEmpty:!1},{_id:{$oid:"640076f0e49250ab06ea4aec"},contentTypes:["font/ttf","font/otf"],fieldSets:[],fields:[],name:"Font",updateRequiresThumbRefresh:!0,creatableEmpty:!1},{_id:{$oid:"6463df676055450cac673d90"},contentTypes:[],fieldSets:[],fields:[{label:"General Settings",type:"Separator"},{datatype:"Integer",defaultValue:1e3,displayName:"Maximum Number of Particles",info:"The maximum number of particles that can exist at the same time in the simulation.",minValue:0,name:"MaxParticles",type:"Attribute"},{datatype:"Float",defaultValue:-1,displayName:"Duration",info:"Duration (in seconds) the particle system runs. Use -1 for infinite duration.",minValue:-1,name:"Duration",type:"Attribute"},{datatype:"Enum",defaultValue:"Local",displayName:"Coordinate System",info:"Defines whether particle movement is relative to the emitter's local space or the global world space.",name:"SystemCoordinates",options:["Local","World"],type:"Attribute"},{label:"Emission Settings",type:"Separator",collapsed:!0},{datatype:"Boolean",defaultValue:!1,displayName:"Emit All At Once",info:"Emit all particles immediately when the simulation starts.",name:"EmitAllAtOnce",type:"Attribute"},{datatype:"Float",defaultValue:128,minValue:0,displayName:"Spawn amount",if:{EmitAllAtOnce:!1},info:"The number of particles emitted each time the emitter spawns.",name:"SpawnAmount",type:"Attribute"},{datatype:"Float",defaultValue:1,minValue:0,displayName:"Spawn Interval",info:"The time, in seconds, between each consecutive spawn of particles.",if:{EmitAllAtOnce:!1},name:"SpawnRate",type:"Attribute"},{datatype:"Float",defaultValue:-1,minValue:-1,displayName:"Number of Emissions",info:"Total number of spawn events before emission stops; after this number of emissions, no more particles will be emitted.",if:{EmitAllAtOnce:!1},name:"MaximumEmissions",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Continuous emission",info:"If enabled, particles in each emission spawn gradually over time instead of instantly.",if:{EmitAllAtOnce:!1},name:"ContinuousEmissionFlag",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Auto Respawn",info:"Automatically respawn particles when they die.",name:"Respawn",type:"Attribute",if:{EmitAllAtOnce:!0}},{label:"Size Settings",type:"Separator",collapsed:!0},{datatype:"Enum",defaultValue:"Constant",options:["Constant","Variable","Velocity"],displayName:"Scaling Mode",info:"Determines how particle size changes over their lifetime: constant size, variable scaling, or based on velocity.",name:"ScaleMode",type:"Attribute"},{datatype:"Float",defaultValue:10,displayName:"Base Size",info:"The size of the particles at emission",minValue:0,name:"ParticleInitialSize",type:"Attribute"},{datatype:"Float",defaultValue:15,displayName:"Final Size",info:"The size particles reach at the end of their lifetime. If particles die early, they may not reach their final size.",minValue:0,name:"ParticleFinalSize",type:"Attribute",if:{ScaleMode:"Variable"}},{datatype:"Float",displayName:"Scale Randomness",name:"ScaleRandomness",defaultValue:.1,minValue:0,maxValue:1,info:"Random variation applied to scale curve values."},{datatype:"Enum",defaultValue:"Linear",options:["Linear","Exponential","Inverse Exponential","Ease-in, Ease-out"],displayName:"Interpolation Function",info:"Interpolation method for scaling particles over their lifetime.",type:"Attribute",name:"ScaleFunction",if:{ScaleMode:"Variable"}},{datatype:"Float",defaultValue:.5,minValue:0,maxValue:5,if:{ScaleMode:"Variable",$or:[{ScaleFunction:"Exponential"},{ScaleFunction:"Inverse Exponential"},{ScaleFunction:"Ease-in, Ease-out"}]},displayName:"Interpolation Rate",name:"ApproachSize",info:"Controls the rate at which particles scale over time based on the interpolation modes.",type:"Attribute"},{label:"Velocity Settings",type:"Separator",collapsed:!0},{datatype:"Enum",defaultValue:"Constant",options:["Constant","Variable"],displayName:"Velocity Mode",info:"Determines if particles maintain a constant velocity or change velocity over their lifetime.",name:"VelocityMode",type:"Attribute"},{datatype:"Vector3d",defaultValue:{x:0,y:0,z:0},displayName:"Initial Velocity",info:"The starting velocity of particles when emitted.",name:"InitialVelocity",type:"Attribute"},{datatype:"Vector3d",defaultValue:{x:0,y:0,z:0},displayName:"Final Velocity",info:"The velocity particles will reach by the end of their lifetime. Used only when Velocity Mode is set to Variable.",name:"FinalVelocity",type:"Attribute",if:{VelocityMode:"Variable"}},{datatype:"Enum",defaultValue:"Linear",options:["Linear","Exponential","Inverse Exponential","Ease-in, Ease-out"],displayName:"Interpolation Function",info:"Defines the interpolation method for velocity changes over the particle’s lifetime.",name:"VelocityFunction",type:"Attribute",if:{VelocityMode:"Variable"}},{datatype:"Float",defaultValue:.5,displayName:"Interpolation Rate",info:"Controls the rate at which particles transition from initial to final velocity for the interpolation modes.",maxValue:5,minValue:0,name:"FinalVelocityApproach",type:"Attribute",if:{VelocityMode:"Variable",$or:[{VelocityFunction:"Exponential"},{VelocityFunction:"Inverse Exponential"},{VelocityFunction:"Ease-in, Ease-out"}]}},{datatype:"Float",defaultValue:0,displayName:"Spread",info:"Randomly offsets the emission angle (in degrees) from the base direction. A value of 360° emits particles uniformly in all directions. Requires Initial Velocity not be a 0-vector to have any effect.",maxValue:360,minValue:0,name:"Spread",type:"Attribute"},{datatype:"Float",defaultValue:0,displayName:"Angular Velocity",info:"The speed at which particles rotate around their center of mass, in radians per second.",minValue:0,name:"AngularVelocity",type:"Attribute",if:{$or:[{ParticleType:"Texture"},{ParticleType:"Sprite"}]}},{datatype:"Enum",defaultValue:"Clockwise",options:["Clockwise","Anticlockwise"],displayName:"Rotation Direction",info:"Controls the rotation direction of particles.",name:"AngularDirection",type:"Attribute",if:{$or:[{ParticleType:"Texture"},{ParticleType:"Sprite"}]}},{datatype:"Float",defaultValue:0,displayName:"Rotation Randomness",info:"Random variation applied to particle angular velocity. 0 = all particles rotate at the same speed, 1 = each particle can vary ±100% of base angular velocity.",minValue:0,maxValue:1,name:"RotationRandomness",type:"Attribute",if:{$or:[{ParticleType:"Texture"},{ParticleType:"Sprite"}]}},{label:"Force Settings",type:"Separator",collapsed:!0},{datatype:"Float",defaultValue:0,displayName:"Drift",info:"A random velocity added to particles in all directions to simulate drifting motion.",name:"Drift",type:"Attribute"},{datatype:"Float",defaultValue:0,displayName:"Gravity",info:"A constant acceleration applied to particles after emission, simulating gravity. Positive values pull particles downward; negative values pull them upward.",name:"Gravity",type:"Attribute"},{datatype:"Float",defaultValue:0,displayName:"Tangential Velocity",info:"Applies a tangential velocity to particles, causing them to orbit the center point along the defined orbital plane.",name:"OrbitalVelocity",type:"Attribute"},{datatype:"Vector3d",defaultValue:{x:0,y:0,z:0},displayName:"Orbit Center",info:"The point in 3D space around which particles orbit.",name:"OrbitalCenterPoint",type:"Attribute"},{datatype:"Vector3d",defaultValue:{x:0,y:1,z:0},displayName:"Orbital Plane",info:"A vector normal that defines the orientation of the orbital plane. Particles orbit around an axis perpendicular to this vector. Should be normalized (length = 1), but normalization is not enforced.",name:"OrbitalPlane",type:"Attribute"},{datatype:"Float",defaultValue:0,displayName:"Orbital Decay",info:"Causes particles to gradually spiral inward toward the orbital center over time.",name:"OrbitalDecay",type:"Attribute"},{datatype:"Vector3d",defaultValue:{x:0,y:0,z:0},displayName:"Target",info:"A 3D point in space that particles are attracted to.",name:"Target",type:"Attribute"},{datatype:"Float",defaultValue:0,displayName:"Target Force",info:"The strength of the attraction force pulling particles toward the target. Set to 0 to disable.",name:"TargetForce",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Kill on target",info:"If enabled, particles are deleted once they reach the target position.",name:"TargetDeleteFlag",type:"Attribute"},{datatype:"Float",defaultValue:.1,if:{TargetDeleteFlag:!0},displayName:"Target Deletion Threshold",info:"The distance from the target at which particles are deleted.",minValue:0,name:"TargetDeletionThreshold",type:"Attribute"},{label:"Life Settings",type:"Separator",collapsed:!0},{datatype:"Float",defaultValue:10,displayName:"Life",info:"Time in seconds each particle remains alive before disappearing.",minValue:0,name:"Life",type:"Attribute"},{datatype:"Float",defaultValue:0,displayName:"Life Randomness",info:"Adds randomness, in seconds, to particle lifetimes. Each particle's life is calculated as: life + random(0 to 1) x life randomness.",minValue:0,name:"LifeRandomness",type:"Attribute"},{label:"Texture and Color Settings",type:"Separator",collapsed:!0},{datatype:"ParticlePreview",displayName:"Particle Preview",info:"Visual preview of a single particle.",name:"ParticlePreview",type:"Attribute"},{datatype:"Enum",defaultValue:"Base",name:"ParticleType",info:"Defines the rendering style of particles: Base (simple points), Texture (image-based), or Sprite (animated images).",options:["Base","Texture","Sprite"],type:"Attribute"},{displayName:"Texture",info:"Image used as the particle’s texture.",if:{$or:[{ParticleType:"Texture"},{ParticleType:"Sprite"}]},linkableTypes:["Image"],type:"Link",usageAs:"ParticleTexture"},{datatype:"Boolean",defaultValue:!0,displayName:"Circular Mask",info:"Applies a circular alpha mask to the texture or sprite, making only the circular area visible while masking out the corners.",name:"useCircularMask",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,name:"TextureBlending",displayName:"Texture Blending",info:"If enabled, blends the particle texture with the background or other particles for smoother visuals.",if:{$or:[{ParticleType:"Texture"},{ParticleType:"Sprite"}]},type:"Attribute"},{datatype:"Float",defaultValue:0,displayName:"Texture hue",info:"Amount of hue shift applied to the particle texture, expressed as a normalized value from 0 to 1, where 0 corresponds to 0 radians (0°) and 1 corresponds to 2π radians (360°).",minValue:0,maxValue:1,name:"TextureHue",if:{$or:[{ParticleType:"Base"},{TextureBlending:!0}]},type:"Attribute"},{datatype:"Color",defaultValue:{a:255,b:255,g:255,r:255},displayName:"Color",info:"Base color applied to particles at emission.",if:{$or:[{ParticleType:"Base"},{TextureBlending:!0}]},name:"Color",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Use Final Color",info:"Enable color transition so particles interpolate to a specified final color at the end of their lifetime.",if:{$or:[{ParticleType:"Base"},{TextureBlending:!0}]},name:"EnableFinalColor",type:"Attribute"},{datatype:"Color",defaultValue:{a:255,b:255,g:255,r:255},displayName:"Final Color",info:"The color particles interpolate to at the end of their life.",if:{EnableFinalColor:!0,$or:[{ParticleType:"Base"},{TextureBlending:!0}]},name:"FinalColor",type:"Attribute"},{datatype:"Float",defaultValue:0,displayName:"Random Color Factor",info:"Linearly blends each particle's color with a unique random tint. 0 = no randomness, 1 = full random color.",if:{$or:[{ParticleType:"Base"},{TextureBlending:!0}]},minValue:0,maxValue:1,name:"RandomColorFactor",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Enable Sprite Fade",if:{ParticleType:"Sprite"},info:"Allows the sprite to smoothly fade in and fade, creating a softer transition.",name:"EnableSpriteFade",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Roll Sprite With Life",if:{ParticleType:"Sprite"},info:"Enable the sprite to animate by rolling through its frames based on the particle's lifetime.",name:"RollSpriteWithLife",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Sprite Speed",if:{ParticleType:"Sprite",RollSpriteWithLife:!1},info:"Speed, in frames per seconds, at which the sprite animation advances over time.",minValue:0,name:"SpriteSpeed",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Sprite Cols",if:{ParticleType:"Sprite"},info:"Number of horizontal frames (columns) in the sprite sheet. Must be specified manually. Incorrect values may cause improper animation.",minValue:1,name:"SpriteColumns",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Sprite Rows",if:{ParticleType:"Sprite"},info:"Number of vertical frames (rows) in the sprite sheet. Must be specified manually. Incorrect values may cause improper animation.",minValue:1,name:"SpriteRows",type:"Attribute"},{label:"Blending Settings",type:"Separator",collapsed:!0},{datatype:"Enum",defaultValue:"Normal",displayName:"Blending Mode",name:"BlendingMode",options:["Add","Multiply","Negation","Normal","Subtract"],type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Opacity",info:"Adjusts how strongly the blending mode affects the final result.",maxValue:1,minValue:0,name:"Opacity",type:"Attribute",widget:"Slider"},{label:"Fade Settings",type:"Separator",collapsed:!0},{datatype:"Enum",defaultValue:"Constant",options:["Constant","Variable"],displayName:"Fading Mode",info:"Determines how particle opacity changes: constant transparency, fade over lifetime, or based on velocity.",name:"FadeMode",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Initial Opacity",info:"The opacity of particles when they are first emitted (0.0 = transparent, 1.0 = opaque)",minValue:0,maxValue:1,name:"ParticleInitialOpacity",type:"Attribute"},{datatype:"Float",defaultValue:0,displayName:"Final Opacity",info:"The opacity particles reach at the end of their lifetime. Creates fade-out effect when lower than initial opacity.",minValue:0,maxValue:1,name:"ParticleFinalOpacity",type:"Attribute",if:{FadeMode:"Variable"}},{datatype:"Enum",defaultValue:"Linear",options:["Linear","Exponential","Inverse Exponential","Ease-in, Ease-out"],displayName:"Fade Interpolation",info:"Controls how smoothly particles fade between initial and final opacity over their lifetime.",type:"Attribute",name:"FadeFunction",if:{FadeMode:"Variable"}},{datatype:"Float",defaultValue:1,minValue:.1,maxValue:5,if:{FadeMode:"Variable",$or:[{FadeFunction:"Exponential"},{FadeFunction:"Inverse Exponential"},{FadeFunction:"Ease-in, Ease-out"}]},displayName:"Fade Rate",name:"FadeApproach",info:"Controls how quickly the fade transition occurs. Higher values create sharper transitions, lower values create gentler fades.",type:"Attribute"},{label:"Emission Settings",type:"Separator",collapsed:!0},{datatype:"Enum",defaultValue:"Box",name:"EmitterShape",displayName:"Emitter Shape",info:"Defines the geometric shape from which particles are emitted.",options:["Point","Box","Sphere","Hemisphere","Torus","Cone","Circle","Edge"],type:"Attribute"},{datatype:"Enum",defaultValue:"Volume",name:"EmitterTypeSurfaceVolumeNormal",displayName:"Emitter Type",info:"Specifies whether particles are emitted from the surface, volume, or along the normals of the shape.",options:["Surface","Volume","Normals"],if:{$or:[{EmitterShape:"Box"},{EmitterShape:"Sphere"},{EmitterShape:"Cone"}]},type:"Attribute"},{datatype:"Enum",defaultValue:"Volume",name:"EmitterTypeSurfaceVolume",info:"Specifies whether particles are emitted from the surface or volume of the shape.",displayName:"Emitter Type",options:["Surface","Volume"],if:{$or:[{EmitterShape:"Hemisphere"},{EmitterShape:"Torus"}]},type:"Attribute"},{datatype:"Float",defaultValue:10,displayName:"Velocity Along Normals.",info:"Speed at which particles are emitted along the surface normals.",if:{EmitterTypeSurfaceVolumeNormal:"Normals"},minValue:0,name:"NormalsVelocity",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"The size of the emitter.",info:"Defines the size of the emitter.",if:{$or:[{EmitterShape:"Box"}]},minValue:0,name:"EmitterSize",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"The radius of the emitter.",if:{$or:[{EmitterShape:"Torus"},{EmitterShape:"Cone"},{EmitterShape:"Sphere"},{EmitterShape:"Hemisphere"},{EmitterShape:"Circle"}]},minValue:0,name:"EmitterRadius",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"The outer radius of the emitter",if:{$or:[{EmitterShape:"Torus"}]},minValue:0,name:"EmitterOuterRadius",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"The height of the emitter",if:{$or:[{EmitterShape:"Cone"},{EmitterShape:"Edge"}]},minValue:0,name:"EmitterHeight",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"The width of the emitter.",if:{$or:[{EmitterShape:"Edge"}]},minValue:0,name:"EmitterWidth",type:"Attribute"},{datatype:"Boolean",defaultValue:!1,displayName:"Round Tip",if:{$or:[{EmitterShape:"Cone"}]},info:"Round the tip of the cone instead of using a sharp point.",name:"EmitterRoundTip",type:"Attribute"},{label:"Bounding Box Settings",type:"Separator",collapsed:!0},{datatype:"Boolean",defaultValue:!1,displayName:"Enable Bounding Box",info:"Enable a bounding box to restrict particles within a defined 3D area.",name:"EnableBBox",type:"Attribute"},{datatype:"Vector3d",defaultValue:{x:10,y:10,z:10},info:"Coordinates of the bounding box's maximum corner (upper-right-front).",name:"BBoxMax",displayName:"Bounding Box Maximum Corner",if:{EnableBBox:!0},type:"Attribute"},{datatype:"Vector3d",defaultValue:{x:0,y:0,z:0},info:"Coordinates of the bounding box's minimum corner (lower-left-back).",name:"BBoxMin",displayName:"Bounding Box Minimum Corner",if:{EnableBBox:!0},type:"Attribute"},{label:"Curl Noise Settings",type:"Separator",collapsed:!0},{datatype:"Boolean",defaultValue:!1,displayName:"Enable Curl Noise",info:"Toggle curl noise effect on particles to simulate turbulent, swirling particle behavior.",name:"NoiseFlag",type:"Attribute"},{datatype:"NoisePreview",if:{NoiseFlag:!0},displayName:"Noise Preview",info:"Visual preview of the curl noise pattern applied to the particle system.",name:"NoisePreview",type:"Attribute"},{datatype:"Float",defaultValue:0,displayName:"Noise Strength",if:{NoiseFlag:!0},info:"Controls the intensity of the noise.",name:"NoiseStrength",type:"Attribute"},{datatype:"Float",defaultValue:1,displayName:"Noise Frequency",if:{NoiseFlag:!0},info:"Determines the smoothness of the noise: lower values produce smooth, slow variations; higher values produce rapid, detailed changes.",name:"NoiseFrequency",type:"Attribute"},{datatype:"Integer",defaultValue:1,displayName:"Noise Octaves",if:{NoiseFlag:!0},info:"Number of noise layers combined to create complexity. Higher octaves add detail but reduce performance.",name:"NoiseOctaves",type:"Attribute"}],name:"Particles",updateRequiresThumbRefresh:!1,creatableEmpty:!0}];function C(e,t=!1){let a=x.find((t=>t.name===e));if(!a)return null;if(a=structuredClone(a),a.fields=a.fields||[],a.fieldSets=a.fieldSets||[],t&&a.inherits){const e=C(a.inherits,!0);e&&(a.fields=[...e.fields,...a.fields],a.fieldSets=[...e.fieldSets,...a.fieldSets])}return a}var I="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function V(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function E(e){throw new Error('Could not dynamically require "'+e+'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')}var F,D={exports:{}};var R=(F||(F=1,function(e){e.exports=function(){var t,a;function n(){return t.apply(null,arguments)}function i(e){t=e}function r(e){return e instanceof Array||"[object Array]"===Object.prototype.toString.call(e)}function s(e){return null!=e&&"[object Object]"===Object.prototype.toString.call(e)}function o(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function l(e){if(Object.getOwnPropertyNames)return 0===Object.getOwnPropertyNames(e).length;var t;for(t in e)if(o(e,t))return!1;return!0}function u(e){return void 0===e}function c(e){return"number"==typeof e||"[object Number]"===Object.prototype.toString.call(e)}function d(e){return e instanceof Date||"[object Date]"===Object.prototype.toString.call(e)}function p(e,t){var a,n=[],i=e.length;for(a=0;a<i;++a)n.push(t(e[a],a));return n}function h(e,t){for(var a in t)o(t,a)&&(e[a]=t[a]);return o(t,"toString")&&(e.toString=t.toString),o(t,"valueOf")&&(e.valueOf=t.valueOf),e}function f(e,t,a,n){return qa(e,t,a,n,!0).utc()}function m(){return{empty:!1,unusedTokens:[],unusedInput:[],overflow:-2,charsLeftOver:0,nullInput:!1,invalidEra:null,invalidMonth:null,invalidFormat:!1,userInvalidated:!1,iso:!1,parsedDateParts:[],era:null,meridiem:null,rfc2822:!1,weekdayMismatch:!1}}function y(e){return null==e._pf&&(e._pf=m()),e._pf}function g(e){var t=null,n=!1,i=e._d&&!isNaN(e._d.getTime());return i&&(t=y(e),n=a.call(t.parsedDateParts,(function(e){return null!=e})),i=t.overflow<0&&!t.empty&&!t.invalidEra&&!t.invalidMonth&&!t.invalidWeekday&&!t.weekdayMismatch&&!t.nullInput&&!t.invalidFormat&&!t.userInvalidated&&(!t.meridiem||t.meridiem&&n),e._strict&&(i=i&&0===t.charsLeftOver&&0===t.unusedTokens.length&&void 0===t.bigHour)),null!=Object.isFrozen&&Object.isFrozen(e)?i:(e._isValid=i,e._isValid)}function b(e){var t=f(NaN);return null!=e?h(y(t),e):y(t).userInvalidated=!0,t}a=Array.prototype.some?Array.prototype.some:function(e){var t,a=Object(this),n=a.length>>>0;for(t=0;t<n;t++)if(t in a&&e.call(this,a[t],t,a))return!0;return!1};var v=n.momentProperties=[],_=!1;function w(e,t){var a,n,i,r=v.length;if(u(t._isAMomentObject)||(e._isAMomentObject=t._isAMomentObject),u(t._i)||(e._i=t._i),u(t._f)||(e._f=t._f),u(t._l)||(e._l=t._l),u(t._strict)||(e._strict=t._strict),u(t._tzm)||(e._tzm=t._tzm),u(t._isUTC)||(e._isUTC=t._isUTC),u(t._offset)||(e._offset=t._offset),u(t._pf)||(e._pf=y(t)),u(t._locale)||(e._locale=t._locale),r>0)for(a=0;a<r;a++)u(i=t[n=v[a]])||(e[n]=i);return e}function A(e){w(this,e),this._d=new Date(null!=e._d?e._d.getTime():NaN),this.isValid()||(this._d=new Date(NaN)),!1===_&&(_=!0,n.updateOffset(this),_=!1)}function k(e){return e instanceof A||null!=e&&null!=e._isAMomentObject}function S(e){!1===n.suppressDeprecationWarnings&&"undefined"!=typeof console&&console.warn&&console.warn("Deprecation warning: "+e)}function N(e,t){var a=!0;return h((function(){if(null!=n.deprecationHandler&&n.deprecationHandler(null,e),a){var i,r,s,l=[],u=arguments.length;for(r=0;r<u;r++){if(i="","object"==typeof arguments[r]){for(s in i+="\n["+r+"] ",arguments[0])o(arguments[0],s)&&(i+=s+": "+arguments[0][s]+", ");i=i.slice(0,-2)}else i=arguments[r];l.push(i)}S(e+"\nArguments: "+Array.prototype.slice.call(l).join("")+"\n"+(new Error).stack),a=!1}return t.apply(this,arguments)}),t)}var T,M={};function x(e,t){null!=n.deprecationHandler&&n.deprecationHandler(e,t),M[e]||(S(t),M[e]=!0)}function C(e){return"undefined"!=typeof Function&&e instanceof Function||"[object Function]"===Object.prototype.toString.call(e)}function I(e){var t,a;for(a in e)o(e,a)&&(C(t=e[a])?this[a]=t:this["_"+a]=t);this._config=e,this._dayOfMonthOrdinalParseLenient=new RegExp((this._dayOfMonthOrdinalParse.source||this._ordinalParse.source)+"|"+/\d{1,2}/.source)}function V(e,t){var a,n=h({},e);for(a in t)o(t,a)&&(s(e[a])&&s(t[a])?(n[a]={},h(n[a],e[a]),h(n[a],t[a])):null!=t[a]?n[a]=t[a]:delete n[a]);for(a in e)o(e,a)&&!o(t,a)&&s(e[a])&&(n[a]=h({},n[a]));return n}function F(e){null!=e&&this.set(e)}n.suppressDeprecationWarnings=!1,n.deprecationHandler=null,T=Object.keys?Object.keys:function(e){var t,a=[];for(t in e)o(e,t)&&a.push(t);return a};var D={sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"};function R(e,t,a){var n=this._calendar[e]||this._calendar.sameElse;return C(n)?n.call(t,a):n}function L(e,t,a){var n=""+Math.abs(e),i=t-n.length;return(e>=0?a?"+":"":"-")+Math.pow(10,Math.max(0,i)).toString().substr(1)+n}var P=/(\[[^\[]*\])|(\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|N{1,5}|YYYYYY|YYYYY|YYYY|YY|y{2,4}|yo?|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g,B=/(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g,O={},$={};function U(e,t,a,n){var i=n;"string"==typeof n&&(i=function(){return this[n]()}),e&&($[e]=i),t&&($[t[0]]=function(){return L(i.apply(this,arguments),t[1],t[2])}),a&&($[a]=function(){return this.localeData().ordinal(i.apply(this,arguments),e)})}function j(e){return e.match(/\[[\s\S]/)?e.replace(/^\[|\]$/g,""):e.replace(/\\/g,"")}function z(e){var t,a,n=e.match(P);for(t=0,a=n.length;t<a;t++)$[n[t]]?n[t]=$[n[t]]:n[t]=j(n[t]);return function(t){var i,r="";for(i=0;i<a;i++)r+=C(n[i])?n[i].call(t,e):n[i];return r}}function W(e,t){return e.isValid()?(t=Y(t,e.localeData()),O[t]=O[t]||z(t),O[t](e)):e.localeData().invalidDate()}function Y(e,t){var a=5;function n(e){return t.longDateFormat(e)||e}for(B.lastIndex=0;a>=0&&B.test(e);)e=e.replace(B,n),B.lastIndex=0,a-=1;return e}var H={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"};function G(e){var t=this._longDateFormat[e],a=this._longDateFormat[e.toUpperCase()];return t||!a?t:(this._longDateFormat[e]=a.match(P).map((function(e){return"MMMM"===e||"MM"===e||"DD"===e||"dddd"===e?e.slice(1):e})).join(""),this._longDateFormat[e])}var q="Invalid date";function Z(){return this._invalidDate}var J="%d",K=/\d{1,2}/;function X(e){return this._ordinal.replace("%d",e)}var Q={future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",w:"a week",ww:"%d weeks",M:"a month",MM:"%d months",y:"a year",yy:"%d years"};function ee(e,t,a,n){var i=this._relativeTime[a];return C(i)?i(e,t,a,n):i.replace(/%d/i,e)}function te(e,t){var a=this._relativeTime[e>0?"future":"past"];return C(a)?a(t):a.replace(/%s/i,t)}var ae={D:"date",dates:"date",date:"date",d:"day",days:"day",day:"day",e:"weekday",weekdays:"weekday",weekday:"weekday",E:"isoWeekday",isoweekdays:"isoWeekday",isoweekday:"isoWeekday",DDD:"dayOfYear",dayofyears:"dayOfYear",dayofyear:"dayOfYear",h:"hour",hours:"hour",hour:"hour",ms:"millisecond",milliseconds:"millisecond",millisecond:"millisecond",m:"minute",minutes:"minute",minute:"minute",M:"month",months:"month",month:"month",Q:"quarter",quarters:"quarter",quarter:"quarter",s:"second",seconds:"second",second:"second",gg:"weekYear",weekyears:"weekYear",weekyear:"weekYear",GG:"isoWeekYear",isoweekyears:"isoWeekYear",isoweekyear:"isoWeekYear",w:"week",weeks:"week",week:"week",W:"isoWeek",isoweeks:"isoWeek",isoweek:"isoWeek",y:"year",years:"year",year:"year"};function ne(e){return"string"==typeof e?ae[e]||ae[e.toLowerCase()]:void 0}function ie(e){var t,a,n={};for(a in e)o(e,a)&&(t=ne(a))&&(n[t]=e[a]);return n}var re={date:9,day:11,weekday:11,isoWeekday:11,dayOfYear:4,hour:13,millisecond:16,minute:14,month:8,quarter:7,second:15,weekYear:1,isoWeekYear:1,week:5,isoWeek:5,year:1};function se(e){var t,a=[];for(t in e)o(e,t)&&a.push({unit:t,priority:re[t]});return a.sort((function(e,t){return e.priority-t.priority})),a}var oe,le=/\d/,ue=/\d\d/,ce=/\d{3}/,de=/\d{4}/,pe=/[+-]?\d{6}/,he=/\d\d?/,fe=/\d\d\d\d?/,me=/\d\d\d\d\d\d?/,ye=/\d{1,3}/,ge=/\d{1,4}/,be=/[+-]?\d{1,6}/,ve=/\d+/,_e=/[+-]?\d+/,we=/Z|[+-]\d\d:?\d\d/gi,Ae=/Z|[+-]\d\d(?::?\d\d)?/gi,ke=/[+-]?\d+(\.\d{1,3})?/,Se=/[0-9]{0,256}['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFF07\uFF10-\uFFEF]{1,256}|[\u0600-\u06FF\/]{1,256}(\s*?[\u0600-\u06FF]{1,256}){1,2}/i,Ne=/^[1-9]\d?/,Te=/^([1-9]\d|\d)/;function Me(e,t,a){oe[e]=C(t)?t:function(e,n){return e&&a?a:t}}function xe(e,t){return o(oe,e)?oe[e](t._strict,t._locale):new RegExp(Ce(e))}function Ce(e){return Ie(e.replace("\\","").replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g,(function(e,t,a,n,i){return t||a||n||i})))}function Ie(e){return e.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&")}function Ve(e){return e<0?Math.ceil(e)||0:Math.floor(e)}function Ee(e){var t=+e,a=0;return 0!==t&&isFinite(t)&&(a=Ve(t)),a}oe={};var Fe={};function De(e,t){var a,n,i=t;for("string"==typeof e&&(e=[e]),c(t)&&(i=function(e,a){a[t]=Ee(e)}),n=e.length,a=0;a<n;a++)Fe[e[a]]=i}function Re(e,t){De(e,(function(e,a,n,i){n._w=n._w||{},t(e,n._w,n,i)}))}function Le(e,t,a){null!=t&&o(Fe,e)&&Fe[e](t,a._a,a,e)}function Pe(e){return e%4==0&&e%100!=0||e%400==0}var Be=0,Oe=1,$e=2,Ue=3,je=4,ze=5,We=6,Ye=7,He=8;function Ge(e){return Pe(e)?366:365}U("Y",0,0,(function(){var e=this.year();return e<=9999?L(e,4):"+"+e})),U(0,["YY",2],0,(function(){return this.year()%100})),U(0,["YYYY",4],0,"year"),U(0,["YYYYY",5],0,"year"),U(0,["YYYYYY",6,!0],0,"year"),Me("Y",_e),Me("YY",he,ue),Me("YYYY",ge,de),Me("YYYYY",be,pe),Me("YYYYYY",be,pe),De(["YYYYY","YYYYYY"],Be),De("YYYY",(function(e,t){t[Be]=2===e.length?n.parseTwoDigitYear(e):Ee(e)})),De("YY",(function(e,t){t[Be]=n.parseTwoDigitYear(e)})),De("Y",(function(e,t){t[Be]=parseInt(e,10)})),n.parseTwoDigitYear=function(e){return Ee(e)+(Ee(e)>68?1900:2e3)};var qe,Ze=Ke("FullYear",!0);function Je(){return Pe(this.year())}function Ke(e,t){return function(a){return null!=a?(Qe(this,e,a),n.updateOffset(this,t),this):Xe(this,e)}}function Xe(e,t){if(!e.isValid())return NaN;var a=e._d,n=e._isUTC;switch(t){case"Milliseconds":return n?a.getUTCMilliseconds():a.getMilliseconds();case"Seconds":return n?a.getUTCSeconds():a.getSeconds();case"Minutes":return n?a.getUTCMinutes():a.getMinutes();case"Hours":return n?a.getUTCHours():a.getHours();case"Date":return n?a.getUTCDate():a.getDate();case"Day":return n?a.getUTCDay():a.getDay();case"Month":return n?a.getUTCMonth():a.getMonth();case"FullYear":return n?a.getUTCFullYear():a.getFullYear();default:return NaN}}function Qe(e,t,a){var n,i,r,s,o;if(e.isValid()&&!isNaN(a)){switch(n=e._d,i=e._isUTC,t){case"Milliseconds":return void(i?n.setUTCMilliseconds(a):n.setMilliseconds(a));case"Seconds":return void(i?n.setUTCSeconds(a):n.setSeconds(a));case"Minutes":return void(i?n.setUTCMinutes(a):n.setMinutes(a));case"Hours":return void(i?n.setUTCHours(a):n.setHours(a));case"Date":return void(i?n.setUTCDate(a):n.setDate(a));case"FullYear":break;default:return}r=a,s=e.month(),o=29!==(o=e.date())||1!==s||Pe(r)?o:28,i?n.setUTCFullYear(r,s,o):n.setFullYear(r,s,o)}}function et(e){return C(this[e=ne(e)])?this[e]():this}function tt(e,t){if("object"==typeof e){var a,n=se(e=ie(e)),i=n.length;for(a=0;a<i;a++)this[n[a].unit](e[n[a].unit])}else if(C(this[e=ne(e)]))return this[e](t);return this}function at(e,t){return(e%t+t)%t}function nt(e,t){if(isNaN(e)||isNaN(t))return NaN;var a=at(t,12);return e+=(t-a)/12,1===a?Pe(e)?29:28:31-a%7%2}qe=Array.prototype.indexOf?Array.prototype.indexOf:function(e){var t;for(t=0;t<this.length;++t)if(this[t]===e)return t;return-1},U("M",["MM",2],"Mo",(function(){return this.month()+1})),U("MMM",0,0,(function(e){return this.localeData().monthsShort(this,e)})),U("MMMM",0,0,(function(e){return this.localeData().months(this,e)})),Me("M",he,Ne),Me("MM",he,ue),Me("MMM",(function(e,t){return t.monthsShortRegex(e)})),Me("MMMM",(function(e,t){return t.monthsRegex(e)})),De(["M","MM"],(function(e,t){t[Oe]=Ee(e)-1})),De(["MMM","MMMM"],(function(e,t,a,n){var i=a._locale.monthsParse(e,n,a._strict);null!=i?t[Oe]=i:y(a).invalidMonth=e}));var it="January_February_March_April_May_June_July_August_September_October_November_December".split("_"),rt="Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),st=/D[oD]?(\[[^\[\]]*\]|\s)+MMMM?/,ot=Se,lt=Se;function ut(e,t){return e?r(this._months)?this._months[e.month()]:this._months[(this._months.isFormat||st).test(t)?"format":"standalone"][e.month()]:r(this._months)?this._months:this._months.standalone}function ct(e,t){return e?r(this._monthsShort)?this._monthsShort[e.month()]:this._monthsShort[st.test(t)?"format":"standalone"][e.month()]:r(this._monthsShort)?this._monthsShort:this._monthsShort.standalone}function dt(e,t,a){var n,i,r,s=e.toLocaleLowerCase();if(!this._monthsParse)for(this._monthsParse=[],this._longMonthsParse=[],this._shortMonthsParse=[],n=0;n<12;++n)r=f([2e3,n]),this._shortMonthsParse[n]=this.monthsShort(r,"").toLocaleLowerCase(),this._longMonthsParse[n]=this.months(r,"").toLocaleLowerCase();return a?"MMM"===t?-1!==(i=qe.call(this._shortMonthsParse,s))?i:null:-1!==(i=qe.call(this._longMonthsParse,s))?i:null:"MMM"===t?-1!==(i=qe.call(this._shortMonthsParse,s))||-1!==(i=qe.call(this._longMonthsParse,s))?i:null:-1!==(i=qe.call(this._longMonthsParse,s))||-1!==(i=qe.call(this._shortMonthsParse,s))?i:null}function pt(e,t,a){var n,i,r;if(this._monthsParseExact)return dt.call(this,e,t,a);for(this._monthsParse||(this._monthsParse=[],this._longMonthsParse=[],this._shortMonthsParse=[]),n=0;n<12;n++){if(i=f([2e3,n]),a&&!this._longMonthsParse[n]&&(this._longMonthsParse[n]=new RegExp("^"+this.months(i,"").replace(".","")+"$","i"),this._shortMonthsParse[n]=new RegExp("^"+this.monthsShort(i,"").replace(".","")+"$","i")),a||this._monthsParse[n]||(r="^"+this.months(i,"")+"|^"+this.monthsShort(i,""),this._monthsParse[n]=new RegExp(r.replace(".",""),"i")),a&&"MMMM"===t&&this._longMonthsParse[n].test(e))return n;if(a&&"MMM"===t&&this._shortMonthsParse[n].test(e))return n;if(!a&&this._monthsParse[n].test(e))return n}}function ht(e,t){if(!e.isValid())return e;if("string"==typeof t)if(/^\d+$/.test(t))t=Ee(t);else if(!c(t=e.localeData().monthsParse(t)))return e;var a=t,n=e.date();return n=n<29?n:Math.min(n,nt(e.year(),a)),e._isUTC?e._d.setUTCMonth(a,n):e._d.setMonth(a,n),e}function ft(e){return null!=e?(ht(this,e),n.updateOffset(this,!0),this):Xe(this,"Month")}function mt(){return nt(this.year(),this.month())}function yt(e){return this._monthsParseExact?(o(this,"_monthsRegex")||bt.call(this),e?this._monthsShortStrictRegex:this._monthsShortRegex):(o(this,"_monthsShortRegex")||(this._monthsShortRegex=ot),this._monthsShortStrictRegex&&e?this._monthsShortStrictRegex:this._monthsShortRegex)}function gt(e){return this._monthsParseExact?(o(this,"_monthsRegex")||bt.call(this),e?this._monthsStrictRegex:this._monthsRegex):(o(this,"_monthsRegex")||(this._monthsRegex=lt),this._monthsStrictRegex&&e?this._monthsStrictRegex:this._monthsRegex)}function bt(){function e(e,t){return t.length-e.length}var t,a,n,i,r=[],s=[],o=[];for(t=0;t<12;t++)a=f([2e3,t]),n=Ie(this.monthsShort(a,"")),i=Ie(this.months(a,"")),r.push(n),s.push(i),o.push(i),o.push(n);r.sort(e),s.sort(e),o.sort(e),this._monthsRegex=new RegExp("^("+o.join("|")+")","i"),this._monthsShortRegex=this._monthsRegex,this._monthsStrictRegex=new RegExp("^("+s.join("|")+")","i"),this._monthsShortStrictRegex=new RegExp("^("+r.join("|")+")","i")}function vt(e,t,a,n,i,r,s){var o;return e<100&&e>=0?(o=new Date(e+400,t,a,n,i,r,s),isFinite(o.getFullYear())&&o.setFullYear(e)):o=new Date(e,t,a,n,i,r,s),o}function _t(e){var t,a;return e<100&&e>=0?((a=Array.prototype.slice.call(arguments))[0]=e+400,t=new Date(Date.UTC.apply(null,a)),isFinite(t.getUTCFullYear())&&t.setUTCFullYear(e)):t=new Date(Date.UTC.apply(null,arguments)),t}function wt(e,t,a){var n=7+t-a;return-(7+_t(e,0,n).getUTCDay()-t)%7+n-1}function At(e,t,a,n,i){var r,s,o=1+7*(t-1)+(7+a-n)%7+wt(e,n,i);return o<=0?s=Ge(r=e-1)+o:o>Ge(e)?(r=e+1,s=o-Ge(e)):(r=e,s=o),{year:r,dayOfYear:s}}function kt(e,t,a){var n,i,r=wt(e.year(),t,a),s=Math.floor((e.dayOfYear()-r-1)/7)+1;return s<1?n=s+St(i=e.year()-1,t,a):s>St(e.year(),t,a)?(n=s-St(e.year(),t,a),i=e.year()+1):(i=e.year(),n=s),{week:n,year:i}}function St(e,t,a){var n=wt(e,t,a),i=wt(e+1,t,a);return(Ge(e)-n+i)/7}function Nt(e){return kt(e,this._week.dow,this._week.doy).week}U("w",["ww",2],"wo","week"),U("W",["WW",2],"Wo","isoWeek"),Me("w",he,Ne),Me("ww",he,ue),Me("W",he,Ne),Me("WW",he,ue),Re(["w","ww","W","WW"],(function(e,t,a,n){t[n.substr(0,1)]=Ee(e)}));var Tt={dow:0,doy:6};function Mt(){return this._week.dow}function xt(){return this._week.doy}function Ct(e){var t=this.localeData().week(this);return null==e?t:this.add(7*(e-t),"d")}function It(e){var t=kt(this,1,4).week;return null==e?t:this.add(7*(e-t),"d")}function Vt(e,t){return"string"!=typeof e?e:isNaN(e)?"number"==typeof(e=t.weekdaysParse(e))?e:null:parseInt(e,10)}function Et(e,t){return"string"==typeof e?t.weekdaysParse(e)%7||7:isNaN(e)?null:e}function Ft(e,t){return e.slice(t,7).concat(e.slice(0,t))}U("d",0,"do","day"),U("dd",0,0,(function(e){return this.localeData().weekdaysMin(this,e)})),U("ddd",0,0,(function(e){return this.localeData().weekdaysShort(this,e)})),U("dddd",0,0,(function(e){return this.localeData().weekdays(this,e)})),U("e",0,0,"weekday"),U("E",0,0,"isoWeekday"),Me("d",he),Me("e",he),Me("E",he),Me("dd",(function(e,t){return t.weekdaysMinRegex(e)})),Me("ddd",(function(e,t){return t.weekdaysShortRegex(e)})),Me("dddd",(function(e,t){return t.weekdaysRegex(e)})),Re(["dd","ddd","dddd"],(function(e,t,a,n){var i=a._locale.weekdaysParse(e,n,a._strict);null!=i?t.d=i:y(a).invalidWeekday=e})),Re(["d","e","E"],(function(e,t,a,n){t[n]=Ee(e)}));var Dt="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),Rt="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),Lt="Su_Mo_Tu_We_Th_Fr_Sa".split("_"),Pt=Se,Bt=Se,Ot=Se;function $t(e,t){var a=r(this._weekdays)?this._weekdays:this._weekdays[e&&!0!==e&&this._weekdays.isFormat.test(t)?"format":"standalone"];return!0===e?Ft(a,this._week.dow):e?a[e.day()]:a}function Ut(e){return!0===e?Ft(this._weekdaysShort,this._week.dow):e?this._weekdaysShort[e.day()]:this._weekdaysShort}function jt(e){return!0===e?Ft(this._weekdaysMin,this._week.dow):e?this._weekdaysMin[e.day()]:this._weekdaysMin}function zt(e,t,a){var n,i,r,s=e.toLocaleLowerCase();if(!this._weekdaysParse)for(this._weekdaysParse=[],this._shortWeekdaysParse=[],this._minWeekdaysParse=[],n=0;n<7;++n)r=f([2e3,1]).day(n),this._minWeekdaysParse[n]=this.weekdaysMin(r,"").toLocaleLowerCase(),this._shortWeekdaysParse[n]=this.weekdaysShort(r,"").toLocaleLowerCase(),this._weekdaysParse[n]=this.weekdays(r,"").toLocaleLowerCase();return a?"dddd"===t?-1!==(i=qe.call(this._weekdaysParse,s))?i:null:"ddd"===t?-1!==(i=qe.call(this._shortWeekdaysParse,s))?i:null:-1!==(i=qe.call(this._minWeekdaysParse,s))?i:null:"dddd"===t?-1!==(i=qe.call(this._weekdaysParse,s))||-1!==(i=qe.call(this._shortWeekdaysParse,s))||-1!==(i=qe.call(this._minWeekdaysParse,s))?i:null:"ddd"===t?-1!==(i=qe.call(this._shortWeekdaysParse,s))||-1!==(i=qe.call(this._weekdaysParse,s))||-1!==(i=qe.call(this._minWeekdaysParse,s))?i:null:-1!==(i=qe.call(this._minWeekdaysParse,s))||-1!==(i=qe.call(this._weekdaysParse,s))||-1!==(i=qe.call(this._shortWeekdaysParse,s))?i:null}function Wt(e,t,a){var n,i,r;if(this._weekdaysParseExact)return zt.call(this,e,t,a);for(this._weekdaysParse||(this._weekdaysParse=[],this._minWeekdaysParse=[],this._shortWeekdaysParse=[],this._fullWeekdaysParse=[]),n=0;n<7;n++){if(i=f([2e3,1]).day(n),a&&!this._fullWeekdaysParse[n]&&(this._fullWeekdaysParse[n]=new RegExp("^"+this.weekdays(i,"").replace(".","\\.?")+"$","i"),this._shortWeekdaysParse[n]=new RegExp("^"+this.weekdaysShort(i,"").replace(".","\\.?")+"$","i"),this._minWeekdaysParse[n]=new RegExp("^"+this.weekdaysMin(i,"").replace(".","\\.?")+"$","i")),this._weekdaysParse[n]||(r="^"+this.weekdays(i,"")+"|^"+this.weekdaysShort(i,"")+"|^"+this.weekdaysMin(i,""),this._weekdaysParse[n]=new RegExp(r.replace(".",""),"i")),a&&"dddd"===t&&this._fullWeekdaysParse[n].test(e))return n;if(a&&"ddd"===t&&this._shortWeekdaysParse[n].test(e))return n;if(a&&"dd"===t&&this._minWeekdaysParse[n].test(e))return n;if(!a&&this._weekdaysParse[n].test(e))return n}}function Yt(e){if(!this.isValid())return null!=e?this:NaN;var t=Xe(this,"Day");return null!=e?(e=Vt(e,this.localeData()),this.add(e-t,"d")):t}function Ht(e){if(!this.isValid())return null!=e?this:NaN;var t=(this.day()+7-this.localeData()._week.dow)%7;return null==e?t:this.add(e-t,"d")}function Gt(e){if(!this.isValid())return null!=e?this:NaN;if(null!=e){var t=Et(e,this.localeData());return this.day(this.day()%7?t:t-7)}return this.day()||7}function qt(e){return this._weekdaysParseExact?(o(this,"_weekdaysRegex")||Kt.call(this),e?this._weekdaysStrictRegex:this._weekdaysRegex):(o(this,"_weekdaysRegex")||(this._weekdaysRegex=Pt),this._weekdaysStrictRegex&&e?this._weekdaysStrictRegex:this._weekdaysRegex)}function Zt(e){return this._weekdaysParseExact?(o(this,"_weekdaysRegex")||Kt.call(this),e?this._weekdaysShortStrictRegex:this._weekdaysShortRegex):(o(this,"_weekdaysShortRegex")||(this._weekdaysShortRegex=Bt),this._weekdaysShortStrictRegex&&e?this._weekdaysShortStrictRegex:this._weekdaysShortRegex)}function Jt(e){return this._weekdaysParseExact?(o(this,"_weekdaysRegex")||Kt.call(this),e?this._weekdaysMinStrictRegex:this._weekdaysMinRegex):(o(this,"_weekdaysMinRegex")||(this._weekdaysMinRegex=Ot),this._weekdaysMinStrictRegex&&e?this._weekdaysMinStrictRegex:this._weekdaysMinRegex)}function Kt(){function e(e,t){return t.length-e.length}var t,a,n,i,r,s=[],o=[],l=[],u=[];for(t=0;t<7;t++)a=f([2e3,1]).day(t),n=Ie(this.weekdaysMin(a,"")),i=Ie(this.weekdaysShort(a,"")),r=Ie(this.weekdays(a,"")),s.push(n),o.push(i),l.push(r),u.push(n),u.push(i),u.push(r);s.sort(e),o.sort(e),l.sort(e),u.sort(e),this._weekdaysRegex=new RegExp("^("+u.join("|")+")","i"),this._weekdaysShortRegex=this._weekdaysRegex,this._weekdaysMinRegex=this._weekdaysRegex,this._weekdaysStrictRegex=new RegExp("^("+l.join("|")+")","i"),this._weekdaysShortStrictRegex=new RegExp("^("+o.join("|")+")","i"),this._weekdaysMinStrictRegex=new RegExp("^("+s.join("|")+")","i")}function Xt(){return this.hours()%12||12}function Qt(){return this.hours()||24}function ea(e,t){U(e,0,0,(function(){return this.localeData().meridiem(this.hours(),this.minutes(),t)}))}function ta(e,t){return t._meridiemParse}function aa(e){return"p"===(e+"").toLowerCase().charAt(0)}U("H",["HH",2],0,"hour"),U("h",["hh",2],0,Xt),U("k",["kk",2],0,Qt),U("hmm",0,0,(function(){return""+Xt.apply(this)+L(this.minutes(),2)})),U("hmmss",0,0,(function(){return""+Xt.apply(this)+L(this.minutes(),2)+L(this.seconds(),2)})),U("Hmm",0,0,(function(){return""+this.hours()+L(this.minutes(),2)})),U("Hmmss",0,0,(function(){return""+this.hours()+L(this.minutes(),2)+L(this.seconds(),2)})),ea("a",!0),ea("A",!1),Me("a",ta),Me("A",ta),Me("H",he,Te),Me("h",he,Ne),Me("k",he,Ne),Me("HH",he,ue),Me("hh",he,ue),Me("kk",he,ue),Me("hmm",fe),Me("hmmss",me),Me("Hmm",fe),Me("Hmmss",me),De(["H","HH"],Ue),De(["k","kk"],(function(e,t,a){var n=Ee(e);t[Ue]=24===n?0:n})),De(["a","A"],(function(e,t,a){a._isPm=a._locale.isPM(e),a._meridiem=e})),De(["h","hh"],(function(e,t,a){t[Ue]=Ee(e),y(a).bigHour=!0})),De("hmm",(function(e,t,a){var n=e.length-2;t[Ue]=Ee(e.substr(0,n)),t[je]=Ee(e.substr(n)),y(a).bigHour=!0})),De("hmmss",(function(e,t,a){var n=e.length-4,i=e.length-2;t[Ue]=Ee(e.substr(0,n)),t[je]=Ee(e.substr(n,2)),t[ze]=Ee(e.substr(i)),y(a).bigHour=!0})),De("Hmm",(function(e,t,a){var n=e.length-2;t[Ue]=Ee(e.substr(0,n)),t[je]=Ee(e.substr(n))})),De("Hmmss",(function(e,t,a){var n=e.length-4,i=e.length-2;t[Ue]=Ee(e.substr(0,n)),t[je]=Ee(e.substr(n,2)),t[ze]=Ee(e.substr(i))}));var na=/[ap]\.?m?\.?/i,ia=Ke("Hours",!0);function ra(e,t,a){return e>11?a?"pm":"PM":a?"am":"AM"}var sa,oa={calendar:D,longDateFormat:H,invalidDate:q,ordinal:J,dayOfMonthOrdinalParse:K,relativeTime:Q,months:it,monthsShort:rt,week:Tt,weekdays:Dt,weekdaysMin:Lt,weekdaysShort:Rt,meridiemParse:na},la={},ua={};function ca(e,t){var a,n=Math.min(e.length,t.length);for(a=0;a<n;a+=1)if(e[a]!==t[a])return a;return n}function da(e){return e?e.toLowerCase().replace("_","-"):e}function pa(e){for(var t,a,n,i,r=0;r<e.length;){for(t=(i=da(e[r]).split("-")).length,a=(a=da(e[r+1]))?a.split("-"):null;t>0;){if(n=fa(i.slice(0,t).join("-")))return n;if(a&&a.length>=t&&ca(i,a)>=t-1)break;t--}r++}return sa}function ha(e){return!(!e||!e.match("^[^/\\\\]*$"))}function fa(t){var a=null;if(void 0===la[t]&&e&&e.exports&&ha(t))try{a=sa._abbr,E("./locale/"+t),ma(a)}catch(e){la[t]=null}return la[t]}function ma(e,t){var a;return e&&((a=u(t)?ba(e):ya(e,t))?sa=a:"undefined"!=typeof console&&console.warn&&console.warn("Locale "+e+" not found. Did you forget to load it?")),sa._abbr}function ya(e,t){if(null!==t){var a,n=oa;if(t.abbr=e,null!=la[e])x("defineLocaleOverride","use moment.updateLocale(localeName, config) to change an existing locale. moment.defineLocale(localeName, config) should only be used for creating a new locale See http://momentjs.com/guides/#/warnings/define-locale/ for more info."),n=la[e]._config;else if(null!=t.parentLocale)if(null!=la[t.parentLocale])n=la[t.parentLocale]._config;else{if(null==(a=fa(t.parentLocale)))return ua[t.parentLocale]||(ua[t.parentLocale]=[]),ua[t.parentLocale].push({name:e,config:t}),null;n=a._config}return la[e]=new F(V(n,t)),ua[e]&&ua[e].forEach((function(e){ya(e.name,e.config)})),ma(e),la[e]}return delete la[e],null}function ga(e,t){if(null!=t){var a,n,i=oa;null!=la[e]&&null!=la[e].parentLocale?la[e].set(V(la[e]._config,t)):(null!=(n=fa(e))&&(i=n._config),t=V(i,t),null==n&&(t.abbr=e),(a=new F(t)).parentLocale=la[e],la[e]=a),ma(e)}else null!=la[e]&&(null!=la[e].parentLocale?(la[e]=la[e].parentLocale,e===ma()&&ma(e)):null!=la[e]&&delete la[e]);return la[e]}function ba(e){var t;if(e&&e._locale&&e._locale._abbr&&(e=e._locale._abbr),!e)return sa;if(!r(e)){if(t=fa(e))return t;e=[e]}return pa(e)}function va(){return T(la)}function _a(e){var t,a=e._a;return a&&-2===y(e).overflow&&(t=a[Oe]<0||a[Oe]>11?Oe:a[$e]<1||a[$e]>nt(a[Be],a[Oe])?$e:a[Ue]<0||a[Ue]>24||24===a[Ue]&&(0!==a[je]||0!==a[ze]||0!==a[We])?Ue:a[je]<0||a[je]>59?je:a[ze]<0||a[ze]>59?ze:a[We]<0||a[We]>999?We:-1,y(e)._overflowDayOfYear&&(t<Be||t>$e)&&(t=$e),y(e)._overflowWeeks&&-1===t&&(t=Ye),y(e)._overflowWeekday&&-1===t&&(t=He),y(e).overflow=t),e}var wa=/^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([+-]\d\d(?::?\d\d)?|\s*Z)?)?$/,Aa=/^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d|))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([+-]\d\d(?::?\d\d)?|\s*Z)?)?$/,ka=/Z|[+-]\d\d(?::?\d\d)?/,Sa=[["YYYYYY-MM-DD",/[+-]\d{6}-\d\d-\d\d/],["YYYY-MM-DD",/\d{4}-\d\d-\d\d/],["GGGG-[W]WW-E",/\d{4}-W\d\d-\d/],["GGGG-[W]WW",/\d{4}-W\d\d/,!1],["YYYY-DDD",/\d{4}-\d{3}/],["YYYY-MM",/\d{4}-\d\d/,!1],["YYYYYYMMDD",/[+-]\d{10}/],["YYYYMMDD",/\d{8}/],["GGGG[W]WWE",/\d{4}W\d{3}/],["GGGG[W]WW",/\d{4}W\d{2}/,!1],["YYYYDDD",/\d{7}/],["YYYYMM",/\d{6}/,!1],["YYYY",/\d{4}/,!1]],Na=[["HH:mm:ss.SSSS",/\d\d:\d\d:\d\d\.\d+/],["HH:mm:ss,SSSS",/\d\d:\d\d:\d\d,\d+/],["HH:mm:ss",/\d\d:\d\d:\d\d/],["HH:mm",/\d\d:\d\d/],["HHmmss.SSSS",/\d\d\d\d\d\d\.\d+/],["HHmmss,SSSS",/\d\d\d\d\d\d,\d+/],["HHmmss",/\d\d\d\d\d\d/],["HHmm",/\d\d\d\d/],["HH",/\d\d/]],Ta=/^\/?Date\((-?\d+)/i,Ma=/^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),?\s)?(\d{1,2})\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(\d{2,4})\s(\d\d):(\d\d)(?::(\d\d))?\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|([+-]\d{4}))$/,xa={UT:0,GMT:0,EDT:-240,EST:-300,CDT:-300,CST:-360,MDT:-360,MST:-420,PDT:-420,PST:-480};function Ca(e){var t,a,n,i,r,s,o=e._i,l=wa.exec(o)||Aa.exec(o),u=Sa.length,c=Na.length;if(l){for(y(e).iso=!0,t=0,a=u;t<a;t++)if(Sa[t][1].exec(l[1])){i=Sa[t][0],n=!1!==Sa[t][2];break}if(null==i)return void(e._isValid=!1);if(l[3]){for(t=0,a=c;t<a;t++)if(Na[t][1].exec(l[3])){r=(l[2]||" ")+Na[t][0];break}if(null==r)return void(e._isValid=!1)}if(!n&&null!=r)return void(e._isValid=!1);if(l[4]){if(!ka.exec(l[4]))return void(e._isValid=!1);s="Z"}e._f=i+(r||"")+(s||""),Ua(e)}else e._isValid=!1}function Ia(e,t,a,n,i,r){var s=[Va(e),rt.indexOf(t),parseInt(a,10),parseInt(n,10),parseInt(i,10)];return r&&s.push(parseInt(r,10)),s}function Va(e){var t=parseInt(e,10);return t<=49?2e3+t:t<=999?1900+t:t}function Ea(e){return e.replace(/\([^()]*\)|[\n\t]/g," ").replace(/(\s\s+)/g," ").replace(/^\s\s*/,"").replace(/\s\s*$/,"")}function Fa(e,t,a){return!e||Rt.indexOf(e)===new Date(t[0],t[1],t[2]).getDay()||(y(a).weekdayMismatch=!0,a._isValid=!1,!1)}function Da(e,t,a){if(e)return xa[e];if(t)return 0;var n=parseInt(a,10),i=n%100;return(n-i)/100*60+i}function Ra(e){var t,a=Ma.exec(Ea(e._i));if(a){if(t=Ia(a[4],a[3],a[2],a[5],a[6],a[7]),!Fa(a[1],t,e))return;e._a=t,e._tzm=Da(a[8],a[9],a[10]),e._d=_t.apply(null,e._a),e._d.setUTCMinutes(e._d.getUTCMinutes()-e._tzm),y(e).rfc2822=!0}else e._isValid=!1}function La(e){var t=Ta.exec(e._i);null===t?(Ca(e),!1===e._isValid&&(delete e._isValid,Ra(e),!1===e._isValid&&(delete e._isValid,e._strict?e._isValid=!1:n.createFromInputFallback(e)))):e._d=new Date(+t[1])}function Pa(e,t,a){return null!=e?e:null!=t?t:a}function Ba(e){var t=new Date(n.now());return e._useUTC?[t.getUTCFullYear(),t.getUTCMonth(),t.getUTCDate()]:[t.getFullYear(),t.getMonth(),t.getDate()]}function Oa(e){var t,a,n,i,r,s=[];if(!e._d){for(n=Ba(e),e._w&&null==e._a[$e]&&null==e._a[Oe]&&$a(e),null!=e._dayOfYear&&(r=Pa(e._a[Be],n[Be]),(e._dayOfYear>Ge(r)||0===e._dayOfYear)&&(y(e)._overflowDayOfYear=!0),a=_t(r,0,e._dayOfYear),e._a[Oe]=a.getUTCMonth(),e._a[$e]=a.getUTCDate()),t=0;t<3&&null==e._a[t];++t)e._a[t]=s[t]=n[t];for(;t<7;t++)e._a[t]=s[t]=null==e._a[t]?2===t?1:0:e._a[t];24===e._a[Ue]&&0===e._a[je]&&0===e._a[ze]&&0===e._a[We]&&(e._nextDay=!0,e._a[Ue]=0),e._d=(e._useUTC?_t:vt).apply(null,s),i=e._useUTC?e._d.getUTCDay():e._d.getDay(),null!=e._tzm&&e._d.setUTCMinutes(e._d.getUTCMinutes()-e._tzm),e._nextDay&&(e._a[Ue]=24),e._w&&void 0!==e._w.d&&e._w.d!==i&&(y(e).weekdayMismatch=!0)}}function $a(e){var t,a,n,i,r,s,o,l,u;null!=(t=e._w).GG||null!=t.W||null!=t.E?(r=1,s=4,a=Pa(t.GG,e._a[Be],kt(Za(),1,4).year),n=Pa(t.W,1),((i=Pa(t.E,1))<1||i>7)&&(l=!0)):(r=e._locale._week.dow,s=e._locale._week.doy,u=kt(Za(),r,s),a=Pa(t.gg,e._a[Be],u.year),n=Pa(t.w,u.week),null!=t.d?((i=t.d)<0||i>6)&&(l=!0):null!=t.e?(i=t.e+r,(t.e<0||t.e>6)&&(l=!0)):i=r),n<1||n>St(a,r,s)?y(e)._overflowWeeks=!0:null!=l?y(e)._overflowWeekday=!0:(o=At(a,n,i,r,s),e._a[Be]=o.year,e._dayOfYear=o.dayOfYear)}function Ua(e){if(e._f!==n.ISO_8601)if(e._f!==n.RFC_2822){e._a=[],y(e).empty=!0;var t,a,i,r,s,o,l,u=""+e._i,c=u.length,d=0;for(l=(i=Y(e._f,e._locale).match(P)||[]).length,t=0;t<l;t++)r=i[t],(a=(u.match(xe(r,e))||[])[0])&&((s=u.substr(0,u.indexOf(a))).length>0&&y(e).unusedInput.push(s),u=u.slice(u.indexOf(a)+a.length),d+=a.length),$[r]?(a?y(e).empty=!1:y(e).unusedTokens.push(r),Le(r,a,e)):e._strict&&!a&&y(e).unusedTokens.push(r);y(e).charsLeftOver=c-d,u.length>0&&y(e).unusedInput.push(u),e._a[Ue]<=12&&!0===y(e).bigHour&&e._a[Ue]>0&&(y(e).bigHour=void 0),y(e).parsedDateParts=e._a.slice(0),y(e).meridiem=e._meridiem,e._a[Ue]=ja(e._locale,e._a[Ue],e._meridiem),null!==(o=y(e).era)&&(e._a[Be]=e._locale.erasConvertYear(o,e._a[Be])),Oa(e),_a(e)}else Ra(e);else Ca(e)}function ja(e,t,a){var n;return null==a?t:null!=e.meridiemHour?e.meridiemHour(t,a):null!=e.isPM?((n=e.isPM(a))&&t<12&&(t+=12),n||12!==t||(t=0),t):t}function za(e){var t,a,n,i,r,s,o=!1,l=e._f.length;if(0===l)return y(e).invalidFormat=!0,void(e._d=new Date(NaN));for(i=0;i<l;i++)r=0,s=!1,t=w({},e),null!=e._useUTC&&(t._useUTC=e._useUTC),t._f=e._f[i],Ua(t),g(t)&&(s=!0),r+=y(t).charsLeftOver,r+=10*y(t).unusedTokens.length,y(t).score=r,o?r<n&&(n=r,a=t):(null==n||r<n||s)&&(n=r,a=t,s&&(o=!0));h(e,a||t)}function Wa(e){if(!e._d){var t=ie(e._i),a=void 0===t.day?t.date:t.day;e._a=p([t.year,t.month,a,t.hour,t.minute,t.second,t.millisecond],(function(e){return e&&parseInt(e,10)})),Oa(e)}}function Ya(e){var t=new A(_a(Ha(e)));return t._nextDay&&(t.add(1,"d"),t._nextDay=void 0),t}function Ha(e){var t=e._i,a=e._f;return e._locale=e._locale||ba(e._l),null===t||void 0===a&&""===t?b({nullInput:!0}):("string"==typeof t&&(e._i=t=e._locale.preparse(t)),k(t)?new A(_a(t)):(d(t)?e._d=t:r(a)?za(e):a?Ua(e):Ga(e),g(e)||(e._d=null),e))}function Ga(e){var t=e._i;u(t)?e._d=new Date(n.now()):d(t)?e._d=new Date(t.valueOf()):"string"==typeof t?La(e):r(t)?(e._a=p(t.slice(0),(function(e){return parseInt(e,10)})),Oa(e)):s(t)?Wa(e):c(t)?e._d=new Date(t):n.createFromInputFallback(e)}function qa(e,t,a,n,i){var o={};return!0!==t&&!1!==t||(n=t,t=void 0),!0!==a&&!1!==a||(n=a,a=void 0),(s(e)&&l(e)||r(e)&&0===e.length)&&(e=void 0),o._isAMomentObject=!0,o._useUTC=o._isUTC=i,o._l=a,o._i=e,o._f=t,o._strict=n,Ya(o)}function Za(e,t,a,n){return qa(e,t,a,n,!1)}n.createFromInputFallback=N("value provided is not in a recognized RFC2822 or ISO format. moment construction falls back to js Date(), which is not reliable across all browsers and versions. Non RFC2822/ISO date formats are discouraged. Please refer to http://momentjs.com/guides/#/warnings/js-date/ for more info.",(function(e){e._d=new Date(e._i+(e._useUTC?" UTC":""))})),n.ISO_8601=function(){},n.RFC_2822=function(){};var Ja=N("moment().min is deprecated, use moment.max instead. http://momentjs.com/guides/#/warnings/min-max/",(function(){var e=Za.apply(null,arguments);return this.isValid()&&e.isValid()?e<this?this:e:b()})),Ka=N("moment().max is deprecated, use moment.min instead. http://momentjs.com/guides/#/warnings/min-max/",(function(){var e=Za.apply(null,arguments);return this.isValid()&&e.isValid()?e>this?this:e:b()}));function Xa(e,t){var a,n;if(1===t.length&&r(t[0])&&(t=t[0]),!t.length)return Za();for(a=t[0],n=1;n<t.length;++n)t[n].isValid()&&!t[n][e](a)||(a=t[n]);return a}function Qa(){return Xa("isBefore",[].slice.call(arguments,0))}function en(){return Xa("isAfter",[].slice.call(arguments,0))}var tn=function(){return Date.now?Date.now():+new Date},an=["year","quarter","month","week","day","hour","minute","second","millisecond"];function nn(e){var t,a,n=!1,i=an.length;for(t in e)if(o(e,t)&&(-1===qe.call(an,t)||null!=e[t]&&isNaN(e[t])))return!1;for(a=0;a<i;++a)if(e[an[a]]){if(n)return!1;parseFloat(e[an[a]])!==Ee(e[an[a]])&&(n=!0)}return!0}function rn(){return this._isValid}function sn(){return Cn(NaN)}function on(e){var t=ie(e),a=t.year||0,n=t.quarter||0,i=t.month||0,r=t.week||t.isoWeek||0,s=t.day||0,o=t.hour||0,l=t.minute||0,u=t.second||0,c=t.millisecond||0;this._isValid=nn(t),this._milliseconds=+c+1e3*u+6e4*l+1e3*o*60*60,this._days=+s+7*r,this._months=+i+3*n+12*a,this._data={},this._locale=ba(),this._bubble()}function ln(e){return e instanceof on}function un(e){return e<0?-1*Math.round(-1*e):Math.round(e)}function cn(e,t,a){var n,i=Math.min(e.length,t.length),r=Math.abs(e.length-t.length),s=0;for(n=0;n<i;n++)Ee(e[n])!==Ee(t[n])&&s++;return s+r}function dn(e,t){U(e,0,0,(function(){var e=this.utcOffset(),a="+";return e<0&&(e=-e,a="-"),a+L(~~(e/60),2)+t+L(~~e%60,2)}))}dn("Z",":"),dn("ZZ",""),Me("Z",Ae),Me("ZZ",Ae),De(["Z","ZZ"],(function(e,t,a){a._useUTC=!0,a._tzm=hn(Ae,e)}));var pn=/([\+\-]|\d\d)/gi;function hn(e,t){var a,n,i=(t||"").match(e);return null===i?null:0===(n=60*(a=((i[i.length-1]||[])+"").match(pn)||["-",0,0])[1]+Ee(a[2]))?0:"+"===a[0]?n:-n}function fn(e,t){var a,i;return t._isUTC?(a=t.clone(),i=(k(e)||d(e)?e.valueOf():Za(e).valueOf())-a.valueOf(),a._d.setTime(a._d.valueOf()+i),n.updateOffset(a,!1),a):Za(e).local()}function mn(e){return-Math.round(e._d.getTimezoneOffset())}function yn(e,t,a){var i,r=this._offset||0;if(!this.isValid())return null!=e?this:NaN;if(null!=e){if("string"==typeof e){if(null===(e=hn(Ae,e)))return this}else Math.abs(e)<16&&!a&&(e*=60);return!this._isUTC&&t&&(i=mn(this)),this._offset=e,this._isUTC=!0,null!=i&&this.add(i,"m"),r!==e&&(!t||this._changeInProgress?Dn(this,Cn(e-r,"m"),1,!1):this._changeInProgress||(this._changeInProgress=!0,n.updateOffset(this,!0),this._changeInProgress=null)),this}return this._isUTC?r:mn(this)}function gn(e,t){return null!=e?("string"!=typeof e&&(e=-e),this.utcOffset(e,t),this):-this.utcOffset()}function bn(e){return this.utcOffset(0,e)}function vn(e){return this._isUTC&&(this.utcOffset(0,e),this._isUTC=!1,e&&this.subtract(mn(this),"m")),this}function _n(){if(null!=this._tzm)this.utcOffset(this._tzm,!1,!0);else if("string"==typeof this._i){var e=hn(we,this._i);null!=e?this.utcOffset(e):this.utcOffset(0,!0)}return this}function wn(e){return!!this.isValid()&&(e=e?Za(e).utcOffset():0,(this.utcOffset()-e)%60==0)}function An(){return this.utcOffset()>this.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()}function kn(){if(!u(this._isDSTShifted))return this._isDSTShifted;var e,t={};return w(t,this),(t=Ha(t))._a?(e=t._isUTC?f(t._a):Za(t._a),this._isDSTShifted=this.isValid()&&cn(t._a,e.toArray())>0):this._isDSTShifted=!1,this._isDSTShifted}function Sn(){return!!this.isValid()&&!this._isUTC}function Nn(){return!!this.isValid()&&this._isUTC}function Tn(){return!!this.isValid()&&this._isUTC&&0===this._offset}n.updateOffset=function(){};var Mn=/^(-|\+)?(?:(\d*)[. ])?(\d+):(\d+)(?::(\d+)(\.\d*)?)?$/,xn=/^(-|\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/;function Cn(e,t){var a,n,i,r=e,s=null;return ln(e)?r={ms:e._milliseconds,d:e._days,M:e._months}:c(e)||!isNaN(+e)?(r={},t?r[t]=+e:r.milliseconds=+e):(s=Mn.exec(e))?(a="-"===s[1]?-1:1,r={y:0,d:Ee(s[$e])*a,h:Ee(s[Ue])*a,m:Ee(s[je])*a,s:Ee(s[ze])*a,ms:Ee(un(1e3*s[We]))*a}):(s=xn.exec(e))?(a="-"===s[1]?-1:1,r={y:In(s[2],a),M:In(s[3],a),w:In(s[4],a),d:In(s[5],a),h:In(s[6],a),m:In(s[7],a),s:In(s[8],a)}):null==r?r={}:"object"==typeof r&&("from"in r||"to"in r)&&(i=En(Za(r.from),Za(r.to)),(r={}).ms=i.milliseconds,r.M=i.months),n=new on(r),ln(e)&&o(e,"_locale")&&(n._locale=e._locale),ln(e)&&o(e,"_isValid")&&(n._isValid=e._isValid),n}function In(e,t){var a=e&&parseFloat(e.replace(",","."));return(isNaN(a)?0:a)*t}function Vn(e,t){var a={};return a.months=t.month()-e.month()+12*(t.year()-e.year()),e.clone().add(a.months,"M").isAfter(t)&&--a.months,a.milliseconds=+t-+e.clone().add(a.months,"M"),a}function En(e,t){var a;return e.isValid()&&t.isValid()?(t=fn(t,e),e.isBefore(t)?a=Vn(e,t):((a=Vn(t,e)).milliseconds=-a.milliseconds,a.months=-a.months),a):{milliseconds:0,months:0}}function Fn(e,t){return function(a,n){var i;return null===n||isNaN(+n)||(x(t,"moment()."+t+"(period, number) is deprecated. Please use moment()."+t+"(number, period). See http://momentjs.com/guides/#/warnings/add-inverted-param/ for more info."),i=a,a=n,n=i),Dn(this,Cn(a,n),e),this}}function Dn(e,t,a,i){var r=t._milliseconds,s=un(t._days),o=un(t._months);e.isValid()&&(i=null==i||i,o&&ht(e,Xe(e,"Month")+o*a),s&&Qe(e,"Date",Xe(e,"Date")+s*a),r&&e._d.setTime(e._d.valueOf()+r*a),i&&n.updateOffset(e,s||o))}Cn.fn=on.prototype,Cn.invalid=sn;var Rn=Fn(1,"add"),Ln=Fn(-1,"subtract");function Pn(e){return"string"==typeof e||e instanceof String}function Bn(e){return k(e)||d(e)||Pn(e)||c(e)||$n(e)||On(e)||null==e}function On(e){var t,a,n=s(e)&&!l(e),i=!1,r=["years","year","y","months","month","M","days","day","d","dates","date","D","hours","hour","h","minutes","minute","m","seconds","second","s","milliseconds","millisecond","ms"],u=r.length;for(t=0;t<u;t+=1)a=r[t],i=i||o(e,a);return n&&i}function $n(e){var t=r(e),a=!1;return t&&(a=0===e.filter((function(t){return!c(t)&&Pn(e)})).length),t&&a}function Un(e){var t,a,n=s(e)&&!l(e),i=!1,r=["sameDay","nextDay","lastDay","nextWeek","lastWeek","sameElse"];for(t=0;t<r.length;t+=1)a=r[t],i=i||o(e,a);return n&&i}function jn(e,t){var a=e.diff(t,"days",!0);return a<-6?"sameElse":a<-1?"lastWeek":a<0?"lastDay":a<1?"sameDay":a<2?"nextDay":a<7?"nextWeek":"sameElse"}function zn(e,t){1===arguments.length&&(arguments[0]?Bn(arguments[0])?(e=arguments[0],t=void 0):Un(arguments[0])&&(t=arguments[0],e=void 0):(e=void 0,t=void 0));var a=e||Za(),i=fn(a,this).startOf("day"),r=n.calendarFormat(this,i)||"sameElse",s=t&&(C(t[r])?t[r].call(this,a):t[r]);return this.format(s||this.localeData().calendar(r,this,Za(a)))}function Wn(){return new A(this)}function Yn(e,t){var a=k(e)?e:Za(e);return!(!this.isValid()||!a.isValid())&&("millisecond"===(t=ne(t)||"millisecond")?this.valueOf()>a.valueOf():a.valueOf()<this.clone().startOf(t).valueOf())}function Hn(e,t){var a=k(e)?e:Za(e);return!(!this.isValid()||!a.isValid())&&("millisecond"===(t=ne(t)||"millisecond")?this.valueOf()<a.valueOf():this.clone().endOf(t).valueOf()<a.valueOf())}function Gn(e,t,a,n){var i=k(e)?e:Za(e),r=k(t)?t:Za(t);return!!(this.isValid()&&i.isValid()&&r.isValid())&&("("===(n=n||"()")[0]?this.isAfter(i,a):!this.isBefore(i,a))&&(")"===n[1]?this.isBefore(r,a):!this.isAfter(r,a))}function qn(e,t){var a,n=k(e)?e:Za(e);return!(!this.isValid()||!n.isValid())&&("millisecond"===(t=ne(t)||"millisecond")?this.valueOf()===n.valueOf():(a=n.valueOf(),this.clone().startOf(t).valueOf()<=a&&a<=this.clone().endOf(t).valueOf()))}function Zn(e,t){return this.isSame(e,t)||this.isAfter(e,t)}function Jn(e,t){return this.isSame(e,t)||this.isBefore(e,t)}function Kn(e,t,a){var n,i,r;if(!this.isValid())return NaN;if(!(n=fn(e,this)).isValid())return NaN;switch(i=6e4*(n.utcOffset()-this.utcOffset()),t=ne(t)){case"year":r=Xn(this,n)/12;break;case"month":r=Xn(this,n);break;case"quarter":r=Xn(this,n)/3;break;case"second":r=(this-n)/1e3;break;case"minute":r=(this-n)/6e4;break;case"hour":r=(this-n)/36e5;break;case"day":r=(this-n-i)/864e5;break;case"week":r=(this-n-i)/6048e5;break;default:r=this-n}return a?r:Ve(r)}function Xn(e,t){if(e.date()<t.date())return-Xn(t,e);var a=12*(t.year()-e.year())+(t.month()-e.month()),n=e.clone().add(a,"months");return-(a+(t-n<0?(t-n)/(n-e.clone().add(a-1,"months")):(t-n)/(e.clone().add(a+1,"months")-n)))||0}function Qn(){return this.clone().locale("en").format("ddd MMM DD YYYY HH:mm:ss [GMT]ZZ")}function ei(e){if(!this.isValid())return null;var t=!0!==e,a=t?this.clone().utc():this;return a.year()<0||a.year()>9999?W(a,t?"YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]":"YYYYYY-MM-DD[T]HH:mm:ss.SSSZ"):C(Date.prototype.toISOString)?t?this.toDate().toISOString():new Date(this.valueOf()+60*this.utcOffset()*1e3).toISOString().replace("Z",W(a,"Z")):W(a,t?"YYYY-MM-DD[T]HH:mm:ss.SSS[Z]":"YYYY-MM-DD[T]HH:mm:ss.SSSZ")}function ti(){if(!this.isValid())return"moment.invalid(/* "+this._i+" */)";var e,t,a,n,i="moment",r="";return this.isLocal()||(i=0===this.utcOffset()?"moment.utc":"moment.parseZone",r="Z"),e="["+i+'("]',t=0<=this.year()&&this.year()<=9999?"YYYY":"YYYYYY",a="-MM-DD[T]HH:mm:ss.SSS",n=r+'[")]',this.format(e+t+a+n)}function ai(e){e||(e=this.isUtc()?n.defaultFormatUtc:n.defaultFormat);var t=W(this,e);return this.localeData().postformat(t)}function ni(e,t){return this.isValid()&&(k(e)&&e.isValid()||Za(e).isValid())?Cn({to:this,from:e}).locale(this.locale()).humanize(!t):this.localeData().invalidDate()}function ii(e){return this.from(Za(),e)}function ri(e,t){return this.isValid()&&(k(e)&&e.isValid()||Za(e).isValid())?Cn({from:this,to:e}).locale(this.locale()).humanize(!t):this.localeData().invalidDate()}function si(e){return this.to(Za(),e)}function oi(e){var t;return void 0===e?this._locale._abbr:(null!=(t=ba(e))&&(this._locale=t),this)}n.defaultFormat="YYYY-MM-DDTHH:mm:ssZ",n.defaultFormatUtc="YYYY-MM-DDTHH:mm:ss[Z]";var li=N("moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.",(function(e){return void 0===e?this.localeData():this.locale(e)}));function ui(){return this._locale}var ci=1e3,di=60*ci,pi=60*di,hi=3506328*pi;function fi(e,t){return(e%t+t)%t}function mi(e,t,a){return e<100&&e>=0?new Date(e+400,t,a)-hi:new Date(e,t,a).valueOf()}function yi(e,t,a){return e<100&&e>=0?Date.UTC(e+400,t,a)-hi:Date.UTC(e,t,a)}function gi(e){var t,a;if(void 0===(e=ne(e))||"millisecond"===e||!this.isValid())return this;switch(a=this._isUTC?yi:mi,e){case"year":t=a(this.year(),0,1);break;case"quarter":t=a(this.year(),this.month()-this.month()%3,1);break;case"month":t=a(this.year(),this.month(),1);break;case"week":t=a(this.year(),this.month(),this.date()-this.weekday());break;case"isoWeek":t=a(this.year(),this.month(),this.date()-(this.isoWeekday()-1));break;case"day":case"date":t=a(this.year(),this.month(),this.date());break;case"hour":t=this._d.valueOf(),t-=fi(t+(this._isUTC?0:this.utcOffset()*di),pi);break;case"minute":t=this._d.valueOf(),t-=fi(t,di);break;case"second":t=this._d.valueOf(),t-=fi(t,ci)}return this._d.setTime(t),n.updateOffset(this,!0),this}function bi(e){var t,a;if(void 0===(e=ne(e))||"millisecond"===e||!this.isValid())return this;switch(a=this._isUTC?yi:mi,e){case"year":t=a(this.year()+1,0,1)-1;break;case"quarter":t=a(this.year(),this.month()-this.month()%3+3,1)-1;break;case"month":t=a(this.year(),this.month()+1,1)-1;break;case"week":t=a(this.year(),this.month(),this.date()-this.weekday()+7)-1;break;case"isoWeek":t=a(this.year(),this.month(),this.date()-(this.isoWeekday()-1)+7)-1;break;case"day":case"date":t=a(this.year(),this.month(),this.date()+1)-1;break;case"hour":t=this._d.valueOf(),t+=pi-fi(t+(this._isUTC?0:this.utcOffset()*di),pi)-1;break;case"minute":t=this._d.valueOf(),t+=di-fi(t,di)-1;break;case"second":t=this._d.valueOf(),t+=ci-fi(t,ci)-1}return this._d.setTime(t),n.updateOffset(this,!0),this}function vi(){return this._d.valueOf()-6e4*(this._offset||0)}function _i(){return Math.floor(this.valueOf()/1e3)}function wi(){return new Date(this.valueOf())}function Ai(){var e=this;return[e.year(),e.month(),e.date(),e.hour(),e.minute(),e.second(),e.millisecond()]}function ki(){var e=this;return{years:e.year(),months:e.month(),date:e.date(),hours:e.hours(),minutes:e.minutes(),seconds:e.seconds(),milliseconds:e.milliseconds()}}function Si(){return this.isValid()?this.toISOString():null}function Ni(){return g(this)}function Ti(){return h({},y(this))}function Mi(){return y(this).overflow}function xi(){return{input:this._i,format:this._f,locale:this._locale,isUTC:this._isUTC,strict:this._strict}}function Ci(e,t){var a,i,r,s=this._eras||ba("en")._eras;for(a=0,i=s.length;a<i;++a)switch("string"==typeof s[a].since&&(r=n(s[a].since).startOf("day"),s[a].since=r.valueOf()),typeof s[a].until){case"undefined":s[a].until=1/0;break;case"string":r=n(s[a].until).startOf("day").valueOf(),s[a].until=r.valueOf()}return s}function Ii(e,t,a){var n,i,r,s,o,l=this.eras();for(e=e.toUpperCase(),n=0,i=l.length;n<i;++n)if(r=l[n].name.toUpperCase(),s=l[n].abbr.toUpperCase(),o=l[n].narrow.toUpperCase(),a)switch(t){case"N":case"NN":case"NNN":if(s===e)return l[n];break;case"NNNN":if(r===e)return l[n];break;case"NNNNN":if(o===e)return l[n]}else if([r,s,o].indexOf(e)>=0)return l[n]}function Vi(e,t){var a=e.since<=e.until?1:-1;return void 0===t?n(e.since).year():n(e.since).year()+(t-e.offset)*a}function Ei(){var e,t,a,n=this.localeData().eras();for(e=0,t=n.length;e<t;++e){if(a=this.clone().startOf("day").valueOf(),n[e].since<=a&&a<=n[e].until)return n[e].name;if(n[e].until<=a&&a<=n[e].since)return n[e].name}return""}function Fi(){var e,t,a,n=this.localeData().eras();for(e=0,t=n.length;e<t;++e){if(a=this.clone().startOf("day").valueOf(),n[e].since<=a&&a<=n[e].until)return n[e].narrow;if(n[e].until<=a&&a<=n[e].since)return n[e].narrow}return""}function Di(){var e,t,a,n=this.localeData().eras();for(e=0,t=n.length;e<t;++e){if(a=this.clone().startOf("day").valueOf(),n[e].since<=a&&a<=n[e].until)return n[e].abbr;if(n[e].until<=a&&a<=n[e].since)return n[e].abbr}return""}function Ri(){var e,t,a,i,r=this.localeData().eras();for(e=0,t=r.length;e<t;++e)if(a=r[e].since<=r[e].until?1:-1,i=this.clone().startOf("day").valueOf(),r[e].since<=i&&i<=r[e].until||r[e].until<=i&&i<=r[e].since)return(this.year()-n(r[e].since).year())*a+r[e].offset;return this.year()}function Li(e){return o(this,"_erasNameRegex")||zi.call(this),e?this._erasNameRegex:this._erasRegex}function Pi(e){return o(this,"_erasAbbrRegex")||zi.call(this),e?this._erasAbbrRegex:this._erasRegex}function Bi(e){return o(this,"_erasNarrowRegex")||zi.call(this),e?this._erasNarrowRegex:this._erasRegex}function Oi(e,t){return t.erasAbbrRegex(e)}function $i(e,t){return t.erasNameRegex(e)}function Ui(e,t){return t.erasNarrowRegex(e)}function ji(e,t){return t._eraYearOrdinalRegex||ve}function zi(){var e,t,a,n,i,r=[],s=[],o=[],l=[],u=this.eras();for(e=0,t=u.length;e<t;++e)a=Ie(u[e].name),n=Ie(u[e].abbr),i=Ie(u[e].narrow),s.push(a),r.push(n),o.push(i),l.push(a),l.push(n),l.push(i);this._erasRegex=new RegExp("^("+l.join("|")+")","i"),this._erasNameRegex=new RegExp("^("+s.join("|")+")","i"),this._erasAbbrRegex=new RegExp("^("+r.join("|")+")","i"),this._erasNarrowRegex=new RegExp("^("+o.join("|")+")","i")}function Wi(e,t){U(0,[e,e.length],0,t)}function Yi(e){return Ki.call(this,e,this.week(),this.weekday()+this.localeData()._week.dow,this.localeData()._week.dow,this.localeData()._week.doy)}function Hi(e){return Ki.call(this,e,this.isoWeek(),this.isoWeekday(),1,4)}function Gi(){return St(this.year(),1,4)}function qi(){return St(this.isoWeekYear(),1,4)}function Zi(){var e=this.localeData()._week;return St(this.year(),e.dow,e.doy)}function Ji(){var e=this.localeData()._week;return St(this.weekYear(),e.dow,e.doy)}function Ki(e,t,a,n,i){var r;return null==e?kt(this,n,i).year:(t>(r=St(e,n,i))&&(t=r),Xi.call(this,e,t,a,n,i))}function Xi(e,t,a,n,i){var r=At(e,t,a,n,i),s=_t(r.year,0,r.dayOfYear);return this.year(s.getUTCFullYear()),this.month(s.getUTCMonth()),this.date(s.getUTCDate()),this}function Qi(e){return null==e?Math.ceil((this.month()+1)/3):this.month(3*(e-1)+this.month()%3)}U("N",0,0,"eraAbbr"),U("NN",0,0,"eraAbbr"),U("NNN",0,0,"eraAbbr"),U("NNNN",0,0,"eraName"),U("NNNNN",0,0,"eraNarrow"),U("y",["y",1],"yo","eraYear"),U("y",["yy",2],0,"eraYear"),U("y",["yyy",3],0,"eraYear"),U("y",["yyyy",4],0,"eraYear"),Me("N",Oi),Me("NN",Oi),Me("NNN",Oi),Me("NNNN",$i),Me("NNNNN",Ui),De(["N","NN","NNN","NNNN","NNNNN"],(function(e,t,a,n){var i=a._locale.erasParse(e,n,a._strict);i?y(a).era=i:y(a).invalidEra=e})),Me("y",ve),Me("yy",ve),Me("yyy",ve),Me("yyyy",ve),Me("yo",ji),De(["y","yy","yyy","yyyy"],Be),De(["yo"],(function(e,t,a,n){var i;a._locale._eraYearOrdinalRegex&&(i=e.match(a._locale._eraYearOrdinalRegex)),a._locale.eraYearOrdinalParse?t[Be]=a._locale.eraYearOrdinalParse(e,i):t[Be]=parseInt(e,10)})),U(0,["gg",2],0,(function(){return this.weekYear()%100})),U(0,["GG",2],0,(function(){return this.isoWeekYear()%100})),Wi("gggg","weekYear"),Wi("ggggg","weekYear"),Wi("GGGG","isoWeekYear"),Wi("GGGGG","isoWeekYear"),Me("G",_e),Me("g",_e),Me("GG",he,ue),Me("gg",he,ue),Me("GGGG",ge,de),Me("gggg",ge,de),Me("GGGGG",be,pe),Me("ggggg",be,pe),Re(["gggg","ggggg","GGGG","GGGGG"],(function(e,t,a,n){t[n.substr(0,2)]=Ee(e)})),Re(["gg","GG"],(function(e,t,a,i){t[i]=n.parseTwoDigitYear(e)})),U("Q",0,"Qo","quarter"),Me("Q",le),De("Q",(function(e,t){t[Oe]=3*(Ee(e)-1)})),U("D",["DD",2],"Do","date"),Me("D",he,Ne),Me("DD",he,ue),Me("Do",(function(e,t){return e?t._dayOfMonthOrdinalParse||t._ordinalParse:t._dayOfMonthOrdinalParseLenient})),De(["D","DD"],$e),De("Do",(function(e,t){t[$e]=Ee(e.match(he)[0])}));var er=Ke("Date",!0);function tr(e){var t=Math.round((this.clone().startOf("day")-this.clone().startOf("year"))/864e5)+1;return null==e?t:this.add(e-t,"d")}U("DDD",["DDDD",3],"DDDo","dayOfYear"),Me("DDD",ye),Me("DDDD",ce),De(["DDD","DDDD"],(function(e,t,a){a._dayOfYear=Ee(e)})),U("m",["mm",2],0,"minute"),Me("m",he,Te),Me("mm",he,ue),De(["m","mm"],je);var ar=Ke("Minutes",!1);U("s",["ss",2],0,"second"),Me("s",he,Te),Me("ss",he,ue),De(["s","ss"],ze);var nr,ir,rr=Ke("Seconds",!1);for(U("S",0,0,(function(){return~~(this.millisecond()/100)})),U(0,["SS",2],0,(function(){return~~(this.millisecond()/10)})),U(0,["SSS",3],0,"millisecond"),U(0,["SSSS",4],0,(function(){return 10*this.millisecond()})),U(0,["SSSSS",5],0,(function(){return 100*this.millisecond()})),U(0,["SSSSSS",6],0,(function(){return 1e3*this.millisecond()})),U(0,["SSSSSSS",7],0,(function(){return 1e4*this.millisecond()})),U(0,["SSSSSSSS",8],0,(function(){return 1e5*this.millisecond()})),U(0,["SSSSSSSSS",9],0,(function(){return 1e6*this.millisecond()})),Me("S",ye,le),Me("SS",ye,ue),Me("SSS",ye,ce),nr="SSSS";nr.length<=9;nr+="S")Me(nr,ve);function sr(e,t){t[We]=Ee(1e3*("0."+e))}for(nr="S";nr.length<=9;nr+="S")De(nr,sr);function or(){return this._isUTC?"UTC":""}function lr(){return this._isUTC?"Coordinated Universal Time":""}ir=Ke("Milliseconds",!1),U("z",0,0,"zoneAbbr"),U("zz",0,0,"zoneName");var ur=A.prototype;function cr(e){return Za(1e3*e)}function dr(){return Za.apply(null,arguments).parseZone()}function pr(e){return e}ur.add=Rn,ur.calendar=zn,ur.clone=Wn,ur.diff=Kn,ur.endOf=bi,ur.format=ai,ur.from=ni,ur.fromNow=ii,ur.to=ri,ur.toNow=si,ur.get=et,ur.invalidAt=Mi,ur.isAfter=Yn,ur.isBefore=Hn,ur.isBetween=Gn,ur.isSame=qn,ur.isSameOrAfter=Zn,ur.isSameOrBefore=Jn,ur.isValid=Ni,ur.lang=li,ur.locale=oi,ur.localeData=ui,ur.max=Ka,ur.min=Ja,ur.parsingFlags=Ti,ur.set=tt,ur.startOf=gi,ur.subtract=Ln,ur.toArray=Ai,ur.toObject=ki,ur.toDate=wi,ur.toISOString=ei,ur.inspect=ti,"undefined"!=typeof Symbol&&null!=Symbol.for&&(ur[Symbol.for("nodejs.util.inspect.custom")]=function(){return"Moment<"+this.format()+">"}),ur.toJSON=Si,ur.toString=Qn,ur.unix=_i,ur.valueOf=vi,ur.creationData=xi,ur.eraName=Ei,ur.eraNarrow=Fi,ur.eraAbbr=Di,ur.eraYear=Ri,ur.year=Ze,ur.isLeapYear=Je,ur.weekYear=Yi,ur.isoWeekYear=Hi,ur.quarter=ur.quarters=Qi,ur.month=ft,ur.daysInMonth=mt,ur.week=ur.weeks=Ct,ur.isoWeek=ur.isoWeeks=It,ur.weeksInYear=Zi,ur.weeksInWeekYear=Ji,ur.isoWeeksInYear=Gi,ur.isoWeeksInISOWeekYear=qi,ur.date=er,ur.day=ur.days=Yt,ur.weekday=Ht,ur.isoWeekday=Gt,ur.dayOfYear=tr,ur.hour=ur.hours=ia,ur.minute=ur.minutes=ar,ur.second=ur.seconds=rr,ur.millisecond=ur.milliseconds=ir,ur.utcOffset=yn,ur.utc=bn,ur.local=vn,ur.parseZone=_n,ur.hasAlignedHourOffset=wn,ur.isDST=An,ur.isLocal=Sn,ur.isUtcOffset=Nn,ur.isUtc=Tn,ur.isUTC=Tn,ur.zoneAbbr=or,ur.zoneName=lr,ur.dates=N("dates accessor is deprecated. Use date instead.",er),ur.months=N("months accessor is deprecated. Use month instead",ft),ur.years=N("years accessor is deprecated. Use year instead",Ze),ur.zone=N("moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/",gn),ur.isDSTShifted=N("isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information",kn);var hr=F.prototype;function fr(e,t,a,n){var i=ba(),r=f().set(n,t);return i[a](r,e)}function mr(e,t,a){if(c(e)&&(t=e,e=void 0),e=e||"",null!=t)return fr(e,t,a,"month");var n,i=[];for(n=0;n<12;n++)i[n]=fr(e,n,a,"month");return i}function yr(e,t,a,n){"boolean"==typeof e?(c(t)&&(a=t,t=void 0),t=t||""):(a=t=e,e=!1,c(t)&&(a=t,t=void 0),t=t||"");var i,r=ba(),s=e?r._week.dow:0,o=[];if(null!=a)return fr(t,(a+s)%7,n,"day");for(i=0;i<7;i++)o[i]=fr(t,(i+s)%7,n,"day");return o}function gr(e,t){return mr(e,t,"months")}function br(e,t){return mr(e,t,"monthsShort")}function vr(e,t,a){return yr(e,t,a,"weekdays")}function _r(e,t,a){return yr(e,t,a,"weekdaysShort")}function wr(e,t,a){return yr(e,t,a,"weekdaysMin")}hr.calendar=R,hr.longDateFormat=G,hr.invalidDate=Z,hr.ordinal=X,hr.preparse=pr,hr.postformat=pr,hr.relativeTime=ee,hr.pastFuture=te,hr.set=I,hr.eras=Ci,hr.erasParse=Ii,hr.erasConvertYear=Vi,hr.erasAbbrRegex=Pi,hr.erasNameRegex=Li,hr.erasNarrowRegex=Bi,hr.months=ut,hr.monthsShort=ct,hr.monthsParse=pt,hr.monthsRegex=gt,hr.monthsShortRegex=yt,hr.week=Nt,hr.firstDayOfYear=xt,hr.firstDayOfWeek=Mt,hr.weekdays=$t,hr.weekdaysMin=jt,hr.weekdaysShort=Ut,hr.weekdaysParse=Wt,hr.weekdaysRegex=qt,hr.weekdaysShortRegex=Zt,hr.weekdaysMinRegex=Jt,hr.isPM=aa,hr.meridiem=ra,ma("en",{eras:[{since:"0001-01-01",until:1/0,offset:1,name:"Anno Domini",narrow:"AD",abbr:"AD"},{since:"0000-12-31",until:-1/0,offset:1,name:"Before Christ",narrow:"BC",abbr:"BC"}],dayOfMonthOrdinalParse:/\d{1,2}(th|st|nd|rd)/,ordinal:function(e){var t=e%10;return e+(1===Ee(e%100/10)?"th":1===t?"st":2===t?"nd":3===t?"rd":"th")}}),n.lang=N("moment.lang is deprecated. Use moment.locale instead.",ma),n.langData=N("moment.langData is deprecated. Use moment.localeData instead.",ba);var Ar=Math.abs;function kr(){var e=this._data;return this._milliseconds=Ar(this._milliseconds),this._days=Ar(this._days),this._months=Ar(this._months),e.milliseconds=Ar(e.milliseconds),e.seconds=Ar(e.seconds),e.minutes=Ar(e.minutes),e.hours=Ar(e.hours),e.months=Ar(e.months),e.years=Ar(e.years),this}function Sr(e,t,a,n){var i=Cn(t,a);return e._milliseconds+=n*i._milliseconds,e._days+=n*i._days,e._months+=n*i._months,e._bubble()}function Nr(e,t){return Sr(this,e,t,1)}function Tr(e,t){return Sr(this,e,t,-1)}function Mr(e){return e<0?Math.floor(e):Math.ceil(e)}function xr(){var e,t,a,n,i,r=this._milliseconds,s=this._days,o=this._months,l=this._data;return r>=0&&s>=0&&o>=0||r<=0&&s<=0&&o<=0||(r+=864e5*Mr(Ir(o)+s),s=0,o=0),l.milliseconds=r%1e3,e=Ve(r/1e3),l.seconds=e%60,t=Ve(e/60),l.minutes=t%60,a=Ve(t/60),l.hours=a%24,s+=Ve(a/24),o+=i=Ve(Cr(s)),s-=Mr(Ir(i)),n=Ve(o/12),o%=12,l.days=s,l.months=o,l.years=n,this}function Cr(e){return 4800*e/146097}function Ir(e){return 146097*e/4800}function Vr(e){if(!this.isValid())return NaN;var t,a,n=this._milliseconds;if("month"===(e=ne(e))||"quarter"===e||"year"===e)switch(t=this._days+n/864e5,a=this._months+Cr(t),e){case"month":return a;case"quarter":return a/3;case"year":return a/12}else switch(t=this._days+Math.round(Ir(this._months)),e){case"week":return t/7+n/6048e5;case"day":return t+n/864e5;case"hour":return 24*t+n/36e5;case"minute":return 1440*t+n/6e4;case"second":return 86400*t+n/1e3;case"millisecond":return Math.floor(864e5*t)+n;default:throw new Error("Unknown unit "+e)}}function Er(e){return function(){return this.as(e)}}var Fr=Er("ms"),Dr=Er("s"),Rr=Er("m"),Lr=Er("h"),Pr=Er("d"),Br=Er("w"),Or=Er("M"),$r=Er("Q"),Ur=Er("y"),jr=Fr;function zr(){return Cn(this)}function Wr(e){return e=ne(e),this.isValid()?this[e+"s"]():NaN}function Yr(e){return function(){return this.isValid()?this._data[e]:NaN}}var Hr=Yr("milliseconds"),Gr=Yr("seconds"),qr=Yr("minutes"),Zr=Yr("hours"),Jr=Yr("days"),Kr=Yr("months"),Xr=Yr("years");function Qr(){return Ve(this.days()/7)}var es=Math.round,ts={ss:44,s:45,m:45,h:22,d:26,w:null,M:11};function as(e,t,a,n,i){return i.relativeTime(t||1,!!a,e,n)}function ns(e,t,a,n){var i=Cn(e).abs(),r=es(i.as("s")),s=es(i.as("m")),o=es(i.as("h")),l=es(i.as("d")),u=es(i.as("M")),c=es(i.as("w")),d=es(i.as("y")),p=r<=a.ss&&["s",r]||r<a.s&&["ss",r]||s<=1&&["m"]||s<a.m&&["mm",s]||o<=1&&["h"]||o<a.h&&["hh",o]||l<=1&&["d"]||l<a.d&&["dd",l];return null!=a.w&&(p=p||c<=1&&["w"]||c<a.w&&["ww",c]),(p=p||u<=1&&["M"]||u<a.M&&["MM",u]||d<=1&&["y"]||["yy",d])[2]=t,p[3]=+e>0,p[4]=n,as.apply(null,p)}function is(e){return void 0===e?es:"function"==typeof e&&(es=e,!0)}function rs(e,t){return void 0!==ts[e]&&(void 0===t?ts[e]:(ts[e]=t,"s"===e&&(ts.ss=t-1),!0))}function ss(e,t){if(!this.isValid())return this.localeData().invalidDate();var a,n,i=!1,r=ts;return"object"==typeof e&&(t=e,e=!1),"boolean"==typeof e&&(i=e),"object"==typeof t&&(r=Object.assign({},ts,t),null!=t.s&&null==t.ss&&(r.ss=t.s-1)),n=ns(this,!i,r,a=this.localeData()),i&&(n=a.pastFuture(+this,n)),a.postformat(n)}var os=Math.abs;function ls(e){return(e>0)-(e<0)||+e}function us(){if(!this.isValid())return this.localeData().invalidDate();var e,t,a,n,i,r,s,o,l=os(this._milliseconds)/1e3,u=os(this._days),c=os(this._months),d=this.asSeconds();return d?(e=Ve(l/60),t=Ve(e/60),l%=60,e%=60,a=Ve(c/12),c%=12,n=l?l.toFixed(3).replace(/\.?0+$/,""):"",i=d<0?"-":"",r=ls(this._months)!==ls(d)?"-":"",s=ls(this._days)!==ls(d)?"-":"",o=ls(this._milliseconds)!==ls(d)?"-":"",i+"P"+(a?r+a+"Y":"")+(c?r+c+"M":"")+(u?s+u+"D":"")+(t||e||l?"T":"")+(t?o+t+"H":"")+(e?o+e+"M":"")+(l?o+n+"S":"")):"P0D"}var cs=on.prototype;return cs.isValid=rn,cs.abs=kr,cs.add=Nr,cs.subtract=Tr,cs.as=Vr,cs.asMilliseconds=Fr,cs.asSeconds=Dr,cs.asMinutes=Rr,cs.asHours=Lr,cs.asDays=Pr,cs.asWeeks=Br,cs.asMonths=Or,cs.asQuarters=$r,cs.asYears=Ur,cs.valueOf=jr,cs._bubble=xr,cs.clone=zr,cs.get=Wr,cs.milliseconds=Hr,cs.seconds=Gr,cs.minutes=qr,cs.hours=Zr,cs.days=Jr,cs.weeks=Qr,cs.months=Kr,cs.years=Xr,cs.humanize=ss,cs.toISOString=us,cs.toString=us,cs.toJSON=us,cs.locale=oi,cs.localeData=ui,cs.toIsoString=N("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)",us),cs.lang=li,U("X",0,0,"unix"),U("x",0,0,"valueOf"),Me("x",_e),Me("X",ke),De("X",(function(e,t,a){a._d=new Date(1e3*parseFloat(e))})),De("x",(function(e,t,a){a._d=new Date(Ee(e))})),
2
2
  //! moment.js
3
3
  n.version="2.30.1",i(Za),n.fn=ur,n.min=Qa,n.max=en,n.now=tn,n.utc=f,n.unix=cr,n.months=gr,n.isDate=d,n.locale=ma,n.invalid=b,n.duration=Cn,n.isMoment=k,n.weekdays=vr,n.parseZone=dr,n.localeData=ba,n.isDuration=ln,n.monthsShort=br,n.weekdaysMin=wr,n.defineLocale=ya,n.updateLocale=ga,n.locales=va,n.weekdaysShort=_r,n.normalizeUnits=ne,n.relativeTimeRounding=is,n.relativeTimeThreshold=rs,n.calendarFormat=jn,n.prototype=ur,n.HTML5_FMT={DATETIME_LOCAL:"YYYY-MM-DDTHH:mm",DATETIME_LOCAL_SECONDS:"YYYY-MM-DDTHH:mm:ss",DATETIME_LOCAL_MS:"YYYY-MM-DDTHH:mm:ss.SSS",DATE:"YYYY-MM-DD",TIME:"HH:mm",TIME_SECONDS:"HH:mm:ss",TIME_MS:"HH:mm:ss.SSS",WEEK:"GGGG-[W]WW",MONTH:"YYYY-MM"},n}()}(D)),D.exports),L=V(R);class P{apiClient;debug;apiCalls=[];apiCallsStartTime=null;constructor(e){if(!e)throw"A lumino client needs to be passed.";this.apiClient=e,this.debug=false,this.debug&&(this.apiCalls=[],this.apiCallsStartTime=null)}start(){this.debug&&(this.apiCallsStartTime=L(),this.apiCalls=[])}end(){if(this.debug){console.log("Calls: "+this.apiCalls.length);for(const e of this.apiCalls){const t=e.callTime.toString().padStart(6," "),a=e.totalTime.toString().padStart(6," ");console.log(t+a+" -> "+e.caller+"::"+e.method+" ("+JSON.stringify(e.params)+")")}}}async call(e,t,...a){try{if(this.debug){const n=L(),i=await this.apiClient[t](...a),r=L(),s=r.diff(n,"milliseconds"),o=r.diff(this.apiCallsStartTime,"milliseconds");return this.apiCalls.push({caller:e,method:t,params:a,callTime:s,totalTime:o}),i}return this.apiClient[t](...a)}catch(e){throw u.$emit("client:fatalError","API call failed: "+t),e}}}let B=class{itemCache;apiGateway;constructor(e){this.itemCache=new Map,this.apiGateway=e}clear(){this.itemCache.clear()}async getItem(e){if(this.itemCache.has(e))return this.itemCache.get(e);const t=await this.apiGateway.call("ItemCache::getItem","getItem",e);return this.itemCache.set(e,t),t}};class O{id;type;data;constructor(e,t,a){this.id=e,this.type=t,this.data=a}}class ${ownerItem;constructor(e=void 0){this.ownerItem=e}createSnapshot(){throw"createSnapshot not implemented!"}restoreFromSnapshot(e,t){throw"restoreFromSnapshot not implemented!"}rollbackFromSnapshot(e){throw"rollbackFromSnapshot not implemented!"}_getElementById(e,t){for(const a of t)if(a.id===e)return a;return null}_rollbackArray(e,t,a){if(!Array.isArray(e))return void console.log("_rollbackArray(): no array given!");const n=[],i=[];let r=0;for(const a of t){const t=this._getElementById(a.id,e);t?i.push({element:t,snapshot:a}):n.push({position:r,snapshot:a}),r++}const s=[];r=0;for(const a of e){this._getElementById(a.id,t)||s.push(r-s.length),r++}for(const t of s)e.splice(t,1);for(const e of i)e.element.rollbackFromSnapshot(e.snapshot);for(const t of n){const n=a(t.snapshot,this);e.splice(t.position,0,n)}}}class U extends ${id;srcNode;srcSlot;destNode;destSlot;posX;posY;constructor(e,t){super(t),h.assert(e,"NkConnection: data is null or undefined!"),h.assert(e.srcNode,"NkConnection: srcNode is null or undefined!"),h.assert(e.srcSlot,"NkConnection: srcSlot is null or undefined!"),h.assert(e.destNode,"NkConnection: srcNode is null or undefined!"),h.assert(e.destSlot,"NkConnection: srcSlot is null or undefined!"),this.id=e.id||h.createItemOrBlockID(),this.srcNode=e.srcNode,this.srcSlot=e.srcSlot,this.destNode=e.destNode,this.destSlot=e.destSlot,this.posX=e.posX||0,this.posY=e.posY||0}getId(){return this.id}setPosition(e,t){this.posX=e,this.posY=t}getPosX(){return this.posX}getPosY(){return this.posY}getSrcNode(){return this.srcNode}getDestNode(){return this.destNode}getSrcSlot(){return this.srcSlot}getDestSlot(){return this.destSlot}setSrcNode(e){this.srcNode=e}setDestNode(e){this.destNode=e}setSrcSlot(e){this.srcSlot=e}setDestSlot(e){this.destSlot=e}clone(){return new U({srcNode:this.srcNode,srcSlot:this.srcSlot,destNode:this.destNode,destSlot:this.destSlot,posX:this.posX,posY:this.posY},this.ownerItem)}createSnapshot(){return new O(this.id,"connection",{id:this.id,srcNode:this.srcNode,srcSlot:this.srcSlot,destNode:this.destNode,destSlot:this.destSlot,posX:this.posX,posY:this.posY})}restoreFromSnapshot(e){this.id=e.id,this.srcNode=e.data.srcNode,this.srcSlot=e.data.srcSlot,this.destNode=e.data.destNode,this.destSlot=e.data.destSlot,this.posX=e.data.posX,this.posY=e.data.posY}rollbackFromSnapshot(e){this.srcNode=e.data.srcNode,this.srcSlot=e.data.srcSlot,this.destNode=e.data.destNode,this.destSlot=e.data.destSlot,this.posX=e.data.posX,this.posY=e.data.posY}}class j extends ${id;name=void 0;displayName=void 0;value;script;type=void 0;datatype=void 0;minValue=void 0;maxValue=void 0;order=0;inject=void 0;info=void 0;constructor(e=void 0,t=void 0,a=void 0,n=void 0){super(n),this.value=a,this.script=e,this.id=h.createGUID(),this.name=t,this.displayName=t,this._updateDisplayName()}getId(){return this.id}setName(e){this.name=e,this._updateDisplayName()}setOrder(e){this.order=e}setInfo(e){this.info=e}clone(e=new Map){const t=new j;return t.ownerItem=this.ownerItem,t.value=e.get(this.value)??this.value,t.script=this.script,t.type=this.type,t.minValue=this.minValue,t.maxValue=this.maxValue,t.order=this.order,t.info=this.info,t.setName(this.name),t}clearDefinition(){this.type=void 0}setDefinition(e){this.inject=e.inject;const t=e.type.toLowerCase();switch(t){case"boolean":case"bool":this.type="Attribute",this.datatype="Boolean",this.value=void 0!==this.value?this._toBoolean(this.value):this._toBoolean(e.defaultValue);break;case"number":{this.type="Attribute",this.datatype="Float",this.value=void 0!==this.value?Number(this.value):Number(e.defaultValue);const t=this._parseTypeParams(e.typeparams,2);t?(this.minValue=Number(t[0]),this.maxValue=Number(t[1])):(this.minValue=void 0,this.maxValue=void 0);break}case"string":this.type="Attribute",this.datatype="String",this.value=void 0!==this.value&&null!==this.value?this.value.toString():e.defaultValue?e.defaultValue.toString():"";break;case"node":this.type="Attribute",this.datatype="Node";break;default:console.error("Unknown script field type: "+t),this.type="Attribute",this.datatype="String",this.value=this.value?this.value.toString():e.defaultValue?e.defaultValue.toString():""}}_toBoolean(e){return null!=e&&(!0===e||!1===e?e:"false"!==e.toString().toLowerCase())}_updateDisplayName(){this.name?this.displayName=h.toUserFriendlyName(this.name):this.displayName=""}_parseTypeParams(e,t){if(!e)return null;const a=e.split(",").map((e=>e.trim()));return a.length!==t?null:a}createSnapshot(){return new O(this.name,"scriptfield",{id:this.id,type:this.type,name:this.name,value:this.value,datatype:this.datatype,minValue:this.minValue,maxValue:this.maxValue,order:this.order,info:this.info})}}function z(e,t,a){const{datatype:n,minValue:i,maxValue:r,name:s,value:o,type:l,order:u,id:c,info:d}=e.data,p=new j(t,s,o,a);return p.id=c,p.type=l,p.datatype=n,p.minValue=i,p.maxValue=r,p.order=u,p.info=d,p}class W extends ${id=void 0;block=void 0;fields=[];item=null;deferInitCall=!1;constructor(e=void 0,t=void 0,a=void 0,n=void 0){super(a),e instanceof O?this.restoreFromSnapshot(e,t):(this.id=e||h.createItemOrBlockID(),this.block=t),this.item||(this.item={value:n,linkableItems:[],linkableTypes:["Script"]}),this.item=g.instance.proxyScriptItem(this.item,this,this.ownerItem),this.fields=g.instance.proxyScriptFieldsArray(this.fields,this,this.ownerItem)}getId(){return this.id}makeIdsUnique(e,t=!1){if(this.id)if(e.has(this.id)||t){const t=h.createItemOrBlockID();e.set(this.id,t),this.id=t}else e.set(this.id,this.id)}transformNodeIds(e){for(const t of this.fields)t.value&&e.has(t.value)&&(t.value=e.get(t.value))}clone(e=new Map){const t=new W(void 0,this.block,this.ownerItem,this.item.value);for(const a of this.fields){const n=a.clone(e);n.script=t,t.addField(n)}return t}createFieldsFromDefinition(e=[]){function t(e,t){for(const a of e)if(a.name===t)return a;return null}for(const a of this.fields)t(e,a.name)||a.clearDefinition();let a=0;for(const n of e){let e=t(this.fields,n.name);e||(e=new j(this,n.name,void 0,this.ownerItem),this.addField(e)),e.setOrder(a++),e.setInfo(n.info),e.setDefinition(n)}this.fields.sort((function(e,t){return e.order-t.order}))}clearFieldTypes(){this.createFieldsFromDefinition()}addField(e){this.fields.push(g.instance.proxyScriptField(e,this,this.ownerItem))}createSnapshot(){const e=[];for(const t of this.fields)e.push(t.createSnapshot());return new O(this.id,"script",{id:this.id,value:this.item.value,fields:e})}restoreFromSnapshot(e,t){this.id=e.data.id,this.block=t,this.item={value:e.data.value,linkableItems:[],linkableTypes:["Script"]};const a=[];this._rollbackArray(a,e.data.fields,(e=>{const t=z(e,this,this.ownerItem);return g.instance.proxyScriptField(t,this,this.ownerItem)})),this.fields=a}rollbackFromSnapshot(e){e.data.value&&(this.item.value=e.data.value),this._rollbackArray(this.fields,e.data.fields,(e=>{const t=z(e,this,this.ownerItem);return g.instance.proxyScriptField(t,this,this.ownerItem)}))}}var Y,H={exports:{}},G=H.exports;
4
4
  /**
@@ -8,7 +8,7 @@ n.version="2.30.1",i(Za),n.fn=ur,n.min=Qa,n.max=en,n.now=tn,n.utc=f,n.unix=cr,n.
8
8
  * Released under MIT license <https://lodash.com/license>
9
9
  * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
10
10
  * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
11
- */var q=(Y||(Y=1,function(e,t){(function(){var a,n="Expected a function",i="__lodash_hash_undefined__",r="__lodash_placeholder__",s=32,o=128,l=256,u=1/0,c=9007199254740991,d=NaN,p=4294967295,h=[["ary",o],["bind",1],["bindKey",2],["curry",8],["curryRight",16],["flip",512],["partial",s],["partialRight",64],["rearg",l]],f="[object Arguments]",m="[object Array]",y="[object Boolean]",g="[object Date]",b="[object Error]",v="[object Function]",_="[object GeneratorFunction]",w="[object Map]",A="[object Number]",k="[object Object]",S="[object Promise]",N="[object RegExp]",T="[object Set]",M="[object String]",x="[object Symbol]",C="[object WeakMap]",V="[object ArrayBuffer]",E="[object DataView]",F="[object Float32Array]",D="[object Float64Array]",R="[object Int8Array]",L="[object Int16Array]",P="[object Int32Array]",B="[object Uint8Array]",O="[object Uint8ClampedArray]",$="[object Uint16Array]",U="[object Uint32Array]",j=/\b__p \+= '';/g,z=/\b(__p \+=) '' \+/g,W=/(__e\(.*?\)|\b__t\)) \+\n'';/g,Y=/&(?:amp|lt|gt|quot|#39);/g,H=/[&<>"']/g,G=RegExp(Y.source),q=RegExp(H.source),Z=/<%-([\s\S]+?)%>/g,J=/<%([\s\S]+?)%>/g,K=/<%=([\s\S]+?)%>/g,X=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Q=/^\w*$/,ee=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,te=/[\\^$.*+?()[\]{}|]/g,ae=RegExp(te.source),ne=/^\s+/,ie=/\s/,re=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,se=/\{\n\/\* \[wrapped with (.+)\] \*/,oe=/,? & /,le=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,ue=/[()=,{}\[\]\/\s]/,ce=/\\(\\)?/g,de=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,pe=/\w*$/,he=/^[-+]0x[0-9a-f]+$/i,fe=/^0b[01]+$/i,me=/^\[object .+?Constructor\]$/,ye=/^0o[0-7]+$/i,ge=/^(?:0|[1-9]\d*)$/,be=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,ve=/($^)/,_e=/['\n\r\u2028\u2029\\]/g,we="\\ud800-\\udfff",Ae="\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff",ke="\\u2700-\\u27bf",Se="a-z\\xdf-\\xf6\\xf8-\\xff",Ne="A-Z\\xc0-\\xd6\\xd8-\\xde",Te="\\ufe0e\\ufe0f",Me="\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",xe="['’]",Ce="["+we+"]",Ie="["+Me+"]",Ve="["+Ae+"]",Ee="\\d+",Fe="["+ke+"]",De="["+Se+"]",Re="[^"+we+Me+Ee+ke+Se+Ne+"]",Le="\\ud83c[\\udffb-\\udfff]",Pe="[^"+we+"]",Be="(?:\\ud83c[\\udde6-\\uddff]){2}",Oe="[\\ud800-\\udbff][\\udc00-\\udfff]",$e="["+Ne+"]",Ue="\\u200d",je="(?:"+De+"|"+Re+")",ze="(?:"+$e+"|"+Re+")",We="(?:['’](?:d|ll|m|re|s|t|ve))?",Ye="(?:['’](?:D|LL|M|RE|S|T|VE))?",He="(?:"+Ve+"|"+Le+")?",Ge="["+Te+"]?",qe=Ge+He+"(?:"+Ue+"(?:"+[Pe,Be,Oe].join("|")+")"+Ge+He+")*",Ze="(?:"+[Fe,Be,Oe].join("|")+")"+qe,Je="(?:"+[Pe+Ve+"?",Ve,Be,Oe,Ce].join("|")+")",Ke=RegExp(xe,"g"),Xe=RegExp(Ve,"g"),Qe=RegExp(Le+"(?="+Le+")|"+Je+qe,"g"),et=RegExp([$e+"?"+De+"+"+We+"(?="+[Ie,$e,"$"].join("|")+")",ze+"+"+Ye+"(?="+[Ie,$e+je,"$"].join("|")+")",$e+"?"+je+"+"+We,$e+"+"+Ye,"\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])","\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",Ee,Ze].join("|"),"g"),tt=RegExp("["+Ue+we+Ae+Te+"]"),at=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,nt=["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"],it=-1,rt={};rt[F]=rt[D]=rt[R]=rt[L]=rt[P]=rt[B]=rt[O]=rt[$]=rt[U]=!0,rt[f]=rt[m]=rt[V]=rt[y]=rt[E]=rt[g]=rt[b]=rt[v]=rt[w]=rt[A]=rt[k]=rt[N]=rt[T]=rt[M]=rt[C]=!1;var st={};st[f]=st[m]=st[V]=st[E]=st[y]=st[g]=st[F]=st[D]=st[R]=st[L]=st[P]=st[w]=st[A]=st[k]=st[N]=st[T]=st[M]=st[x]=st[B]=st[O]=st[$]=st[U]=!0,st[b]=st[v]=st[C]=!1;var ot={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},lt=parseFloat,ut=parseInt,ct="object"==typeof I&&I&&I.Object===Object&&I,dt="object"==typeof self&&self&&self.Object===Object&&self,pt=ct||dt||Function("return this")(),ht=t&&!t.nodeType&&t,ft=ht&&e&&!e.nodeType&&e,mt=ft&&ft.exports===ht,yt=mt&&ct.process,gt=function(){try{var e=ft&&ft.require&&ft.require("util").types;return e||yt&&yt.binding&&yt.binding("util")}catch(e){}}(),bt=gt&&gt.isArrayBuffer,vt=gt&&gt.isDate,_t=gt&&gt.isMap,wt=gt&&gt.isRegExp,At=gt&&gt.isSet,kt=gt&&gt.isTypedArray;function St(e,t,a){switch(a.length){case 0:return e.call(t);case 1:return e.call(t,a[0]);case 2:return e.call(t,a[0],a[1]);case 3:return e.call(t,a[0],a[1],a[2])}return e.apply(t,a)}function Nt(e,t,a,n){for(var i=-1,r=null==e?0:e.length;++i<r;){var s=e[i];t(n,s,a(s),e)}return n}function Tt(e,t){for(var a=-1,n=null==e?0:e.length;++a<n&&!1!==t(e[a],a,e););return e}function Mt(e,t){for(var a=null==e?0:e.length;a--&&!1!==t(e[a],a,e););return e}function xt(e,t){for(var a=-1,n=null==e?0:e.length;++a<n;)if(!t(e[a],a,e))return!1;return!0}function Ct(e,t){for(var a=-1,n=null==e?0:e.length,i=0,r=[];++a<n;){var s=e[a];t(s,a,e)&&(r[i++]=s)}return r}function It(e,t){return!(null==e||!e.length)&&$t(e,t,0)>-1}function Vt(e,t,a){for(var n=-1,i=null==e?0:e.length;++n<i;)if(a(t,e[n]))return!0;return!1}function Et(e,t){for(var a=-1,n=null==e?0:e.length,i=Array(n);++a<n;)i[a]=t(e[a],a,e);return i}function Ft(e,t){for(var a=-1,n=t.length,i=e.length;++a<n;)e[i+a]=t[a];return e}function Dt(e,t,a,n){var i=-1,r=null==e?0:e.length;for(n&&r&&(a=e[++i]);++i<r;)a=t(a,e[i],i,e);return a}function Rt(e,t,a,n){var i=null==e?0:e.length;for(n&&i&&(a=e[--i]);i--;)a=t(a,e[i],i,e);return a}function Lt(e,t){for(var a=-1,n=null==e?0:e.length;++a<n;)if(t(e[a],a,e))return!0;return!1}var Pt=Wt("length");function Bt(e,t,a){var n;return a(e,(function(e,a,i){if(t(e,a,i))return n=a,!1})),n}function Ot(e,t,a,n){for(var i=e.length,r=a+(n?1:-1);n?r--:++r<i;)if(t(e[r],r,e))return r;return-1}function $t(e,t,a){return t==t?function(e,t,a){for(var n=a-1,i=e.length;++n<i;)if(e[n]===t)return n;return-1}(e,t,a):Ot(e,jt,a)}function Ut(e,t,a,n){for(var i=a-1,r=e.length;++i<r;)if(n(e[i],t))return i;return-1}function jt(e){return e!=e}function zt(e,t){var a=null==e?0:e.length;return a?Gt(e,t)/a:d}function Wt(e){return function(t){return null==t?a:t[e]}}function Yt(e){return function(t){return null==e?a:e[t]}}function Ht(e,t,a,n,i){return i(e,(function(e,i,r){a=n?(n=!1,e):t(a,e,i,r)})),a}function Gt(e,t){for(var n,i=-1,r=e.length;++i<r;){var s=t(e[i]);s!==a&&(n=n===a?s:n+s)}return n}function qt(e,t){for(var a=-1,n=Array(e);++a<e;)n[a]=t(a);return n}function Zt(e){return e?e.slice(0,pa(e)+1).replace(ne,""):e}function Jt(e){return function(t){return e(t)}}function Kt(e,t){return Et(t,(function(t){return e[t]}))}function Xt(e,t){return e.has(t)}function Qt(e,t){for(var a=-1,n=e.length;++a<n&&$t(t,e[a],0)>-1;);return a}function ea(e,t){for(var a=e.length;a--&&$t(t,e[a],0)>-1;);return a}var ta=Yt({"À":"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"}),aa=Yt({"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"});function na(e){return"\\"+ot[e]}function ia(e){return tt.test(e)}function ra(e){var t=-1,a=Array(e.size);return e.forEach((function(e,n){a[++t]=[n,e]})),a}function sa(e,t){return function(a){return e(t(a))}}function oa(e,t){for(var a=-1,n=e.length,i=0,s=[];++a<n;){var o=e[a];o!==t&&o!==r||(e[a]=r,s[i++]=a)}return s}function la(e){var t=-1,a=Array(e.size);return e.forEach((function(e){a[++t]=e})),a}function ua(e){var t=-1,a=Array(e.size);return e.forEach((function(e){a[++t]=[e,e]})),a}function ca(e){return ia(e)?function(e){for(var t=Qe.lastIndex=0;Qe.test(e);)++t;return t}(e):Pt(e)}function da(e){return ia(e)?function(e){return e.match(Qe)||[]}(e):function(e){return e.split("")}(e)}function pa(e){for(var t=e.length;t--&&ie.test(e.charAt(t)););return t}var ha=Yt({"&amp;":"&","&lt;":"<","&gt;":">","&quot;":'"',"&#39;":"'"}),fa=function e(t){var I,ie=(t=null==t?pt:fa.defaults(pt.Object(),t,fa.pick(pt,nt))).Array,we=t.Date,Ae=t.Error,ke=t.Function,Se=t.Math,Ne=t.Object,Te=t.RegExp,Me=t.String,xe=t.TypeError,Ce=ie.prototype,Ie=ke.prototype,Ve=Ne.prototype,Ee=t["__core-js_shared__"],Fe=Ie.toString,De=Ve.hasOwnProperty,Re=0,Le=(I=/[^.]+$/.exec(Ee&&Ee.keys&&Ee.keys.IE_PROTO||""))?"Symbol(src)_1."+I:"",Pe=Ve.toString,Be=Fe.call(Ne),Oe=pt._,$e=Te("^"+Fe.call(De).replace(te,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),Ue=mt?t.Buffer:a,je=t.Symbol,ze=t.Uint8Array,We=Ue?Ue.allocUnsafe:a,Ye=sa(Ne.getPrototypeOf,Ne),He=Ne.create,Ge=Ve.propertyIsEnumerable,qe=Ce.splice,Ze=je?je.isConcatSpreadable:a,Je=je?je.iterator:a,Qe=je?je.toStringTag:a,tt=function(){try{var e=cr(Ne,"defineProperty");return e({},"",{}),e}catch(e){}}(),ot=t.clearTimeout!==pt.clearTimeout&&t.clearTimeout,ct=we&&we.now!==pt.Date.now&&we.now,dt=t.setTimeout!==pt.setTimeout&&t.setTimeout,ht=Se.ceil,ft=Se.floor,yt=Ne.getOwnPropertySymbols,gt=Ue?Ue.isBuffer:a,Pt=t.isFinite,Yt=Ce.join,ma=sa(Ne.keys,Ne),ya=Se.max,ga=Se.min,ba=we.now,va=t.parseInt,_a=Se.random,wa=Ce.reverse,Aa=cr(t,"DataView"),ka=cr(t,"Map"),Sa=cr(t,"Promise"),Na=cr(t,"Set"),Ta=cr(t,"WeakMap"),Ma=cr(Ne,"create"),xa=Ta&&new Ta,Ca={},Ia=Lr(Aa),Va=Lr(ka),Ea=Lr(Sa),Fa=Lr(Na),Da=Lr(Ta),Ra=je?je.prototype:a,La=Ra?Ra.valueOf:a,Pa=Ra?Ra.toString:a;function Ba(e){if(Qs(e)&&!js(e)&&!(e instanceof ja)){if(e instanceof Ua)return e;if(De.call(e,"__wrapped__"))return Pr(e)}return new Ua(e)}var Oa=function(){function e(){}return function(t){if(!Xs(t))return{};if(He)return He(t);e.prototype=t;var n=new e;return e.prototype=a,n}}();function $a(){}function Ua(e,t){this.__wrapped__=e,this.__actions__=[],this.__chain__=!!t,this.__index__=0,this.__values__=a}function ja(e){this.__wrapped__=e,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=p,this.__views__=[]}function za(e){var t=-1,a=null==e?0:e.length;for(this.clear();++t<a;){var n=e[t];this.set(n[0],n[1])}}function Wa(e){var t=-1,a=null==e?0:e.length;for(this.clear();++t<a;){var n=e[t];this.set(n[0],n[1])}}function Ya(e){var t=-1,a=null==e?0:e.length;for(this.clear();++t<a;){var n=e[t];this.set(n[0],n[1])}}function Ha(e){var t=-1,a=null==e?0:e.length;for(this.__data__=new Ya;++t<a;)this.add(e[t])}function Ga(e){var t=this.__data__=new Wa(e);this.size=t.size}function qa(e,t){var a=js(e),n=!a&&Us(e),i=!a&&!n&&Hs(e),r=!a&&!n&&!i&&oo(e),s=a||n||i||r,o=s?qt(e.length,Me):[],l=o.length;for(var u in e)!t&&!De.call(e,u)||s&&("length"==u||i&&("offset"==u||"parent"==u)||r&&("buffer"==u||"byteLength"==u||"byteOffset"==u)||gr(u,l))||o.push(u);return o}function Za(e){var t=e.length;return t?e[Gn(0,t-1)]:a}function Ja(e,t){return Fr(xi(e),sn(t,0,e.length))}function Ka(e){return Fr(xi(e))}function Xa(e,t,n){(n!==a&&!Bs(e[t],n)||n===a&&!(t in e))&&nn(e,t,n)}function Qa(e,t,n){var i=e[t];De.call(e,t)&&Bs(i,n)&&(n!==a||t in e)||nn(e,t,n)}function en(e,t){for(var a=e.length;a--;)if(Bs(e[a][0],t))return a;return-1}function tn(e,t,a,n){return dn(e,(function(e,i,r){t(n,e,a(e),r)})),n}function an(e,t){return e&&Ci(t,Io(t),e)}function nn(e,t,a){"__proto__"==t&&tt?tt(e,t,{configurable:!0,enumerable:!0,value:a,writable:!0}):e[t]=a}function rn(e,t){for(var n=-1,i=t.length,r=ie(i),s=null==e;++n<i;)r[n]=s?a:No(e,t[n]);return r}function sn(e,t,n){return e==e&&(n!==a&&(e=e<=n?e:n),t!==a&&(e=e>=t?e:t)),e}function on(e,t,n,i,r,s){var o,l=1&t,u=2&t,c=4&t;if(n&&(o=r?n(e,i,r,s):n(e)),o!==a)return o;if(!Xs(e))return e;var d=js(e);if(d){if(o=function(e){var t=e.length,a=new e.constructor(t);return t&&"string"==typeof e[0]&&De.call(e,"index")&&(a.index=e.index,a.input=e.input),a}(e),!l)return xi(e,o)}else{var p=hr(e),h=p==v||p==_;if(Hs(e))return Ai(e,l);if(p==k||p==f||h&&!r){if(o=u||h?{}:mr(e),!l)return u?function(e,t){return Ci(e,pr(e),t)}(e,function(e,t){return e&&Ci(t,Vo(t),e)}(o,e)):function(e,t){return Ci(e,dr(e),t)}(e,an(o,e))}else{if(!st[p])return r?e:{};o=function(e,t,a){var n,i=e.constructor;switch(t){case V:return ki(e);case y:case g:return new i(+e);case E:return function(e,t){var a=t?ki(e.buffer):e.buffer;return new e.constructor(a,e.byteOffset,e.byteLength)}(e,a);case F:case D:case R:case L:case P:case B:case O:case $:case U:return Si(e,a);case w:return new i;case A:case M:return new i(e);case N:return function(e){var t=new e.constructor(e.source,pe.exec(e));return t.lastIndex=e.lastIndex,t}(e);case T:return new i;case x:return n=e,La?Ne(La.call(n)):{}}}(e,p,l)}}s||(s=new Ga);var m=s.get(e);if(m)return m;s.set(e,o),io(e)?e.forEach((function(a){o.add(on(a,t,n,a,e,s))})):eo(e)&&e.forEach((function(a,i){o.set(i,on(a,t,n,i,e,s))}));var b=d?a:(c?u?nr:ar:u?Vo:Io)(e);return Tt(b||e,(function(a,i){b&&(a=e[i=a]),Qa(o,i,on(a,t,n,i,e,s))})),o}function ln(e,t,n){var i=n.length;if(null==e)return!i;for(e=Ne(e);i--;){var r=n[i],s=t[r],o=e[r];if(o===a&&!(r in e)||!s(o))return!1}return!0}function un(e,t,i){if("function"!=typeof e)throw new xe(n);return Cr((function(){e.apply(a,i)}),t)}function cn(e,t,a,n){var i=-1,r=It,s=!0,o=e.length,l=[],u=t.length;if(!o)return l;a&&(t=Et(t,Jt(a))),n?(r=Vt,s=!1):t.length>=200&&(r=Xt,s=!1,t=new Ha(t));e:for(;++i<o;){var c=e[i],d=null==a?c:a(c);if(c=n||0!==c?c:0,s&&d==d){for(var p=u;p--;)if(t[p]===d)continue e;l.push(c)}else r(t,d,n)||l.push(c)}return l}Ba.templateSettings={escape:Z,evaluate:J,interpolate:K,variable:"",imports:{_:Ba}},Ba.prototype=$a.prototype,Ba.prototype.constructor=Ba,Ua.prototype=Oa($a.prototype),Ua.prototype.constructor=Ua,ja.prototype=Oa($a.prototype),ja.prototype.constructor=ja,za.prototype.clear=function(){this.__data__=Ma?Ma(null):{},this.size=0},za.prototype.delete=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t},za.prototype.get=function(e){var t=this.__data__;if(Ma){var n=t[e];return n===i?a:n}return De.call(t,e)?t[e]:a},za.prototype.has=function(e){var t=this.__data__;return Ma?t[e]!==a:De.call(t,e)},za.prototype.set=function(e,t){var n=this.__data__;return this.size+=this.has(e)?0:1,n[e]=Ma&&t===a?i:t,this},Wa.prototype.clear=function(){this.__data__=[],this.size=0},Wa.prototype.delete=function(e){var t=this.__data__,a=en(t,e);return!(a<0||(a==t.length-1?t.pop():qe.call(t,a,1),--this.size,0))},Wa.prototype.get=function(e){var t=this.__data__,n=en(t,e);return n<0?a:t[n][1]},Wa.prototype.has=function(e){return en(this.__data__,e)>-1},Wa.prototype.set=function(e,t){var a=this.__data__,n=en(a,e);return n<0?(++this.size,a.push([e,t])):a[n][1]=t,this},Ya.prototype.clear=function(){this.size=0,this.__data__={hash:new za,map:new(ka||Wa),string:new za}},Ya.prototype.delete=function(e){var t=lr(this,e).delete(e);return this.size-=t?1:0,t},Ya.prototype.get=function(e){return lr(this,e).get(e)},Ya.prototype.has=function(e){return lr(this,e).has(e)},Ya.prototype.set=function(e,t){var a=lr(this,e),n=a.size;return a.set(e,t),this.size+=a.size==n?0:1,this},Ha.prototype.add=Ha.prototype.push=function(e){return this.__data__.set(e,i),this},Ha.prototype.has=function(e){return this.__data__.has(e)},Ga.prototype.clear=function(){this.__data__=new Wa,this.size=0},Ga.prototype.delete=function(e){var t=this.__data__,a=t.delete(e);return this.size=t.size,a},Ga.prototype.get=function(e){return this.__data__.get(e)},Ga.prototype.has=function(e){return this.__data__.has(e)},Ga.prototype.set=function(e,t){var a=this.__data__;if(a instanceof Wa){var n=a.__data__;if(!ka||n.length<199)return n.push([e,t]),this.size=++a.size,this;a=this.__data__=new Ya(n)}return a.set(e,t),this.size=a.size,this};var dn=Ei(vn),pn=Ei(_n,!0);function hn(e,t){var a=!0;return dn(e,(function(e,n,i){return a=!!t(e,n,i)})),a}function fn(e,t,n){for(var i=-1,r=e.length;++i<r;){var s=e[i],o=t(s);if(null!=o&&(l===a?o==o&&!so(o):n(o,l)))var l=o,u=s}return u}function mn(e,t){var a=[];return dn(e,(function(e,n,i){t(e,n,i)&&a.push(e)})),a}function yn(e,t,a,n,i){var r=-1,s=e.length;for(a||(a=yr),i||(i=[]);++r<s;){var o=e[r];t>0&&a(o)?t>1?yn(o,t-1,a,n,i):Ft(i,o):n||(i[i.length]=o)}return i}var gn=Fi(),bn=Fi(!0);function vn(e,t){return e&&gn(e,t,Io)}function _n(e,t){return e&&bn(e,t,Io)}function wn(e,t){return Ct(t,(function(t){return Zs(e[t])}))}function An(e,t){for(var n=0,i=(t=bi(t,e)).length;null!=e&&n<i;)e=e[Rr(t[n++])];return n&&n==i?e:a}function kn(e,t,a){var n=t(e);return js(e)?n:Ft(n,a(e))}function Sn(e){return null==e?e===a?"[object Undefined]":"[object Null]":Qe&&Qe in Ne(e)?function(e){var t=De.call(e,Qe),n=e[Qe];try{e[Qe]=a;var i=!0}catch(e){}var r=Pe.call(e);return i&&(t?e[Qe]=n:delete e[Qe]),r}(e):function(e){return Pe.call(e)}(e)}function Nn(e,t){return e>t}function Tn(e,t){return null!=e&&De.call(e,t)}function Mn(e,t){return null!=e&&t in Ne(e)}function xn(e,t,n){for(var i=n?Vt:It,r=e[0].length,s=e.length,o=s,l=ie(s),u=1/0,c=[];o--;){var d=e[o];o&&t&&(d=Et(d,Jt(t))),u=ga(d.length,u),l[o]=!n&&(t||r>=120&&d.length>=120)?new Ha(o&&d):a}d=e[0];var p=-1,h=l[0];e:for(;++p<r&&c.length<u;){var f=d[p],m=t?t(f):f;if(f=n||0!==f?f:0,!(h?Xt(h,m):i(c,m,n))){for(o=s;--o;){var y=l[o];if(!(y?Xt(y,m):i(e[o],m,n)))continue e}h&&h.push(m),c.push(f)}}return c}function Cn(e,t,n){var i=null==(e=Tr(e,t=bi(t,e)))?e:e[Rr(qr(t))];return null==i?a:St(i,e,n)}function In(e){return Qs(e)&&Sn(e)==f}function Vn(e,t,n,i,r){return e===t||(null==e||null==t||!Qs(e)&&!Qs(t)?e!=e&&t!=t:function(e,t,n,i,r,s){var o=js(e),l=js(t),u=o?m:hr(e),c=l?m:hr(t),d=(u=u==f?k:u)==k,p=(c=c==f?k:c)==k,h=u==c;if(h&&Hs(e)){if(!Hs(t))return!1;o=!0,d=!1}if(h&&!d)return s||(s=new Ga),o||oo(e)?er(e,t,n,i,r,s):function(e,t,a,n,i,r,s){switch(a){case E:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case V:return!(e.byteLength!=t.byteLength||!r(new ze(e),new ze(t)));case y:case g:case A:return Bs(+e,+t);case b:return e.name==t.name&&e.message==t.message;case N:case M:return e==t+"";case w:var o=ra;case T:var l=1&n;if(o||(o=la),e.size!=t.size&&!l)return!1;var u=s.get(e);if(u)return u==t;n|=2,s.set(e,t);var c=er(o(e),o(t),n,i,r,s);return s.delete(e),c;case x:if(La)return La.call(e)==La.call(t)}return!1}(e,t,u,n,i,r,s);if(!(1&n)){var v=d&&De.call(e,"__wrapped__"),_=p&&De.call(t,"__wrapped__");if(v||_){var S=v?e.value():e,C=_?t.value():t;return s||(s=new Ga),r(S,C,n,i,s)}}return!!h&&(s||(s=new Ga),function(e,t,n,i,r,s){var o=1&n,l=ar(e),u=l.length,c=ar(t),d=c.length;if(u!=d&&!o)return!1;for(var p=u;p--;){var h=l[p];if(!(o?h in t:De.call(t,h)))return!1}var f=s.get(e),m=s.get(t);if(f&&m)return f==t&&m==e;var y=!0;s.set(e,t),s.set(t,e);for(var g=o;++p<u;){var b=e[h=l[p]],v=t[h];if(i)var _=o?i(v,b,h,t,e,s):i(b,v,h,e,t,s);if(!(_===a?b===v||r(b,v,n,i,s):_)){y=!1;break}g||(g="constructor"==h)}if(y&&!g){var w=e.constructor,A=t.constructor;w==A||!("constructor"in e)||!("constructor"in t)||"function"==typeof w&&w instanceof w&&"function"==typeof A&&A instanceof A||(y=!1)}return s.delete(e),s.delete(t),y}(e,t,n,i,r,s))}(e,t,n,i,Vn,r))}function En(e,t,n,i){var r=n.length,s=r,o=!i;if(null==e)return!s;for(e=Ne(e);r--;){var l=n[r];if(o&&l[2]?l[1]!==e[l[0]]:!(l[0]in e))return!1}for(;++r<s;){var u=(l=n[r])[0],c=e[u],d=l[1];if(o&&l[2]){if(c===a&&!(u in e))return!1}else{var p=new Ga;if(i)var h=i(c,d,u,e,t,p);if(!(h===a?Vn(d,c,3,i,p):h))return!1}}return!0}function Fn(e){return!(!Xs(e)||(t=e,Le&&Le in t))&&(Zs(e)?$e:me).test(Lr(e));var t}function Dn(e){return"function"==typeof e?e:null==e?al:"object"==typeof e?js(e)?$n(e[0],e[1]):On(e):dl(e)}function Rn(e){if(!Ar(e))return ma(e);var t=[];for(var a in Ne(e))De.call(e,a)&&"constructor"!=a&&t.push(a);return t}function Ln(e){if(!Xs(e))return function(e){var t=[];if(null!=e)for(var a in Ne(e))t.push(a);return t}(e);var t=Ar(e),a=[];for(var n in e)("constructor"!=n||!t&&De.call(e,n))&&a.push(n);return a}function Pn(e,t){return e<t}function Bn(e,t){var a=-1,n=Ws(e)?ie(e.length):[];return dn(e,(function(e,i,r){n[++a]=t(e,i,r)})),n}function On(e){var t=ur(e);return 1==t.length&&t[0][2]?Sr(t[0][0],t[0][1]):function(a){return a===e||En(a,e,t)}}function $n(e,t){return vr(e)&&kr(t)?Sr(Rr(e),t):function(n){var i=No(n,e);return i===a&&i===t?To(n,e):Vn(t,i,3)}}function Un(e,t,n,i,r){e!==t&&gn(t,(function(s,o){if(r||(r=new Ga),Xs(s))!function(e,t,n,i,r,s,o){var l=Mr(e,n),u=Mr(t,n),c=o.get(u);if(c)Xa(e,n,c);else{var d=s?s(l,u,n+"",e,t,o):a,p=d===a;if(p){var h=js(u),f=!h&&Hs(u),m=!h&&!f&&oo(u);d=u,h||f||m?js(l)?d=l:Ys(l)?d=xi(l):f?(p=!1,d=Ai(u,!0)):m?(p=!1,d=Si(u,!0)):d=[]:ao(u)||Us(u)?(d=l,Us(l)?d=yo(l):Xs(l)&&!Zs(l)||(d=mr(u))):p=!1}p&&(o.set(u,d),r(d,u,i,s,o),o.delete(u)),Xa(e,n,d)}}(e,t,o,n,Un,i,r);else{var l=i?i(Mr(e,o),s,o+"",e,t,r):a;l===a&&(l=s),Xa(e,o,l)}}),Vo)}function jn(e,t){var n=e.length;if(n)return gr(t+=t<0?n:0,n)?e[t]:a}function zn(e,t,a){t=t.length?Et(t,(function(e){return js(e)?function(t){return An(t,1===e.length?e[0]:e)}:e})):[al];var n=-1;t=Et(t,Jt(or()));var i=Bn(e,(function(e,a,i){var r=Et(t,(function(t){return t(e)}));return{criteria:r,index:++n,value:e}}));return function(e,t){var a=e.length;for(e.sort(t);a--;)e[a]=e[a].value;return e}(i,(function(e,t){return function(e,t,a){for(var n=-1,i=e.criteria,r=t.criteria,s=i.length,o=a.length;++n<s;){var l=Ni(i[n],r[n]);if(l)return n>=o?l:l*("desc"==a[n]?-1:1)}return e.index-t.index}(e,t,a)}))}function Wn(e,t,a){for(var n=-1,i=t.length,r={};++n<i;){var s=t[n],o=An(e,s);a(o,s)&&Xn(r,bi(s,e),o)}return r}function Yn(e,t,a,n){var i=n?Ut:$t,r=-1,s=t.length,o=e;for(e===t&&(t=xi(t)),a&&(o=Et(e,Jt(a)));++r<s;)for(var l=0,u=t[r],c=a?a(u):u;(l=i(o,c,l,n))>-1;)o!==e&&qe.call(o,l,1),qe.call(e,l,1);return e}function Hn(e,t){for(var a=e?t.length:0,n=a-1;a--;){var i=t[a];if(a==n||i!==r){var r=i;gr(i)?qe.call(e,i,1):ci(e,i)}}return e}function Gn(e,t){return e+ft(_a()*(t-e+1))}function qn(e,t){var a="";if(!e||t<1||t>c)return a;do{t%2&&(a+=e),(t=ft(t/2))&&(e+=e)}while(t);return a}function Zn(e,t){return Ir(Nr(e,t,al),e+"")}function Jn(e){return Za(Oo(e))}function Kn(e,t){var a=Oo(e);return Fr(a,sn(t,0,a.length))}function Xn(e,t,n,i){if(!Xs(e))return e;for(var r=-1,s=(t=bi(t,e)).length,o=s-1,l=e;null!=l&&++r<s;){var u=Rr(t[r]),c=n;if("__proto__"===u||"constructor"===u||"prototype"===u)return e;if(r!=o){var d=l[u];(c=i?i(d,u,l):a)===a&&(c=Xs(d)?d:gr(t[r+1])?[]:{})}Qa(l,u,c),l=l[u]}return e}var Qn=xa?function(e,t){return xa.set(e,t),e}:al,ei=tt?function(e,t){return tt(e,"toString",{configurable:!0,enumerable:!1,value:Qo(t),writable:!0})}:al;function ti(e){return Fr(Oo(e))}function ai(e,t,a){var n=-1,i=e.length;t<0&&(t=-t>i?0:i+t),(a=a>i?i:a)<0&&(a+=i),i=t>a?0:a-t>>>0,t>>>=0;for(var r=ie(i);++n<i;)r[n]=e[n+t];return r}function ni(e,t){var a;return dn(e,(function(e,n,i){return!(a=t(e,n,i))})),!!a}function ii(e,t,a){var n=0,i=null==e?n:e.length;if("number"==typeof t&&t==t&&i<=2147483647){for(;n<i;){var r=n+i>>>1,s=e[r];null!==s&&!so(s)&&(a?s<=t:s<t)?n=r+1:i=r}return i}return ri(e,t,al,a)}function ri(e,t,n,i){var r=0,s=null==e?0:e.length;if(0===s)return 0;for(var o=(t=n(t))!=t,l=null===t,u=so(t),c=t===a;r<s;){var d=ft((r+s)/2),p=n(e[d]),h=p!==a,f=null===p,m=p==p,y=so(p);if(o)var g=i||m;else g=c?m&&(i||h):l?m&&h&&(i||!f):u?m&&h&&!f&&(i||!y):!f&&!y&&(i?p<=t:p<t);g?r=d+1:s=d}return ga(s,4294967294)}function si(e,t){for(var a=-1,n=e.length,i=0,r=[];++a<n;){var s=e[a],o=t?t(s):s;if(!a||!Bs(o,l)){var l=o;r[i++]=0===s?0:s}}return r}function oi(e){return"number"==typeof e?e:so(e)?d:+e}function li(e){if("string"==typeof e)return e;if(js(e))return Et(e,li)+"";if(so(e))return Pa?Pa.call(e):"";var t=e+"";return"0"==t&&1/e==-1/0?"-0":t}function ui(e,t,a){var n=-1,i=It,r=e.length,s=!0,o=[],l=o;if(a)s=!1,i=Vt;else if(r>=200){var u=t?null:qi(e);if(u)return la(u);s=!1,i=Xt,l=new Ha}else l=t?[]:o;e:for(;++n<r;){var c=e[n],d=t?t(c):c;if(c=a||0!==c?c:0,s&&d==d){for(var p=l.length;p--;)if(l[p]===d)continue e;t&&l.push(d),o.push(c)}else i(l,d,a)||(l!==o&&l.push(d),o.push(c))}return o}function ci(e,t){return null==(e=Tr(e,t=bi(t,e)))||delete e[Rr(qr(t))]}function di(e,t,a,n){return Xn(e,t,a(An(e,t)),n)}function pi(e,t,a,n){for(var i=e.length,r=n?i:-1;(n?r--:++r<i)&&t(e[r],r,e););return a?ai(e,n?0:r,n?r+1:i):ai(e,n?r+1:0,n?i:r)}function hi(e,t){var a=e;return a instanceof ja&&(a=a.value()),Dt(t,(function(e,t){return t.func.apply(t.thisArg,Ft([e],t.args))}),a)}function fi(e,t,a){var n=e.length;if(n<2)return n?ui(e[0]):[];for(var i=-1,r=ie(n);++i<n;)for(var s=e[i],o=-1;++o<n;)o!=i&&(r[i]=cn(r[i]||s,e[o],t,a));return ui(yn(r,1),t,a)}function mi(e,t,n){for(var i=-1,r=e.length,s=t.length,o={};++i<r;){var l=i<s?t[i]:a;n(o,e[i],l)}return o}function yi(e){return Ys(e)?e:[]}function gi(e){return"function"==typeof e?e:al}function bi(e,t){return js(e)?e:vr(e,t)?[e]:Dr(go(e))}var vi=Zn;function _i(e,t,n){var i=e.length;return n=n===a?i:n,!t&&n>=i?e:ai(e,t,n)}var wi=ot||function(e){return pt.clearTimeout(e)};function Ai(e,t){if(t)return e.slice();var a=e.length,n=We?We(a):new e.constructor(a);return e.copy(n),n}function ki(e){var t=new e.constructor(e.byteLength);return new ze(t).set(new ze(e)),t}function Si(e,t){var a=t?ki(e.buffer):e.buffer;return new e.constructor(a,e.byteOffset,e.length)}function Ni(e,t){if(e!==t){var n=e!==a,i=null===e,r=e==e,s=so(e),o=t!==a,l=null===t,u=t==t,c=so(t);if(!l&&!c&&!s&&e>t||s&&o&&u&&!l&&!c||i&&o&&u||!n&&u||!r)return 1;if(!i&&!s&&!c&&e<t||c&&n&&r&&!i&&!s||l&&n&&r||!o&&r||!u)return-1}return 0}function Ti(e,t,a,n){for(var i=-1,r=e.length,s=a.length,o=-1,l=t.length,u=ya(r-s,0),c=ie(l+u),d=!n;++o<l;)c[o]=t[o];for(;++i<s;)(d||i<r)&&(c[a[i]]=e[i]);for(;u--;)c[o++]=e[i++];return c}function Mi(e,t,a,n){for(var i=-1,r=e.length,s=-1,o=a.length,l=-1,u=t.length,c=ya(r-o,0),d=ie(c+u),p=!n;++i<c;)d[i]=e[i];for(var h=i;++l<u;)d[h+l]=t[l];for(;++s<o;)(p||i<r)&&(d[h+a[s]]=e[i++]);return d}function xi(e,t){var a=-1,n=e.length;for(t||(t=ie(n));++a<n;)t[a]=e[a];return t}function Ci(e,t,n,i){var r=!n;n||(n={});for(var s=-1,o=t.length;++s<o;){var l=t[s],u=i?i(n[l],e[l],l,n,e):a;u===a&&(u=e[l]),r?nn(n,l,u):Qa(n,l,u)}return n}function Ii(e,t){return function(a,n){var i=js(a)?Nt:tn,r=t?t():{};return i(a,e,or(n,2),r)}}function Vi(e){return Zn((function(t,n){var i=-1,r=n.length,s=r>1?n[r-1]:a,o=r>2?n[2]:a;for(s=e.length>3&&"function"==typeof s?(r--,s):a,o&&br(n[0],n[1],o)&&(s=r<3?a:s,r=1),t=Ne(t);++i<r;){var l=n[i];l&&e(t,l,i,s)}return t}))}function Ei(e,t){return function(a,n){if(null==a)return a;if(!Ws(a))return e(a,n);for(var i=a.length,r=t?i:-1,s=Ne(a);(t?r--:++r<i)&&!1!==n(s[r],r,s););return a}}function Fi(e){return function(t,a,n){for(var i=-1,r=Ne(t),s=n(t),o=s.length;o--;){var l=s[e?o:++i];if(!1===a(r[l],l,r))break}return t}}function Di(e){return function(t){var n=ia(t=go(t))?da(t):a,i=n?n[0]:t.charAt(0),r=n?_i(n,1).join(""):t.slice(1);return i[e]()+r}}function Ri(e){return function(t){return Dt(Jo(jo(t).replace(Ke,"")),e,"")}}function Li(e){return function(){var t=arguments;switch(t.length){case 0:return new e;case 1:return new e(t[0]);case 2:return new e(t[0],t[1]);case 3:return new e(t[0],t[1],t[2]);case 4:return new e(t[0],t[1],t[2],t[3]);case 5:return new e(t[0],t[1],t[2],t[3],t[4]);case 6:return new e(t[0],t[1],t[2],t[3],t[4],t[5]);case 7:return new e(t[0],t[1],t[2],t[3],t[4],t[5],t[6])}var a=Oa(e.prototype),n=e.apply(a,t);return Xs(n)?n:a}}function Pi(e){return function(t,n,i){var r=Ne(t);if(!Ws(t)){var s=or(n,3);t=Io(t),n=function(e){return s(r[e],e,r)}}var o=e(t,n,i);return o>-1?r[s?t[o]:o]:a}}function Bi(e){return tr((function(t){var i=t.length,r=i,s=Ua.prototype.thru;for(e&&t.reverse();r--;){var o=t[r];if("function"!=typeof o)throw new xe(n);if(s&&!l&&"wrapper"==rr(o))var l=new Ua([],!0)}for(r=l?r:i;++r<i;){var u=rr(o=t[r]),c="wrapper"==u?ir(o):a;l=c&&_r(c[0])&&424==c[1]&&!c[4].length&&1==c[9]?l[rr(c[0])].apply(l,c[3]):1==o.length&&_r(o)?l[u]():l.thru(o)}return function(){var e=arguments,a=e[0];if(l&&1==e.length&&js(a))return l.plant(a).value();for(var n=0,r=i?t[n].apply(this,e):a;++n<i;)r=t[n].call(this,r);return r}}))}function Oi(e,t,n,i,r,s,l,u,c,d){var p=t&o,h=1&t,f=2&t,m=24&t,y=512&t,g=f?a:Li(e);return function o(){for(var b=arguments.length,v=ie(b),_=b;_--;)v[_]=arguments[_];if(m)var w=sr(o),A=function(e,t){for(var a=e.length,n=0;a--;)e[a]===t&&++n;return n}(v,w);if(i&&(v=Ti(v,i,r,m)),s&&(v=Mi(v,s,l,m)),b-=A,m&&b<d){var k=oa(v,w);return Hi(e,t,Oi,o.placeholder,n,v,k,u,c,d-b)}var S=h?n:this,N=f?S[e]:e;return b=v.length,u?v=function(e,t){for(var n=e.length,i=ga(t.length,n),r=xi(e);i--;){var s=t[i];e[i]=gr(s,n)?r[s]:a}return e}(v,u):y&&b>1&&v.reverse(),p&&c<b&&(v.length=c),this&&this!==pt&&this instanceof o&&(N=g||Li(N)),N.apply(S,v)}}function $i(e,t){return function(a,n){return function(e,t,a,n){return vn(e,(function(e,i,r){t(n,a(e),i,r)})),n}(a,e,t(n),{})}}function Ui(e,t){return function(n,i){var r;if(n===a&&i===a)return t;if(n!==a&&(r=n),i!==a){if(r===a)return i;"string"==typeof n||"string"==typeof i?(n=li(n),i=li(i)):(n=oi(n),i=oi(i)),r=e(n,i)}return r}}function ji(e){return tr((function(t){return t=Et(t,Jt(or())),Zn((function(a){var n=this;return e(t,(function(e){return St(e,n,a)}))}))}))}function zi(e,t){var n=(t=t===a?" ":li(t)).length;if(n<2)return n?qn(t,e):t;var i=qn(t,ht(e/ca(t)));return ia(t)?_i(da(i),0,e).join(""):i.slice(0,e)}function Wi(e){return function(t,n,i){return i&&"number"!=typeof i&&br(t,n,i)&&(n=i=a),t=po(t),n===a?(n=t,t=0):n=po(n),function(e,t,a,n){for(var i=-1,r=ya(ht((t-e)/(a||1)),0),s=ie(r);r--;)s[n?r:++i]=e,e+=a;return s}(t,n,i=i===a?t<n?1:-1:po(i),e)}}function Yi(e){return function(t,a){return"string"==typeof t&&"string"==typeof a||(t=mo(t),a=mo(a)),e(t,a)}}function Hi(e,t,n,i,r,o,l,u,c,d){var p=8&t;t|=p?s:64,4&(t&=~(p?64:s))||(t&=-4);var h=[e,t,r,p?o:a,p?l:a,p?a:o,p?a:l,u,c,d],f=n.apply(a,h);return _r(e)&&xr(f,h),f.placeholder=i,Vr(f,e,t)}function Gi(e){var t=Se[e];return function(e,a){if(e=mo(e),(a=null==a?0:ga(ho(a),292))&&Pt(e)){var n=(go(e)+"e").split("e");return+((n=(go(t(n[0]+"e"+(+n[1]+a)))+"e").split("e"))[0]+"e"+(+n[1]-a))}return t(e)}}var qi=Na&&1/la(new Na([,-0]))[1]==u?function(e){return new Na(e)}:ol;function Zi(e){return function(t){var a=hr(t);return a==w?ra(t):a==T?ua(t):function(e,t){return Et(t,(function(t){return[t,e[t]]}))}(t,e(t))}}function Ji(e,t,i,u,c,d,p,h){var f=2&t;if(!f&&"function"!=typeof e)throw new xe(n);var m=u?u.length:0;if(m||(t&=-97,u=c=a),p=p===a?p:ya(ho(p),0),h=h===a?h:ho(h),m-=c?c.length:0,64&t){var y=u,g=c;u=c=a}var b=f?a:ir(e),v=[e,t,i,u,c,y,g,d,p,h];if(b&&function(e,t){var a=e[1],n=t[1],i=a|n,s=i<131,u=n==o&&8==a||n==o&&a==l&&e[7].length<=t[8]||384==n&&t[7].length<=t[8]&&8==a;if(!s&&!u)return e;1&n&&(e[2]=t[2],i|=1&a?0:4);var c=t[3];if(c){var d=e[3];e[3]=d?Ti(d,c,t[4]):c,e[4]=d?oa(e[3],r):t[4]}(c=t[5])&&(d=e[5],e[5]=d?Mi(d,c,t[6]):c,e[6]=d?oa(e[5],r):t[6]),(c=t[7])&&(e[7]=c),n&o&&(e[8]=null==e[8]?t[8]:ga(e[8],t[8])),null==e[9]&&(e[9]=t[9]),e[0]=t[0],e[1]=i}(v,b),e=v[0],t=v[1],i=v[2],u=v[3],c=v[4],!(h=v[9]=v[9]===a?f?0:e.length:ya(v[9]-m,0))&&24&t&&(t&=-25),t&&1!=t)_=8==t||16==t?function(e,t,n){var i=Li(e);return function r(){for(var s=arguments.length,o=ie(s),l=s,u=sr(r);l--;)o[l]=arguments[l];var c=s<3&&o[0]!==u&&o[s-1]!==u?[]:oa(o,u);return(s-=c.length)<n?Hi(e,t,Oi,r.placeholder,a,o,c,a,a,n-s):St(this&&this!==pt&&this instanceof r?i:e,this,o)}}(e,t,h):t!=s&&33!=t||c.length?Oi.apply(a,v):function(e,t,a,n){var i=1&t,r=Li(e);return function t(){for(var s=-1,o=arguments.length,l=-1,u=n.length,c=ie(u+o),d=this&&this!==pt&&this instanceof t?r:e;++l<u;)c[l]=n[l];for(;o--;)c[l++]=arguments[++s];return St(d,i?a:this,c)}}(e,t,i,u);else var _=function(e,t,a){var n=1&t,i=Li(e);return function t(){return(this&&this!==pt&&this instanceof t?i:e).apply(n?a:this,arguments)}}(e,t,i);return Vr((b?Qn:xr)(_,v),e,t)}function Ki(e,t,n,i){return e===a||Bs(e,Ve[n])&&!De.call(i,n)?t:e}function Xi(e,t,n,i,r,s){return Xs(e)&&Xs(t)&&(s.set(t,e),Un(e,t,a,Xi,s),s.delete(t)),e}function Qi(e){return ao(e)?a:e}function er(e,t,n,i,r,s){var o=1&n,l=e.length,u=t.length;if(l!=u&&!(o&&u>l))return!1;var c=s.get(e),d=s.get(t);if(c&&d)return c==t&&d==e;var p=-1,h=!0,f=2&n?new Ha:a;for(s.set(e,t),s.set(t,e);++p<l;){var m=e[p],y=t[p];if(i)var g=o?i(y,m,p,t,e,s):i(m,y,p,e,t,s);if(g!==a){if(g)continue;h=!1;break}if(f){if(!Lt(t,(function(e,t){if(!Xt(f,t)&&(m===e||r(m,e,n,i,s)))return f.push(t)}))){h=!1;break}}else if(m!==y&&!r(m,y,n,i,s)){h=!1;break}}return s.delete(e),s.delete(t),h}function tr(e){return Ir(Nr(e,a,zr),e+"")}function ar(e){return kn(e,Io,dr)}function nr(e){return kn(e,Vo,pr)}var ir=xa?function(e){return xa.get(e)}:ol;function rr(e){for(var t=e.name+"",a=Ca[t],n=De.call(Ca,t)?a.length:0;n--;){var i=a[n],r=i.func;if(null==r||r==e)return i.name}return t}function sr(e){return(De.call(Ba,"placeholder")?Ba:e).placeholder}function or(){var e=Ba.iteratee||nl;return e=e===nl?Dn:e,arguments.length?e(arguments[0],arguments[1]):e}function lr(e,t){var a,n,i=e.__data__;return("string"==(n=typeof(a=t))||"number"==n||"symbol"==n||"boolean"==n?"__proto__"!==a:null===a)?i["string"==typeof t?"string":"hash"]:i.map}function ur(e){for(var t=Io(e),a=t.length;a--;){var n=t[a],i=e[n];t[a]=[n,i,kr(i)]}return t}function cr(e,t){var n=function(e,t){return null==e?a:e[t]}(e,t);return Fn(n)?n:a}var dr=yt?function(e){return null==e?[]:(e=Ne(e),Ct(yt(e),(function(t){return Ge.call(e,t)})))}:fl,pr=yt?function(e){for(var t=[];e;)Ft(t,dr(e)),e=Ye(e);return t}:fl,hr=Sn;function fr(e,t,a){for(var n=-1,i=(t=bi(t,e)).length,r=!1;++n<i;){var s=Rr(t[n]);if(!(r=null!=e&&a(e,s)))break;e=e[s]}return r||++n!=i?r:!!(i=null==e?0:e.length)&&Ks(i)&&gr(s,i)&&(js(e)||Us(e))}function mr(e){return"function"!=typeof e.constructor||Ar(e)?{}:Oa(Ye(e))}function yr(e){return js(e)||Us(e)||!!(Ze&&e&&e[Ze])}function gr(e,t){var a=typeof e;return!!(t=null==t?c:t)&&("number"==a||"symbol"!=a&&ge.test(e))&&e>-1&&e%1==0&&e<t}function br(e,t,a){if(!Xs(a))return!1;var n=typeof t;return!!("number"==n?Ws(a)&&gr(t,a.length):"string"==n&&t in a)&&Bs(a[t],e)}function vr(e,t){if(js(e))return!1;var a=typeof e;return!("number"!=a&&"symbol"!=a&&"boolean"!=a&&null!=e&&!so(e))||Q.test(e)||!X.test(e)||null!=t&&e in Ne(t)}function _r(e){var t=rr(e),a=Ba[t];if("function"!=typeof a||!(t in ja.prototype))return!1;if(e===a)return!0;var n=ir(a);return!!n&&e===n[0]}(Aa&&hr(new Aa(new ArrayBuffer(1)))!=E||ka&&hr(new ka)!=w||Sa&&hr(Sa.resolve())!=S||Na&&hr(new Na)!=T||Ta&&hr(new Ta)!=C)&&(hr=function(e){var t=Sn(e),n=t==k?e.constructor:a,i=n?Lr(n):"";if(i)switch(i){case Ia:return E;case Va:return w;case Ea:return S;case Fa:return T;case Da:return C}return t});var wr=Ee?Zs:ml;function Ar(e){var t=e&&e.constructor;return e===("function"==typeof t&&t.prototype||Ve)}function kr(e){return e==e&&!Xs(e)}function Sr(e,t){return function(n){return null!=n&&n[e]===t&&(t!==a||e in Ne(n))}}function Nr(e,t,n){return t=ya(t===a?e.length-1:t,0),function(){for(var a=arguments,i=-1,r=ya(a.length-t,0),s=ie(r);++i<r;)s[i]=a[t+i];i=-1;for(var o=ie(t+1);++i<t;)o[i]=a[i];return o[t]=n(s),St(e,this,o)}}function Tr(e,t){return t.length<2?e:An(e,ai(t,0,-1))}function Mr(e,t){if(("constructor"!==t||"function"!=typeof e[t])&&"__proto__"!=t)return e[t]}var xr=Er(Qn),Cr=dt||function(e,t){return pt.setTimeout(e,t)},Ir=Er(ei);function Vr(e,t,a){var n=t+"";return Ir(e,function(e,t){var a=t.length;if(!a)return e;var n=a-1;return t[n]=(a>1?"& ":"")+t[n],t=t.join(a>2?", ":" "),e.replace(re,"{\n/* [wrapped with "+t+"] */\n")}(n,function(e,t){return Tt(h,(function(a){var n="_."+a[0];t&a[1]&&!It(e,n)&&e.push(n)})),e.sort()}(function(e){var t=e.match(se);return t?t[1].split(oe):[]}(n),a)))}function Er(e){var t=0,n=0;return function(){var i=ba(),r=16-(i-n);if(n=i,r>0){if(++t>=800)return arguments[0]}else t=0;return e.apply(a,arguments)}}function Fr(e,t){var n=-1,i=e.length,r=i-1;for(t=t===a?i:t;++n<t;){var s=Gn(n,r),o=e[s];e[s]=e[n],e[n]=o}return e.length=t,e}var Dr=function(e){var t=Es(e,(function(e){return 500===a.size&&a.clear(),e})),a=t.cache;return t}((function(e){var t=[];return 46===e.charCodeAt(0)&&t.push(""),e.replace(ee,(function(e,a,n,i){t.push(n?i.replace(ce,"$1"):a||e)})),t}));function Rr(e){if("string"==typeof e||so(e))return e;var t=e+"";return"0"==t&&1/e==-1/0?"-0":t}function Lr(e){if(null!=e){try{return Fe.call(e)}catch(e){}try{return e+""}catch(e){}}return""}function Pr(e){if(e instanceof ja)return e.clone();var t=new Ua(e.__wrapped__,e.__chain__);return t.__actions__=xi(e.__actions__),t.__index__=e.__index__,t.__values__=e.__values__,t}var Br=Zn((function(e,t){return Ys(e)?cn(e,yn(t,1,Ys,!0)):[]})),Or=Zn((function(e,t){var n=qr(t);return Ys(n)&&(n=a),Ys(e)?cn(e,yn(t,1,Ys,!0),or(n,2)):[]})),$r=Zn((function(e,t){var n=qr(t);return Ys(n)&&(n=a),Ys(e)?cn(e,yn(t,1,Ys,!0),a,n):[]}));function Ur(e,t,a){var n=null==e?0:e.length;if(!n)return-1;var i=null==a?0:ho(a);return i<0&&(i=ya(n+i,0)),Ot(e,or(t,3),i)}function jr(e,t,n){var i=null==e?0:e.length;if(!i)return-1;var r=i-1;return n!==a&&(r=ho(n),r=n<0?ya(i+r,0):ga(r,i-1)),Ot(e,or(t,3),r,!0)}function zr(e){return null!=e&&e.length?yn(e,1):[]}function Wr(e){return e&&e.length?e[0]:a}var Yr=Zn((function(e){var t=Et(e,yi);return t.length&&t[0]===e[0]?xn(t):[]})),Hr=Zn((function(e){var t=qr(e),n=Et(e,yi);return t===qr(n)?t=a:n.pop(),n.length&&n[0]===e[0]?xn(n,or(t,2)):[]})),Gr=Zn((function(e){var t=qr(e),n=Et(e,yi);return(t="function"==typeof t?t:a)&&n.pop(),n.length&&n[0]===e[0]?xn(n,a,t):[]}));function qr(e){var t=null==e?0:e.length;return t?e[t-1]:a}var Zr=Zn(Jr);function Jr(e,t){return e&&e.length&&t&&t.length?Yn(e,t):e}var Kr=tr((function(e,t){var a=null==e?0:e.length,n=rn(e,t);return Hn(e,Et(t,(function(e){return gr(e,a)?+e:e})).sort(Ni)),n}));function Xr(e){return null==e?e:wa.call(e)}var Qr=Zn((function(e){return ui(yn(e,1,Ys,!0))})),es=Zn((function(e){var t=qr(e);return Ys(t)&&(t=a),ui(yn(e,1,Ys,!0),or(t,2))})),ts=Zn((function(e){var t=qr(e);return t="function"==typeof t?t:a,ui(yn(e,1,Ys,!0),a,t)}));function as(e){if(!e||!e.length)return[];var t=0;return e=Ct(e,(function(e){if(Ys(e))return t=ya(e.length,t),!0})),qt(t,(function(t){return Et(e,Wt(t))}))}function ns(e,t){if(!e||!e.length)return[];var n=as(e);return null==t?n:Et(n,(function(e){return St(t,a,e)}))}var is=Zn((function(e,t){return Ys(e)?cn(e,t):[]})),rs=Zn((function(e){return fi(Ct(e,Ys))})),ss=Zn((function(e){var t=qr(e);return Ys(t)&&(t=a),fi(Ct(e,Ys),or(t,2))})),os=Zn((function(e){var t=qr(e);return t="function"==typeof t?t:a,fi(Ct(e,Ys),a,t)})),ls=Zn(as),us=Zn((function(e){var t=e.length,n=t>1?e[t-1]:a;return n="function"==typeof n?(e.pop(),n):a,ns(e,n)}));function cs(e){var t=Ba(e);return t.__chain__=!0,t}function ds(e,t){return t(e)}var ps=tr((function(e){var t=e.length,n=t?e[0]:0,i=this.__wrapped__,r=function(t){return rn(t,e)};return!(t>1||this.__actions__.length)&&i instanceof ja&&gr(n)?((i=i.slice(n,+n+(t?1:0))).__actions__.push({func:ds,args:[r],thisArg:a}),new Ua(i,this.__chain__).thru((function(e){return t&&!e.length&&e.push(a),e}))):this.thru(r)})),hs=Ii((function(e,t,a){De.call(e,a)?++e[a]:nn(e,a,1)})),fs=Pi(Ur),ms=Pi(jr);function ys(e,t){return(js(e)?Tt:dn)(e,or(t,3))}function gs(e,t){return(js(e)?Mt:pn)(e,or(t,3))}var bs=Ii((function(e,t,a){De.call(e,a)?e[a].push(t):nn(e,a,[t])})),vs=Zn((function(e,t,a){var n=-1,i="function"==typeof t,r=Ws(e)?ie(e.length):[];return dn(e,(function(e){r[++n]=i?St(t,e,a):Cn(e,t,a)})),r})),_s=Ii((function(e,t,a){nn(e,a,t)}));function ws(e,t){return(js(e)?Et:Bn)(e,or(t,3))}var As=Ii((function(e,t,a){e[a?0:1].push(t)}),(function(){return[[],[]]})),ks=Zn((function(e,t){if(null==e)return[];var a=t.length;return a>1&&br(e,t[0],t[1])?t=[]:a>2&&br(t[0],t[1],t[2])&&(t=[t[0]]),zn(e,yn(t,1),[])})),Ss=ct||function(){return pt.Date.now()};function Ns(e,t,n){return t=n?a:t,t=e&&null==t?e.length:t,Ji(e,o,a,a,a,a,t)}function Ts(e,t){var i;if("function"!=typeof t)throw new xe(n);return e=ho(e),function(){return--e>0&&(i=t.apply(this,arguments)),e<=1&&(t=a),i}}var Ms=Zn((function(e,t,a){var n=1;if(a.length){var i=oa(a,sr(Ms));n|=s}return Ji(e,n,t,a,i)})),xs=Zn((function(e,t,a){var n=3;if(a.length){var i=oa(a,sr(xs));n|=s}return Ji(t,n,e,a,i)}));function Cs(e,t,i){var r,s,o,l,u,c,d=0,p=!1,h=!1,f=!0;if("function"!=typeof e)throw new xe(n);function m(t){var n=r,i=s;return r=s=a,d=t,l=e.apply(i,n)}function y(e){var n=e-c;return c===a||n>=t||n<0||h&&e-d>=o}function g(){var e=Ss();if(y(e))return b(e);u=Cr(g,function(e){var a=t-(e-c);return h?ga(a,o-(e-d)):a}(e))}function b(e){return u=a,f&&r?m(e):(r=s=a,l)}function v(){var e=Ss(),n=y(e);if(r=arguments,s=this,c=e,n){if(u===a)return function(e){return d=e,u=Cr(g,t),p?m(e):l}(c);if(h)return wi(u),u=Cr(g,t),m(c)}return u===a&&(u=Cr(g,t)),l}return t=mo(t)||0,Xs(i)&&(p=!!i.leading,o=(h="maxWait"in i)?ya(mo(i.maxWait)||0,t):o,f="trailing"in i?!!i.trailing:f),v.cancel=function(){u!==a&&wi(u),d=0,r=c=s=u=a},v.flush=function(){return u===a?l:b(Ss())},v}var Is=Zn((function(e,t){return un(e,1,t)})),Vs=Zn((function(e,t,a){return un(e,mo(t)||0,a)}));function Es(e,t){if("function"!=typeof e||null!=t&&"function"!=typeof t)throw new xe(n);var a=function(){var n=arguments,i=t?t.apply(this,n):n[0],r=a.cache;if(r.has(i))return r.get(i);var s=e.apply(this,n);return a.cache=r.set(i,s)||r,s};return a.cache=new(Es.Cache||Ya),a}function Fs(e){if("function"!=typeof e)throw new xe(n);return function(){var t=arguments;switch(t.length){case 0:return!e.call(this);case 1:return!e.call(this,t[0]);case 2:return!e.call(this,t[0],t[1]);case 3:return!e.call(this,t[0],t[1],t[2])}return!e.apply(this,t)}}Es.Cache=Ya;var Ds=vi((function(e,t){var a=(t=1==t.length&&js(t[0])?Et(t[0],Jt(or())):Et(yn(t,1),Jt(or()))).length;return Zn((function(n){for(var i=-1,r=ga(n.length,a);++i<r;)n[i]=t[i].call(this,n[i]);return St(e,this,n)}))})),Rs=Zn((function(e,t){var n=oa(t,sr(Rs));return Ji(e,s,a,t,n)})),Ls=Zn((function(e,t){var n=oa(t,sr(Ls));return Ji(e,64,a,t,n)})),Ps=tr((function(e,t){return Ji(e,l,a,a,a,t)}));function Bs(e,t){return e===t||e!=e&&t!=t}var Os=Yi(Nn),$s=Yi((function(e,t){return e>=t})),Us=In(function(){return arguments}())?In:function(e){return Qs(e)&&De.call(e,"callee")&&!Ge.call(e,"callee")},js=ie.isArray,zs=bt?Jt(bt):function(e){return Qs(e)&&Sn(e)==V};function Ws(e){return null!=e&&Ks(e.length)&&!Zs(e)}function Ys(e){return Qs(e)&&Ws(e)}var Hs=gt||ml,Gs=vt?Jt(vt):function(e){return Qs(e)&&Sn(e)==g};function qs(e){if(!Qs(e))return!1;var t=Sn(e);return t==b||"[object DOMException]"==t||"string"==typeof e.message&&"string"==typeof e.name&&!ao(e)}function Zs(e){if(!Xs(e))return!1;var t=Sn(e);return t==v||t==_||"[object AsyncFunction]"==t||"[object Proxy]"==t}function Js(e){return"number"==typeof e&&e==ho(e)}function Ks(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=c}function Xs(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}function Qs(e){return null!=e&&"object"==typeof e}var eo=_t?Jt(_t):function(e){return Qs(e)&&hr(e)==w};function to(e){return"number"==typeof e||Qs(e)&&Sn(e)==A}function ao(e){if(!Qs(e)||Sn(e)!=k)return!1;var t=Ye(e);if(null===t)return!0;var a=De.call(t,"constructor")&&t.constructor;return"function"==typeof a&&a instanceof a&&Fe.call(a)==Be}var no=wt?Jt(wt):function(e){return Qs(e)&&Sn(e)==N},io=At?Jt(At):function(e){return Qs(e)&&hr(e)==T};function ro(e){return"string"==typeof e||!js(e)&&Qs(e)&&Sn(e)==M}function so(e){return"symbol"==typeof e||Qs(e)&&Sn(e)==x}var oo=kt?Jt(kt):function(e){return Qs(e)&&Ks(e.length)&&!!rt[Sn(e)]},lo=Yi(Pn),uo=Yi((function(e,t){return e<=t}));function co(e){if(!e)return[];if(Ws(e))return ro(e)?da(e):xi(e);if(Je&&e[Je])return function(e){for(var t,a=[];!(t=e.next()).done;)a.push(t.value);return a}(e[Je]());var t=hr(e);return(t==w?ra:t==T?la:Oo)(e)}function po(e){return e?(e=mo(e))===u||e===-1/0?17976931348623157e292*(e<0?-1:1):e==e?e:0:0===e?e:0}function ho(e){var t=po(e),a=t%1;return t==t?a?t-a:t:0}function fo(e){return e?sn(ho(e),0,p):0}function mo(e){if("number"==typeof e)return e;if(so(e))return d;if(Xs(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=Xs(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=Zt(e);var a=fe.test(e);return a||ye.test(e)?ut(e.slice(2),a?2:8):he.test(e)?d:+e}function yo(e){return Ci(e,Vo(e))}function go(e){return null==e?"":li(e)}var bo=Vi((function(e,t){if(Ar(t)||Ws(t))Ci(t,Io(t),e);else for(var a in t)De.call(t,a)&&Qa(e,a,t[a])})),vo=Vi((function(e,t){Ci(t,Vo(t),e)})),_o=Vi((function(e,t,a,n){Ci(t,Vo(t),e,n)})),wo=Vi((function(e,t,a,n){Ci(t,Io(t),e,n)})),Ao=tr(rn),ko=Zn((function(e,t){e=Ne(e);var n=-1,i=t.length,r=i>2?t[2]:a;for(r&&br(t[0],t[1],r)&&(i=1);++n<i;)for(var s=t[n],o=Vo(s),l=-1,u=o.length;++l<u;){var c=o[l],d=e[c];(d===a||Bs(d,Ve[c])&&!De.call(e,c))&&(e[c]=s[c])}return e})),So=Zn((function(e){return e.push(a,Xi),St(Fo,a,e)}));function No(e,t,n){var i=null==e?a:An(e,t);return i===a?n:i}function To(e,t){return null!=e&&fr(e,t,Mn)}var Mo=$i((function(e,t,a){null!=t&&"function"!=typeof t.toString&&(t=Pe.call(t)),e[t]=a}),Qo(al)),xo=$i((function(e,t,a){null!=t&&"function"!=typeof t.toString&&(t=Pe.call(t)),De.call(e,t)?e[t].push(a):e[t]=[a]}),or),Co=Zn(Cn);function Io(e){return Ws(e)?qa(e):Rn(e)}function Vo(e){return Ws(e)?qa(e,!0):Ln(e)}var Eo=Vi((function(e,t,a){Un(e,t,a)})),Fo=Vi((function(e,t,a,n){Un(e,t,a,n)})),Do=tr((function(e,t){var a={};if(null==e)return a;var n=!1;t=Et(t,(function(t){return t=bi(t,e),n||(n=t.length>1),t})),Ci(e,nr(e),a),n&&(a=on(a,7,Qi));for(var i=t.length;i--;)ci(a,t[i]);return a})),Ro=tr((function(e,t){return null==e?{}:function(e,t){return Wn(e,t,(function(t,a){return To(e,a)}))}(e,t)}));function Lo(e,t){if(null==e)return{};var a=Et(nr(e),(function(e){return[e]}));return t=or(t),Wn(e,a,(function(e,a){return t(e,a[0])}))}var Po=Zi(Io),Bo=Zi(Vo);function Oo(e){return null==e?[]:Kt(e,Io(e))}var $o=Ri((function(e,t,a){return t=t.toLowerCase(),e+(a?Uo(t):t)}));function Uo(e){return Zo(go(e).toLowerCase())}function jo(e){return(e=go(e))&&e.replace(be,ta).replace(Xe,"")}var zo=Ri((function(e,t,a){return e+(a?"-":"")+t.toLowerCase()})),Wo=Ri((function(e,t,a){return e+(a?" ":"")+t.toLowerCase()})),Yo=Di("toLowerCase"),Ho=Ri((function(e,t,a){return e+(a?"_":"")+t.toLowerCase()})),Go=Ri((function(e,t,a){return e+(a?" ":"")+Zo(t)})),qo=Ri((function(e,t,a){return e+(a?" ":"")+t.toUpperCase()})),Zo=Di("toUpperCase");function Jo(e,t,n){return e=go(e),(t=n?a:t)===a?function(e){return at.test(e)}(e)?function(e){return e.match(et)||[]}(e):function(e){return e.match(le)||[]}(e):e.match(t)||[]}var Ko=Zn((function(e,t){try{return St(e,a,t)}catch(e){return qs(e)?e:new Ae(e)}})),Xo=tr((function(e,t){return Tt(t,(function(t){t=Rr(t),nn(e,t,Ms(e[t],e))})),e}));function Qo(e){return function(){return e}}var el=Bi(),tl=Bi(!0);function al(e){return e}function nl(e){return Dn("function"==typeof e?e:on(e,1))}var il=Zn((function(e,t){return function(a){return Cn(a,e,t)}})),rl=Zn((function(e,t){return function(a){return Cn(e,a,t)}}));function sl(e,t,a){var n=Io(t),i=wn(t,n);null!=a||Xs(t)&&(i.length||!n.length)||(a=t,t=e,e=this,i=wn(t,Io(t)));var r=!(Xs(a)&&"chain"in a&&!a.chain),s=Zs(e);return Tt(i,(function(a){var n=t[a];e[a]=n,s&&(e.prototype[a]=function(){var t=this.__chain__;if(r||t){var a=e(this.__wrapped__);return(a.__actions__=xi(this.__actions__)).push({func:n,args:arguments,thisArg:e}),a.__chain__=t,a}return n.apply(e,Ft([this.value()],arguments))})})),e}function ol(){}var ll=ji(Et),ul=ji(xt),cl=ji(Lt);function dl(e){return vr(e)?Wt(Rr(e)):function(e){return function(t){return An(t,e)}}(e)}var pl=Wi(),hl=Wi(!0);function fl(){return[]}function ml(){return!1}var yl,gl=Ui((function(e,t){return e+t}),0),bl=Gi("ceil"),vl=Ui((function(e,t){return e/t}),1),_l=Gi("floor"),wl=Ui((function(e,t){return e*t}),1),Al=Gi("round"),kl=Ui((function(e,t){return e-t}),0);return Ba.after=function(e,t){if("function"!=typeof t)throw new xe(n);return e=ho(e),function(){if(--e<1)return t.apply(this,arguments)}},Ba.ary=Ns,Ba.assign=bo,Ba.assignIn=vo,Ba.assignInWith=_o,Ba.assignWith=wo,Ba.at=Ao,Ba.before=Ts,Ba.bind=Ms,Ba.bindAll=Xo,Ba.bindKey=xs,Ba.castArray=function(){if(!arguments.length)return[];var e=arguments[0];return js(e)?e:[e]},Ba.chain=cs,Ba.chunk=function(e,t,n){t=(n?br(e,t,n):t===a)?1:ya(ho(t),0);var i=null==e?0:e.length;if(!i||t<1)return[];for(var r=0,s=0,o=ie(ht(i/t));r<i;)o[s++]=ai(e,r,r+=t);return o},Ba.compact=function(e){for(var t=-1,a=null==e?0:e.length,n=0,i=[];++t<a;){var r=e[t];r&&(i[n++]=r)}return i},Ba.concat=function(){var e=arguments.length;if(!e)return[];for(var t=ie(e-1),a=arguments[0],n=e;n--;)t[n-1]=arguments[n];return Ft(js(a)?xi(a):[a],yn(t,1))},Ba.cond=function(e){var t=null==e?0:e.length,a=or();return e=t?Et(e,(function(e){if("function"!=typeof e[1])throw new xe(n);return[a(e[0]),e[1]]})):[],Zn((function(a){for(var n=-1;++n<t;){var i=e[n];if(St(i[0],this,a))return St(i[1],this,a)}}))},Ba.conforms=function(e){return function(e){var t=Io(e);return function(a){return ln(a,e,t)}}(on(e,1))},Ba.constant=Qo,Ba.countBy=hs,Ba.create=function(e,t){var a=Oa(e);return null==t?a:an(a,t)},Ba.curry=function e(t,n,i){var r=Ji(t,8,a,a,a,a,a,n=i?a:n);return r.placeholder=e.placeholder,r},Ba.curryRight=function e(t,n,i){var r=Ji(t,16,a,a,a,a,a,n=i?a:n);return r.placeholder=e.placeholder,r},Ba.debounce=Cs,Ba.defaults=ko,Ba.defaultsDeep=So,Ba.defer=Is,Ba.delay=Vs,Ba.difference=Br,Ba.differenceBy=Or,Ba.differenceWith=$r,Ba.drop=function(e,t,n){var i=null==e?0:e.length;return i?ai(e,(t=n||t===a?1:ho(t))<0?0:t,i):[]},Ba.dropRight=function(e,t,n){var i=null==e?0:e.length;return i?ai(e,0,(t=i-(t=n||t===a?1:ho(t)))<0?0:t):[]},Ba.dropRightWhile=function(e,t){return e&&e.length?pi(e,or(t,3),!0,!0):[]},Ba.dropWhile=function(e,t){return e&&e.length?pi(e,or(t,3),!0):[]},Ba.fill=function(e,t,n,i){var r=null==e?0:e.length;return r?(n&&"number"!=typeof n&&br(e,t,n)&&(n=0,i=r),function(e,t,n,i){var r=e.length;for((n=ho(n))<0&&(n=-n>r?0:r+n),(i=i===a||i>r?r:ho(i))<0&&(i+=r),i=n>i?0:fo(i);n<i;)e[n++]=t;return e}(e,t,n,i)):[]},Ba.filter=function(e,t){return(js(e)?Ct:mn)(e,or(t,3))},Ba.flatMap=function(e,t){return yn(ws(e,t),1)},Ba.flatMapDeep=function(e,t){return yn(ws(e,t),u)},Ba.flatMapDepth=function(e,t,n){return n=n===a?1:ho(n),yn(ws(e,t),n)},Ba.flatten=zr,Ba.flattenDeep=function(e){return null!=e&&e.length?yn(e,u):[]},Ba.flattenDepth=function(e,t){return null!=e&&e.length?yn(e,t=t===a?1:ho(t)):[]},Ba.flip=function(e){return Ji(e,512)},Ba.flow=el,Ba.flowRight=tl,Ba.fromPairs=function(e){for(var t=-1,a=null==e?0:e.length,n={};++t<a;){var i=e[t];n[i[0]]=i[1]}return n},Ba.functions=function(e){return null==e?[]:wn(e,Io(e))},Ba.functionsIn=function(e){return null==e?[]:wn(e,Vo(e))},Ba.groupBy=bs,Ba.initial=function(e){return null!=e&&e.length?ai(e,0,-1):[]},Ba.intersection=Yr,Ba.intersectionBy=Hr,Ba.intersectionWith=Gr,Ba.invert=Mo,Ba.invertBy=xo,Ba.invokeMap=vs,Ba.iteratee=nl,Ba.keyBy=_s,Ba.keys=Io,Ba.keysIn=Vo,Ba.map=ws,Ba.mapKeys=function(e,t){var a={};return t=or(t,3),vn(e,(function(e,n,i){nn(a,t(e,n,i),e)})),a},Ba.mapValues=function(e,t){var a={};return t=or(t,3),vn(e,(function(e,n,i){nn(a,n,t(e,n,i))})),a},Ba.matches=function(e){return On(on(e,1))},Ba.matchesProperty=function(e,t){return $n(e,on(t,1))},Ba.memoize=Es,Ba.merge=Eo,Ba.mergeWith=Fo,Ba.method=il,Ba.methodOf=rl,Ba.mixin=sl,Ba.negate=Fs,Ba.nthArg=function(e){return e=ho(e),Zn((function(t){return jn(t,e)}))},Ba.omit=Do,Ba.omitBy=function(e,t){return Lo(e,Fs(or(t)))},Ba.once=function(e){return Ts(2,e)},Ba.orderBy=function(e,t,n,i){return null==e?[]:(js(t)||(t=null==t?[]:[t]),js(n=i?a:n)||(n=null==n?[]:[n]),zn(e,t,n))},Ba.over=ll,Ba.overArgs=Ds,Ba.overEvery=ul,Ba.overSome=cl,Ba.partial=Rs,Ba.partialRight=Ls,Ba.partition=As,Ba.pick=Ro,Ba.pickBy=Lo,Ba.property=dl,Ba.propertyOf=function(e){return function(t){return null==e?a:An(e,t)}},Ba.pull=Zr,Ba.pullAll=Jr,Ba.pullAllBy=function(e,t,a){return e&&e.length&&t&&t.length?Yn(e,t,or(a,2)):e},Ba.pullAllWith=function(e,t,n){return e&&e.length&&t&&t.length?Yn(e,t,a,n):e},Ba.pullAt=Kr,Ba.range=pl,Ba.rangeRight=hl,Ba.rearg=Ps,Ba.reject=function(e,t){return(js(e)?Ct:mn)(e,Fs(or(t,3)))},Ba.remove=function(e,t){var a=[];if(!e||!e.length)return a;var n=-1,i=[],r=e.length;for(t=or(t,3);++n<r;){var s=e[n];t(s,n,e)&&(a.push(s),i.push(n))}return Hn(e,i),a},Ba.rest=function(e,t){if("function"!=typeof e)throw new xe(n);return Zn(e,t=t===a?t:ho(t))},Ba.reverse=Xr,Ba.sampleSize=function(e,t,n){return t=(n?br(e,t,n):t===a)?1:ho(t),(js(e)?Ja:Kn)(e,t)},Ba.set=function(e,t,a){return null==e?e:Xn(e,t,a)},Ba.setWith=function(e,t,n,i){return i="function"==typeof i?i:a,null==e?e:Xn(e,t,n,i)},Ba.shuffle=function(e){return(js(e)?Ka:ti)(e)},Ba.slice=function(e,t,n){var i=null==e?0:e.length;return i?(n&&"number"!=typeof n&&br(e,t,n)?(t=0,n=i):(t=null==t?0:ho(t),n=n===a?i:ho(n)),ai(e,t,n)):[]},Ba.sortBy=ks,Ba.sortedUniq=function(e){return e&&e.length?si(e):[]},Ba.sortedUniqBy=function(e,t){return e&&e.length?si(e,or(t,2)):[]},Ba.split=function(e,t,n){return n&&"number"!=typeof n&&br(e,t,n)&&(t=n=a),(n=n===a?p:n>>>0)?(e=go(e))&&("string"==typeof t||null!=t&&!no(t))&&!(t=li(t))&&ia(e)?_i(da(e),0,n):e.split(t,n):[]},Ba.spread=function(e,t){if("function"!=typeof e)throw new xe(n);return t=null==t?0:ya(ho(t),0),Zn((function(a){var n=a[t],i=_i(a,0,t);return n&&Ft(i,n),St(e,this,i)}))},Ba.tail=function(e){var t=null==e?0:e.length;return t?ai(e,1,t):[]},Ba.take=function(e,t,n){return e&&e.length?ai(e,0,(t=n||t===a?1:ho(t))<0?0:t):[]},Ba.takeRight=function(e,t,n){var i=null==e?0:e.length;return i?ai(e,(t=i-(t=n||t===a?1:ho(t)))<0?0:t,i):[]},Ba.takeRightWhile=function(e,t){return e&&e.length?pi(e,or(t,3),!1,!0):[]},Ba.takeWhile=function(e,t){return e&&e.length?pi(e,or(t,3)):[]},Ba.tap=function(e,t){return t(e),e},Ba.throttle=function(e,t,a){var i=!0,r=!0;if("function"!=typeof e)throw new xe(n);return Xs(a)&&(i="leading"in a?!!a.leading:i,r="trailing"in a?!!a.trailing:r),Cs(e,t,{leading:i,maxWait:t,trailing:r})},Ba.thru=ds,Ba.toArray=co,Ba.toPairs=Po,Ba.toPairsIn=Bo,Ba.toPath=function(e){return js(e)?Et(e,Rr):so(e)?[e]:xi(Dr(go(e)))},Ba.toPlainObject=yo,Ba.transform=function(e,t,a){var n=js(e),i=n||Hs(e)||oo(e);if(t=or(t,4),null==a){var r=e&&e.constructor;a=i?n?new r:[]:Xs(e)&&Zs(r)?Oa(Ye(e)):{}}return(i?Tt:vn)(e,(function(e,n,i){return t(a,e,n,i)})),a},Ba.unary=function(e){return Ns(e,1)},Ba.union=Qr,Ba.unionBy=es,Ba.unionWith=ts,Ba.uniq=function(e){return e&&e.length?ui(e):[]},Ba.uniqBy=function(e,t){return e&&e.length?ui(e,or(t,2)):[]},Ba.uniqWith=function(e,t){return t="function"==typeof t?t:a,e&&e.length?ui(e,a,t):[]},Ba.unset=function(e,t){return null==e||ci(e,t)},Ba.unzip=as,Ba.unzipWith=ns,Ba.update=function(e,t,a){return null==e?e:di(e,t,gi(a))},Ba.updateWith=function(e,t,n,i){return i="function"==typeof i?i:a,null==e?e:di(e,t,gi(n),i)},Ba.values=Oo,Ba.valuesIn=function(e){return null==e?[]:Kt(e,Vo(e))},Ba.without=is,Ba.words=Jo,Ba.wrap=function(e,t){return Rs(gi(t),e)},Ba.xor=rs,Ba.xorBy=ss,Ba.xorWith=os,Ba.zip=ls,Ba.zipObject=function(e,t){return mi(e||[],t||[],Qa)},Ba.zipObjectDeep=function(e,t){return mi(e||[],t||[],Xn)},Ba.zipWith=us,Ba.entries=Po,Ba.entriesIn=Bo,Ba.extend=vo,Ba.extendWith=_o,sl(Ba,Ba),Ba.add=gl,Ba.attempt=Ko,Ba.camelCase=$o,Ba.capitalize=Uo,Ba.ceil=bl,Ba.clamp=function(e,t,n){return n===a&&(n=t,t=a),n!==a&&(n=(n=mo(n))==n?n:0),t!==a&&(t=(t=mo(t))==t?t:0),sn(mo(e),t,n)},Ba.clone=function(e){return on(e,4)},Ba.cloneDeep=function(e){return on(e,5)},Ba.cloneDeepWith=function(e,t){return on(e,5,t="function"==typeof t?t:a)},Ba.cloneWith=function(e,t){return on(e,4,t="function"==typeof t?t:a)},Ba.conformsTo=function(e,t){return null==t||ln(e,t,Io(t))},Ba.deburr=jo,Ba.defaultTo=function(e,t){return null==e||e!=e?t:e},Ba.divide=vl,Ba.endsWith=function(e,t,n){e=go(e),t=li(t);var i=e.length,r=n=n===a?i:sn(ho(n),0,i);return(n-=t.length)>=0&&e.slice(n,r)==t},Ba.eq=Bs,Ba.escape=function(e){return(e=go(e))&&q.test(e)?e.replace(H,aa):e},Ba.escapeRegExp=function(e){return(e=go(e))&&ae.test(e)?e.replace(te,"\\$&"):e},Ba.every=function(e,t,n){var i=js(e)?xt:hn;return n&&br(e,t,n)&&(t=a),i(e,or(t,3))},Ba.find=fs,Ba.findIndex=Ur,Ba.findKey=function(e,t){return Bt(e,or(t,3),vn)},Ba.findLast=ms,Ba.findLastIndex=jr,Ba.findLastKey=function(e,t){return Bt(e,or(t,3),_n)},Ba.floor=_l,Ba.forEach=ys,Ba.forEachRight=gs,Ba.forIn=function(e,t){return null==e?e:gn(e,or(t,3),Vo)},Ba.forInRight=function(e,t){return null==e?e:bn(e,or(t,3),Vo)},Ba.forOwn=function(e,t){return e&&vn(e,or(t,3))},Ba.forOwnRight=function(e,t){return e&&_n(e,or(t,3))},Ba.get=No,Ba.gt=Os,Ba.gte=$s,Ba.has=function(e,t){return null!=e&&fr(e,t,Tn)},Ba.hasIn=To,Ba.head=Wr,Ba.identity=al,Ba.includes=function(e,t,a,n){e=Ws(e)?e:Oo(e),a=a&&!n?ho(a):0;var i=e.length;return a<0&&(a=ya(i+a,0)),ro(e)?a<=i&&e.indexOf(t,a)>-1:!!i&&$t(e,t,a)>-1},Ba.indexOf=function(e,t,a){var n=null==e?0:e.length;if(!n)return-1;var i=null==a?0:ho(a);return i<0&&(i=ya(n+i,0)),$t(e,t,i)},Ba.inRange=function(e,t,n){return t=po(t),n===a?(n=t,t=0):n=po(n),function(e,t,a){return e>=ga(t,a)&&e<ya(t,a)}(e=mo(e),t,n)},Ba.invoke=Co,Ba.isArguments=Us,Ba.isArray=js,Ba.isArrayBuffer=zs,Ba.isArrayLike=Ws,Ba.isArrayLikeObject=Ys,Ba.isBoolean=function(e){return!0===e||!1===e||Qs(e)&&Sn(e)==y},Ba.isBuffer=Hs,Ba.isDate=Gs,Ba.isElement=function(e){return Qs(e)&&1===e.nodeType&&!ao(e)},Ba.isEmpty=function(e){if(null==e)return!0;if(Ws(e)&&(js(e)||"string"==typeof e||"function"==typeof e.splice||Hs(e)||oo(e)||Us(e)))return!e.length;var t=hr(e);if(t==w||t==T)return!e.size;if(Ar(e))return!Rn(e).length;for(var a in e)if(De.call(e,a))return!1;return!0},Ba.isEqual=function(e,t){return Vn(e,t)},Ba.isEqualWith=function(e,t,n){var i=(n="function"==typeof n?n:a)?n(e,t):a;return i===a?Vn(e,t,a,n):!!i},Ba.isError=qs,Ba.isFinite=function(e){return"number"==typeof e&&Pt(e)},Ba.isFunction=Zs,Ba.isInteger=Js,Ba.isLength=Ks,Ba.isMap=eo,Ba.isMatch=function(e,t){return e===t||En(e,t,ur(t))},Ba.isMatchWith=function(e,t,n){return n="function"==typeof n?n:a,En(e,t,ur(t),n)},Ba.isNaN=function(e){return to(e)&&e!=+e},Ba.isNative=function(e){if(wr(e))throw new Ae("Unsupported core-js use. Try https://npms.io/search?q=ponyfill.");return Fn(e)},Ba.isNil=function(e){return null==e},Ba.isNull=function(e){return null===e},Ba.isNumber=to,Ba.isObject=Xs,Ba.isObjectLike=Qs,Ba.isPlainObject=ao,Ba.isRegExp=no,Ba.isSafeInteger=function(e){return Js(e)&&e>=-9007199254740991&&e<=c},Ba.isSet=io,Ba.isString=ro,Ba.isSymbol=so,Ba.isTypedArray=oo,Ba.isUndefined=function(e){return e===a},Ba.isWeakMap=function(e){return Qs(e)&&hr(e)==C},Ba.isWeakSet=function(e){return Qs(e)&&"[object WeakSet]"==Sn(e)},Ba.join=function(e,t){return null==e?"":Yt.call(e,t)},Ba.kebabCase=zo,Ba.last=qr,Ba.lastIndexOf=function(e,t,n){var i=null==e?0:e.length;if(!i)return-1;var r=i;return n!==a&&(r=(r=ho(n))<0?ya(i+r,0):ga(r,i-1)),t==t?function(e,t,a){for(var n=a+1;n--;)if(e[n]===t)return n;return n}(e,t,r):Ot(e,jt,r,!0)},Ba.lowerCase=Wo,Ba.lowerFirst=Yo,Ba.lt=lo,Ba.lte=uo,Ba.max=function(e){return e&&e.length?fn(e,al,Nn):a},Ba.maxBy=function(e,t){return e&&e.length?fn(e,or(t,2),Nn):a},Ba.mean=function(e){return zt(e,al)},Ba.meanBy=function(e,t){return zt(e,or(t,2))},Ba.min=function(e){return e&&e.length?fn(e,al,Pn):a},Ba.minBy=function(e,t){return e&&e.length?fn(e,or(t,2),Pn):a},Ba.stubArray=fl,Ba.stubFalse=ml,Ba.stubObject=function(){return{}},Ba.stubString=function(){return""},Ba.stubTrue=function(){return!0},Ba.multiply=wl,Ba.nth=function(e,t){return e&&e.length?jn(e,ho(t)):a},Ba.noConflict=function(){return pt._===this&&(pt._=Oe),this},Ba.noop=ol,Ba.now=Ss,Ba.pad=function(e,t,a){e=go(e);var n=(t=ho(t))?ca(e):0;if(!t||n>=t)return e;var i=(t-n)/2;return zi(ft(i),a)+e+zi(ht(i),a)},Ba.padEnd=function(e,t,a){e=go(e);var n=(t=ho(t))?ca(e):0;return t&&n<t?e+zi(t-n,a):e},Ba.padStart=function(e,t,a){e=go(e);var n=(t=ho(t))?ca(e):0;return t&&n<t?zi(t-n,a)+e:e},Ba.parseInt=function(e,t,a){return a||null==t?t=0:t&&(t=+t),va(go(e).replace(ne,""),t||0)},Ba.random=function(e,t,n){if(n&&"boolean"!=typeof n&&br(e,t,n)&&(t=n=a),n===a&&("boolean"==typeof t?(n=t,t=a):"boolean"==typeof e&&(n=e,e=a)),e===a&&t===a?(e=0,t=1):(e=po(e),t===a?(t=e,e=0):t=po(t)),e>t){var i=e;e=t,t=i}if(n||e%1||t%1){var r=_a();return ga(e+r*(t-e+lt("1e-"+((r+"").length-1))),t)}return Gn(e,t)},Ba.reduce=function(e,t,a){var n=js(e)?Dt:Ht,i=arguments.length<3;return n(e,or(t,4),a,i,dn)},Ba.reduceRight=function(e,t,a){var n=js(e)?Rt:Ht,i=arguments.length<3;return n(e,or(t,4),a,i,pn)},Ba.repeat=function(e,t,n){return t=(n?br(e,t,n):t===a)?1:ho(t),qn(go(e),t)},Ba.replace=function(){var e=arguments,t=go(e[0]);return e.length<3?t:t.replace(e[1],e[2])},Ba.result=function(e,t,n){var i=-1,r=(t=bi(t,e)).length;for(r||(r=1,e=a);++i<r;){var s=null==e?a:e[Rr(t[i])];s===a&&(i=r,s=n),e=Zs(s)?s.call(e):s}return e},Ba.round=Al,Ba.runInContext=e,Ba.sample=function(e){return(js(e)?Za:Jn)(e)},Ba.size=function(e){if(null==e)return 0;if(Ws(e))return ro(e)?ca(e):e.length;var t=hr(e);return t==w||t==T?e.size:Rn(e).length},Ba.snakeCase=Ho,Ba.some=function(e,t,n){var i=js(e)?Lt:ni;return n&&br(e,t,n)&&(t=a),i(e,or(t,3))},Ba.sortedIndex=function(e,t){return ii(e,t)},Ba.sortedIndexBy=function(e,t,a){return ri(e,t,or(a,2))},Ba.sortedIndexOf=function(e,t){var a=null==e?0:e.length;if(a){var n=ii(e,t);if(n<a&&Bs(e[n],t))return n}return-1},Ba.sortedLastIndex=function(e,t){return ii(e,t,!0)},Ba.sortedLastIndexBy=function(e,t,a){return ri(e,t,or(a,2),!0)},Ba.sortedLastIndexOf=function(e,t){if(null!=e&&e.length){var a=ii(e,t,!0)-1;if(Bs(e[a],t))return a}return-1},Ba.startCase=Go,Ba.startsWith=function(e,t,a){return e=go(e),a=null==a?0:sn(ho(a),0,e.length),t=li(t),e.slice(a,a+t.length)==t},Ba.subtract=kl,Ba.sum=function(e){return e&&e.length?Gt(e,al):0},Ba.sumBy=function(e,t){return e&&e.length?Gt(e,or(t,2)):0},Ba.template=function(e,t,n){var i=Ba.templateSettings;n&&br(e,t,n)&&(t=a),e=go(e),t=_o({},t,i,Ki);var r,s,o=_o({},t.imports,i.imports,Ki),l=Io(o),u=Kt(o,l),c=0,d=t.interpolate||ve,p="__p += '",h=Te((t.escape||ve).source+"|"+d.source+"|"+(d===K?de:ve).source+"|"+(t.evaluate||ve).source+"|$","g"),f="//# sourceURL="+(De.call(t,"sourceURL")?(t.sourceURL+"").replace(/\s/g," "):"lodash.templateSources["+ ++it+"]")+"\n";e.replace(h,(function(t,a,n,i,o,l){return n||(n=i),p+=e.slice(c,l).replace(_e,na),a&&(r=!0,p+="' +\n__e("+a+") +\n'"),o&&(s=!0,p+="';\n"+o+";\n__p += '"),n&&(p+="' +\n((__t = ("+n+")) == null ? '' : __t) +\n'"),c=l+t.length,t})),p+="';\n";var m=De.call(t,"variable")&&t.variable;if(m){if(ue.test(m))throw new Ae("Invalid `variable` option passed into `_.template`")}else p="with (obj) {\n"+p+"\n}\n";p=(s?p.replace(j,""):p).replace(z,"$1").replace(W,"$1;"),p="function("+(m||"obj")+") {\n"+(m?"":"obj || (obj = {});\n")+"var __t, __p = ''"+(r?", __e = _.escape":"")+(s?", __j = Array.prototype.join;\nfunction print() { __p += __j.call(arguments, '') }\n":";\n")+p+"return __p\n}";var y=Ko((function(){return ke(l,f+"return "+p).apply(a,u)}));if(y.source=p,qs(y))throw y;return y},Ba.times=function(e,t){if((e=ho(e))<1||e>c)return[];var a=p,n=ga(e,p);t=or(t),e-=p;for(var i=qt(n,t);++a<e;)t(a);return i},Ba.toFinite=po,Ba.toInteger=ho,Ba.toLength=fo,Ba.toLower=function(e){return go(e).toLowerCase()},Ba.toNumber=mo,Ba.toSafeInteger=function(e){return e?sn(ho(e),-9007199254740991,c):0===e?e:0},Ba.toString=go,Ba.toUpper=function(e){return go(e).toUpperCase()},Ba.trim=function(e,t,n){if((e=go(e))&&(n||t===a))return Zt(e);if(!e||!(t=li(t)))return e;var i=da(e),r=da(t);return _i(i,Qt(i,r),ea(i,r)+1).join("")},Ba.trimEnd=function(e,t,n){if((e=go(e))&&(n||t===a))return e.slice(0,pa(e)+1);if(!e||!(t=li(t)))return e;var i=da(e);return _i(i,0,ea(i,da(t))+1).join("")},Ba.trimStart=function(e,t,n){if((e=go(e))&&(n||t===a))return e.replace(ne,"");if(!e||!(t=li(t)))return e;var i=da(e);return _i(i,Qt(i,da(t))).join("")},Ba.truncate=function(e,t){var n=30,i="...";if(Xs(t)){var r="separator"in t?t.separator:r;n="length"in t?ho(t.length):n,i="omission"in t?li(t.omission):i}var s=(e=go(e)).length;if(ia(e)){var o=da(e);s=o.length}if(n>=s)return e;var l=n-ca(i);if(l<1)return i;var u=o?_i(o,0,l).join(""):e.slice(0,l);if(r===a)return u+i;if(o&&(l+=u.length-l),no(r)){if(e.slice(l).search(r)){var c,d=u;for(r.global||(r=Te(r.source,go(pe.exec(r))+"g")),r.lastIndex=0;c=r.exec(d);)var p=c.index;u=u.slice(0,p===a?l:p)}}else if(e.indexOf(li(r),l)!=l){var h=u.lastIndexOf(r);h>-1&&(u=u.slice(0,h))}return u+i},Ba.unescape=function(e){return(e=go(e))&&G.test(e)?e.replace(Y,ha):e},Ba.uniqueId=function(e){var t=++Re;return go(e)+t},Ba.upperCase=qo,Ba.upperFirst=Zo,Ba.each=ys,Ba.eachRight=gs,Ba.first=Wr,sl(Ba,(yl={},vn(Ba,(function(e,t){De.call(Ba.prototype,t)||(yl[t]=e)})),yl),{chain:!1}),Ba.VERSION="4.17.21",Tt(["bind","bindKey","curry","curryRight","partial","partialRight"],(function(e){Ba[e].placeholder=Ba})),Tt(["drop","take"],(function(e,t){ja.prototype[e]=function(n){n=n===a?1:ya(ho(n),0);var i=this.__filtered__&&!t?new ja(this):this.clone();return i.__filtered__?i.__takeCount__=ga(n,i.__takeCount__):i.__views__.push({size:ga(n,p),type:e+(i.__dir__<0?"Right":"")}),i},ja.prototype[e+"Right"]=function(t){return this.reverse()[e](t).reverse()}})),Tt(["filter","map","takeWhile"],(function(e,t){var a=t+1,n=1==a||3==a;ja.prototype[e]=function(e){var t=this.clone();return t.__iteratees__.push({iteratee:or(e,3),type:a}),t.__filtered__=t.__filtered__||n,t}})),Tt(["head","last"],(function(e,t){var a="take"+(t?"Right":"");ja.prototype[e]=function(){return this[a](1).value()[0]}})),Tt(["initial","tail"],(function(e,t){var a="drop"+(t?"":"Right");ja.prototype[e]=function(){return this.__filtered__?new ja(this):this[a](1)}})),ja.prototype.compact=function(){return this.filter(al)},ja.prototype.find=function(e){return this.filter(e).head()},ja.prototype.findLast=function(e){return this.reverse().find(e)},ja.prototype.invokeMap=Zn((function(e,t){return"function"==typeof e?new ja(this):this.map((function(a){return Cn(a,e,t)}))})),ja.prototype.reject=function(e){return this.filter(Fs(or(e)))},ja.prototype.slice=function(e,t){e=ho(e);var n=this;return n.__filtered__&&(e>0||t<0)?new ja(n):(e<0?n=n.takeRight(-e):e&&(n=n.drop(e)),t!==a&&(n=(t=ho(t))<0?n.dropRight(-t):n.take(t-e)),n)},ja.prototype.takeRightWhile=function(e){return this.reverse().takeWhile(e).reverse()},ja.prototype.toArray=function(){return this.take(p)},vn(ja.prototype,(function(e,t){var n=/^(?:filter|find|map|reject)|While$/.test(t),i=/^(?:head|last)$/.test(t),r=Ba[i?"take"+("last"==t?"Right":""):t],s=i||/^find/.test(t);r&&(Ba.prototype[t]=function(){var t=this.__wrapped__,o=i?[1]:arguments,l=t instanceof ja,u=o[0],c=l||js(t),d=function(e){var t=r.apply(Ba,Ft([e],o));return i&&p?t[0]:t};c&&n&&"function"==typeof u&&1!=u.length&&(l=c=!1);var p=this.__chain__,h=!!this.__actions__.length,f=s&&!p,m=l&&!h;if(!s&&c){t=m?t:new ja(this);var y=e.apply(t,o);return y.__actions__.push({func:ds,args:[d],thisArg:a}),new Ua(y,p)}return f&&m?e.apply(this,o):(y=this.thru(d),f?i?y.value()[0]:y.value():y)})})),Tt(["pop","push","shift","sort","splice","unshift"],(function(e){var t=Ce[e],a=/^(?:push|sort|unshift)$/.test(e)?"tap":"thru",n=/^(?:pop|shift)$/.test(e);Ba.prototype[e]=function(){var e=arguments;if(n&&!this.__chain__){var i=this.value();return t.apply(js(i)?i:[],e)}return this[a]((function(a){return t.apply(js(a)?a:[],e)}))}})),vn(ja.prototype,(function(e,t){var a=Ba[t];if(a){var n=a.name+"";De.call(Ca,n)||(Ca[n]=[]),Ca[n].push({name:t,func:a})}})),Ca[Oi(a,2).name]=[{name:"wrapper",func:a}],ja.prototype.clone=function(){var e=new ja(this.__wrapped__);return e.__actions__=xi(this.__actions__),e.__dir__=this.__dir__,e.__filtered__=this.__filtered__,e.__iteratees__=xi(this.__iteratees__),e.__takeCount__=this.__takeCount__,e.__views__=xi(this.__views__),e},ja.prototype.reverse=function(){if(this.__filtered__){var e=new ja(this);e.__dir__=-1,e.__filtered__=!0}else(e=this.clone()).__dir__*=-1;return e},ja.prototype.value=function(){var e=this.__wrapped__.value(),t=this.__dir__,a=js(e),n=t<0,i=a?e.length:0,r=function(e,t,a){for(var n=-1,i=a.length;++n<i;){var r=a[n],s=r.size;switch(r.type){case"drop":e+=s;break;case"dropRight":t-=s;break;case"take":t=ga(t,e+s);break;case"takeRight":e=ya(e,t-s)}}return{start:e,end:t}}(0,i,this.__views__),s=r.start,o=r.end,l=o-s,u=n?o:s-1,c=this.__iteratees__,d=c.length,p=0,h=ga(l,this.__takeCount__);if(!a||!n&&i==l&&h==l)return hi(e,this.__actions__);var f=[];e:for(;l--&&p<h;){for(var m=-1,y=e[u+=t];++m<d;){var g=c[m],b=g.iteratee,v=g.type,_=b(y);if(2==v)y=_;else if(!_){if(1==v)continue e;break e}}f[p++]=y}return f},Ba.prototype.at=ps,Ba.prototype.chain=function(){return cs(this)},Ba.prototype.commit=function(){return new Ua(this.value(),this.__chain__)},Ba.prototype.next=function(){this.__values__===a&&(this.__values__=co(this.value()));var e=this.__index__>=this.__values__.length;return{done:e,value:e?a:this.__values__[this.__index__++]}},Ba.prototype.plant=function(e){for(var t,n=this;n instanceof $a;){var i=Pr(n);i.__index__=0,i.__values__=a,t?r.__wrapped__=i:t=i;var r=i;n=n.__wrapped__}return r.__wrapped__=e,t},Ba.prototype.reverse=function(){var e=this.__wrapped__;if(e instanceof ja){var t=e;return this.__actions__.length&&(t=new ja(this)),(t=t.reverse()).__actions__.push({func:ds,args:[Xr],thisArg:a}),new Ua(t,this.__chain__)}return this.thru(Xr)},Ba.prototype.toJSON=Ba.prototype.valueOf=Ba.prototype.value=function(){return hi(this.__wrapped__,this.__actions__)},Ba.prototype.first=Ba.prototype.head,Je&&(Ba.prototype[Je]=function(){return this}),Ba}();ft?((ft.exports=fa)._=fa,ht._=fa):pt._=fa}).call(G)}(H,H.exports)),H.exports);class Z extends ${name="";displayName="";type=void 0;info;preload=!0;loadingManagerRule="load";item;itemRepo;condition;conditionFields=[];conditionFieldNames=[];dependantFields=[];dependenciesInitialized=!1;linkableTypes=[];collapsed=!1;presets=[];datatype=null;defaultValue=null;minValue=null;maxValue=null;language=null;widget=null;length=null;labelType=null;blocks=[];connections=[];_id="";_internalValue;_internalOptions=[];_updateConditions=!0;_hidden=!1;get hidden(){return!(!this.condition||!this.dependenciesInitialized)&&(this._updateConditions&&(this._hidden=!this._calculateConditionBlock(this.condition),this._updateConditions=!1),this._hidden)}get id(){return this._id}get options(){return this._internalOptions}set options(e){this._internalOptions=e,this.updateConditions()}get value(){return this._internalValue}set value(e){this._internalValue=e,this._processDependencies()}constructor(e,t=void 0,a=void 0,n=void 0,i=void 0,r=void 0){super(i),e instanceof O?(this._id=e.id,this.restoreFromSnapshot(e)):(h.assert(e,"Field has no name!"),h.assert(a,"Field has no type!"),this._id=h.createFieldID(),this.name=e,this.displayName=t||e,this.type=a,this._internalValue=n,this.item=i,this.itemRepo=r)}updateConditions(){this.condition&&this.dependenciesInitialized&&(this._updateConditions=!0,u.$emit("field:hiddenChanged",this.id))}getId(){return this.id}resetValue(){this.value=this.defaultValue}makeIdsUnique(e=new Map,t=!1){if(e.has(this._id)||t){const t=h.createFieldID();e.set(this._id,t),this._id=t}else e.set(this._id,this._id);for(const a of this.blocks)a.makeIdsUnique(e,t);return e}transformNodeIds(e){for(const t of this.blocks)t.transformNodeIds(e);"Attribute"===this.type&&"Node"===this.datatype&&this.value&&e.has(this.value)&&(this.value=e.get(this.value))}findBlock(e){for(const t of this.blocks){const a=t.findBlock(e);if(a)return a}return null}clone(e=void 0,t=!1){let a=new Z(this.name,this.displayName,this.type);void 0===this._internalValue?a._internalValue=void 0:null===this._internalValue?a._internalValue=null:"Link"===this.type?a._internalValue=this._internalValue:a._internalValue=q.cloneDeep(this._internalValue),a.info=this.info,a.preload=this.preload,a.loadingManagerRule=this.loadingManagerRule,a.item=this.item,a.ownerItem=this.ownerItem,a.itemRepo=this.itemRepo,a.condition=this.condition,a.conditionFields=this.conditionFields,a.conditionFieldNames=this.conditionFieldNames,a.dependantFields=this.dependantFields,a.collapsed=this.collapsed,a.presets=this.presets,a.labelType=this.labelType,a.datatype=this.datatype,a.defaultValue=this.defaultValue,a.minValue=this.minValue,a.maxValue=this.maxValue,a.options=this.options,a.language=this.language,a.widget=this.widget,a.length=this.length,a.linkableTypes=this.linkableTypes;for(const n of this.blocks){let i=n.clone(e,!0,{},t);e&&(i=g.instance.proxyBlock(i,e)),a.blocks.push(i)}for(const t of this.connections){let n=t.clone();e&&(n=g.instance.proxyConnection(n,e)),a.connections.push(n)}return a}_processDependencies(){for(const e of this.dependantFields)e.updateConditions()}_getConditionField(e){for(const t of this.conditionFields)if(t&&t.name===e)return t;return null}_calculateConditionField(e,t){if(!e.startsWith("$")){let a;e.includes(".")?(a=e.split("."),e=a.splice(0,1)[0]):a=[];let n=e.endsWith("?");n&&(e=e.substring(0,e.length-1));const i=this._getConditionField(e);if(!i)return n||console.error("Field to resolve condition not found: "+e),!1;let r=i.value;for(let t=0;t<a.length;t++){if(!r)return console.error(`Field path ${a.join(".")} not found in field ${e}!`),!1;r=r[a[t]]}return"object"==typeof t?void 0!==t.$isset?t.$isset===!!r:void 0!==t.$not?t.$not!==r:(console.error("Condition value cannot be interpreted: ",t,this),!1):i.value==t}switch(e){case"$isroot":return this.item._id===this.itemRepo.rootItemId===t;case"$parenttype":return console.log("$parenttype is not yet implemented!",this),!1;case"$optionsexist":return(Array.isArray(this.options)&&this.options.length>0)===t;case"$featureenabled":return this.itemRepo.apiClient.isFeatureEnabled(t);default:return console.error("Computed value unknown: "+e,this),!1}}_calculateConditionBlock(e){for(const t in e)if(e.hasOwnProperty(t)){const a=e[t];if("$or"===t)if(Array.isArray(a)){let e=!1;for(const t of a)if(this._calculateConditionBlock(t)){e=!0;break}if(!e)return!1}else console.error("Condition contains $or but its value is not an array!");else if("$not"===t){if("object"!=typeof a)console.error("When using the $not operator, the value needs to be an object");else if(this._calculateConditionBlock(a))return!1}else if(!this._calculateConditionField(t,a))return!1}return!0}refreshFieldDependencies(){for(const e of this.blocks)e.refreshFieldDependencies()}refreshDependantFields(e,t){const a=[];if(this.condition)for(let t of this.conditionFieldNames){const n=t.endsWith("?");n&&(t=t.substring(0,t.length-1));const i=e.get(t);i?a.push(i):n||console.warn("Condition field not found: "+t)}this.conditionFields=a,this.dependantFields=t||[],this.dependenciesInitialized=!0}setCondition(e){e?"object"==typeof e?this.condition=e:(console.error("Condition must be an object if set",e),this.condition=null):this.condition=null,this.conditionFieldNames=[],this.condition&&this._scanConditions(this.condition)}_scanConditions(e){for(let t in e)if(e.hasOwnProperty(t)){const a=e[t];if(Array.isArray(a))for(const e of a)this._scanConditions(e);else t.startsWith("$")||(t.includes(".")&&(t=t.split(".")[0]),this.conditionFieldNames.includes(t)||this.conditionFieldNames.push(t))}}forEachField(e){if(e(this),this.blocks)for(const t of this.blocks)t.forEachField(e)}setInfo(e){this.info=e}setPreload(e){this.preload=e}setLoadingManagerRule(e){this.loadingManagerRule=e}setLinkableTypes(e){this.linkableTypes=e}setDefaultValue(e){this.defaultValue=e,void 0!==this._internalValue&&null!==this._internalValue||(this._internalValue=e)}setMinValue(e){this.minValue=e}setMaxValue(e){this.maxValue=e}setOptions(e){this.options=e}setDatatype(e){this.datatype=e}setLanguage(e){this.language=e}setLength(e){this.length=e}setWidget(e){this.widget=e}setBlocks(e){this.blocks=e}setConnections(e){this.connections=e}setCollapsed(e){this.collapsed=!!e}setPresets(e){this.presets=e||[]}setLabelType(e){this.labelType=e||"info"}createSnapshot(e=!1){h.assert(this.id,"Field has no ID. Cannot create snapshot");const t=[];for(const a of this.blocks)t.push(a.createSnapshot(e));const a=[];for(const e of this.connections)a.push(e.createSnapshot());return new O(this.id,"field",{name:this.name,displayName:this.displayName,type:this.type,value:this._internalValue,preload:this.preload,info:this.info,loadingManagerRule:this.loadingManagerRule,item:this.item,itemRepo:this.itemRepo,condition:this.condition,conditionFields:this.conditionFields,conditionFieldNames:this.conditionFieldNames,dependantFields:this.dependantFields,linkableTypes:this.linkableTypes,collapsed:this.collapsed,presets:this.presets,datatype:this.datatype,defaultValue:this.defaultValue,minValue:this.minValue,maxValue:this.maxValue,options:this.options,language:this.language,widget:this.widget,length:this.length,labelType:this.labelType,blocks:t,connections:a})}restoreFromSnapshot(e){e.id===this.id?(this.name=e.data.name,this.displayName=e.data.displayName,this.type=e.data.type,this._internalValue=e.data.value,this.info=e.data.info,this.preload=e.data.preload,this.loadingManagerRule=e.data.loadingManagerRule,this.item=e.data.item,this.ownerItem=e.data.item,this.itemRepo=e.data.itemRepo,this.condition=e.data.condition,this.conditionFields=e.data.conditionFields,this.conditionFieldNames=e.data.conditionFieldNames,this.dependantFields=e.data.dependantFields,this.linkableTypes=e.data.linkableTypes,this.collapsed=e.data.collapsed,this.presets=e.data.presets,this.datatype=e.data.datatype,this.defaultValue=e.data.defaultValue,this.minValue=e.data.minValue,this.maxValue=e.data.maxValue,this.options=e.data.options,this.language=e.data.language,this.widget=e.data.widget,this.length=e.data.length,this.labelType=e.data.labelType,this.blocks=[],this.connections=[],this._rollbackArray(this.blocks,e.data.blocks,((e,t)=>g.instance.proxyBlock(new ae(e,t),this.ownerItem))),this._rollbackArray(this.connections,e.data.connections,((e,t)=>g.instance.proxyConnection(new U(e.data,t),this.ownerItem)))):console.error("Snapshot ID does not match! Cannot rollback!",this,e)}rollbackFromSnapshot(e){this.value=e.data.value,this._rollbackArray(this.blocks,e.data.blocks,((e,t)=>g.instance.proxyBlock(new ae(e,t),this.ownerItem))),this._rollbackArray(this.connections,e.data.connections,((e,t)=>g.instance.proxyConnection(new U(e.data,t),this.ownerItem)))}}class J extends ${id;name=void 0;displayName=void 0;value;type=void 0;datatype=void 0;linkableTypes=[];order=0;constructor(e=void 0,t=void 0,a=void 0){super(a),this.value=t,this.id=h.createItemOrBlockID(),this.name=e,this.displayName=e,this._updateDisplayName()}getId(){return this.id}setName(e){this.name=e,this._updateDisplayName()}setType(e){this.type=e}setOrder(e){this.order=e}clone(e=new Map){const t=new J;return t.ownerItem=this.ownerItem,t.value=e.get(this.value)??this.value,t.type=this.type,t.order=this.order,t.setName(this.name),t}clearDefinition(){this.type=void 0}setDefinition(e){const t=e.type.toLowerCase();switch(t){case"boolean":case"bool":this.type="Attribute",this.datatype="Boolean",this.value=void 0!==this.value?this._toBoolean(this.value):this._toBoolean(e.defaultValue);break;case"float":this.type="Attribute",this.datatype="Float",this.value=void 0!==this.value?Number(this.value):Number(e.defaultValue);break;case"int":this.type="Attribute",this.datatype="Integer",this.value=void 0!==this.value?parseInt(this.value):parseInt(e.defaultValue);break;case"string":this.type="Attribute",this.datatype="String",this.value=void 0!==this.value&&null!==this.value?this.value.toString():e.defaultValue?e.defaultValue.toString():"";break;case"vec2":this.type="Attribute",this.datatype="Vector2d";break;case"vec3":this.type="Attribute",this.datatype="Vector3d";break;case"vec4":this.type="Attribute",this.datatype="Vector4d";break;case"mat3":this.type="Attribute",this.datatype="Mat3";break;case"mat4":this.type="Attribute",this.datatype="Mat4";break;case"color":this.type="Attribute",this.datatype="Color";break;case"image":this.type="Link",this.linkableTypes=["Image"];break;default:console.error("Unknown script field type: "+t),this.type="Attribute",this.datatype="String",this.value=this.value?this.value.toString():e.defaultValue?e.defaultValue.toString():""}}_toBoolean(e){return null!=e&&(!0===e||!1===e?e:"false"!==e.toString().toLowerCase())}_updateDisplayName(){this.name?this.displayName=h.toUserFriendlyName(this.name):this.displayName=""}createSnapshot(){return new O(this.id,"customfield",{id:this.id,value:this.value})}rollbackFromSnapshot(e){this.value=e.data.value}}class K extends M{links;instanceId;isDirty=!1;fieldInstances;userFieldInstances;customFieldInstances;packageContent;packageType;public=!1;readOnly=!1;isPackaged=!1;isGenerated=!1;packageItem;isPreparedItem=!0;resultingAcl;userData={};constructor(e){if(super(e),this.instanceId=h.createItemOrBlockID(),this.links=[],Array.isArray(e.links))for(const t of e.links)this.links.push({to:t.to,usage:t.usage,stopRecursion:t.stopRecursion,item:t.item});this.fieldInstances=[],this.userFieldInstances=[],this.customFieldInstances=g.instance.proxyCustomFieldsArray([],this),this.public=!!e.public,this.packageContent=e.packageContent,this.packageType=e.packageType,this.packageItem=e.packageItem,this.readOnly=!!e.readOnly,this.isPackaged=!!e.isPackaged,this.isGenerated=!!e.isGenerated,this.resultingAcl=JSON.parse(JSON.stringify(e.resultingAcl||[]))}createCustomFieldInstances(e){function t(e,t){for(const a of e)if(a.name===t)return a;return null}for(const a of this.customFieldInstances)t(e,a.name)||a.clearDefinition();let a=0;for(const n of e){let e=t(this.customFieldInstances,n.name);e||(e=new J(n.name,n.defaultValue,this),this.addCustomField(e)),e.setOrder(a++),e.setDefinition(n)}this.customFieldInstances.sort((function(e,t){return e.order-t.order}))}addCustomField(e){this.customFieldInstances.push(g.instance.proxyCustomField(e,this))}markDirty(){this.isDirty||(this.isDirty=!0,u.$emit("itemRepo:itemBecameDirty",this._id))}makeIdsUnique(){const e=new Map;for(const t of this.fieldInstances)t.makeIdsUnique(e,!0);this.packageContent&&this.packageContent.makeIdsUnique()}clone(e=!1){let t=new K(this);const a=new Map;for(const n of this.fieldInstances){const i=n.clone(this,!0);e&&i.makeIdsUnique(a,!0),t.fieldInstances.push(i)}if(e)for(const e of t.fieldInstances)e.transformNodeIds(a);return t}findBlock(e){for(const t of this.fieldInstances){const a=t.findBlock(e);if(a)return a}return null}refreshFieldDependencies(){te.refreshFieldDependencies(this.fieldInstances);for(const e of this.fieldInstances)e.refreshFieldDependencies()}forEachItem(e){if(e(this),this.links)for(const t of this.links)t.item&&t.item.forEachItem(e)}forEachFieldInstance(e){if(this.fieldInstances)for(const t of this.fieldInstances)t.forEachField(e)}toString(){return`PreparedItem(${JSON.stringify({_id:this._id,name:this.name,type:this.type})})`}}function X(e,t,a){if(e.admin||e.superadmin)return!0;if(!Array.isArray(t))return!0;for(const n of t)if(n.can.includes(a)){if(!n.user&&!n.group)return!0;if(n.user&&n.user===e._id)return!0;if(n.group)for(const t of e.groups){if("object"==typeof t&&t._id===n.group)return!0;if(t===n.group)return!0}}}class Q{fields;constructor(e){if(!Array.isArray(e))throw"Template fields need to be an array!";this.fields=e}clone(){const e=[];for(const t of this.fields)e.push(t.clone());return new Q(e)}specialize(e){for(const t of this.fields)void 0!==e[t.name]&&(t.defaultValue=e[t.name]);return this}instantiate(e){if(e)return this.fields;{const e=[];for(const t of this.fields)e.push(t.clone());return e}}}class ee{templates=new Map;templatesByField=new Map;static _instance;static get instance(){return this._instance||(this._instance=new this)}_existsTemplate(e,t){for(const a of e)if(a.typeName===t)return!0;return!1}addTemplates(e,t,a){const n=`${e}_${t}`,i=this.templatesByField.get(n)||[];for(const e of a){const t=`${n}_${e.typeName}`;this.templates.set(t,e),this._existsTemplate(i,e.typeName)||i.push(e)}this.templatesByField.set(n,i)}getTemplate(e,t,a){const n=`${e}_${t}_${a}`;return this.templates.get(n)}getTemplates(e,t){const a=`${e}_${t}`;return this.templatesByField.get(a)||[]}}class te{itemRepo;itemFetcher;constructor(e){this.itemRepo=e,this.itemFetcher=function(e){return e}}setItemFetcher(e){this.itemFetcher=e}setFieldsFromDatatypes(e){const t=C(e.type,!0);e.fields=t.fields||[],e.fieldSets=t.fieldSets||[]}async prepare(e){return e instanceof K?(console.warn("Trying to prepare an already prepared item: ",e),e):this.itemRepo.undoManager.ignore((async()=>{const t=new K(e);return this.setFieldsFromDatatypes(t),t.fieldInstances=await this.createFieldInstances(t,t.fields,t.attributes,"","attributes",!1),t.userFieldInstances=await this.createFieldInstances(t,t.userFields,t.userAttributes,"","userAttributes",!1),t.customFieldInstances=await this.createCustomFieldInstances(t,t.userAttributes,"_"),t.allowConversation=!!t.allowConversation,t.packageContent&&(t.packageContent.name=t.name,await this.itemRepo.traverseItems((e=>{e.readOnly=!0,e.isPackaged=!0,e.packageItem=t}),t.packageContent)),t.packageItem?(t.readOnly=!0,t.isPackaged=!0):(t.isPackaged=!1,t.resultingAcl&&t.resultingAcl.length>0?t.readOnly=!X(await this.itemRepo.apiClient.me(!0),t.resultingAcl,"write"):t.readOnly=!0),t}))}async createCustomFieldInstances(e,t,a=""){if(!e)throw new w("createCustomFieldInstances(): Item cannot be null!");if(!t)throw new w("createCustomFieldInstances(): attributes cannot be null!");const n=[];for(const i in t)if(!a.length||i.startsWith(a)){const r=i.substring(a.length);let s=new J(r,t[i],e);s.setType("Attribute"),n.push(g.instance.proxyCustomField(s,e))}if(e.links)for(const t of e.links)if(!a.length||t.usage.startsWith(a)){const i=t.usage.substring(a.length);let r,{id:s,linkItem:o,stopRecursion:l}=await this.fetchLinkValue(e,t.usage);o?r=o:l&&(r=s);let u=new J(i,r,e);u.setType("Link"),n.push(g.instance.proxyCustomField(u,e))}return n}async createFieldInstances(e,t,a,n,i,r=!1){if(!e)throw new w("createFieldInstances(): Item cannot be null!");if(!t)throw new w("createFieldInstances(): Fields cannot be null!");const s=[],o=n.length?`${n}->`:n;for(let a=0;a<t.length;a++){const n=t[a];if("FieldSet"===n.type){const i=this.getFieldSet(e,n.name);i?(t.splice(a,1,...structuredClone(i.fields)),a+=i.fields.length-1):console.error("Fieldset not found: "+n.name)}}for(const n of t)switch(n.type){case"Separator":{const t=new Z("Separator",n.label,"Separator",null,e,this.itemRepo);t.setInfo(n.info),t.setCondition(n.if),t.setCollapsed(n.collapsed),t.setPresets(n.presets),s.push(t);break}case"Label":{const t=new Z("Label","","Label",n.text,e,this.itemRepo);t.setLabelType(n.labelType),t.setCondition(n.if),s.push(t);break}case"Link":{let t;if(!r){let{id:a,linkItem:i,stopRecursion:r}=await this.fetchLinkValue(e,n.usageAs);i?t=i:r&&(t=a)}let a=new Z(n.usageAs,n.displayName,n.type,t,e,this.itemRepo);a.setInfo(n.info),a.setCondition(n.if),a.setLinkableTypes(n.linkableTypes),void 0!==n.preload&&a.setPreload(n.preload),void 0!==n.loadingManager&&a.setLoadingManagerRule(n.loadingManager),s.push(g.instance.proxyItemField(a,e));break}case"Tree":{const t=`${o}${n.name}`,r=[];for(const s of n.childTypes){const n=new Q(await this.createFieldInstances(e,s.fields,a,t,i,!0));r.push({typeName:s.typeName,displayName:s.displayName||s.typeName,template:n,inputs:[],outputs:[]})}r.sort((function(e,t){return e.displayName.localeCompare(t.displayName)})),ee.instance.addTemplates(e.type,n.name,r);const l=new ae(void 0,void 0,"","Root",void 0,e),u=await this.readBlocks(e,l,n.name,t,a,!0,!0,"Tree");l.blocks=g.instance.proxyBlockArray(u,l,e);let c=new Z(n.name,n.displayName,n.type,null,e,this.itemRepo);c.setInfo(n.info),c.setCondition(n.if),c.setBlocks([l]),s.push(c);break}case"List":{const t=`${o}${n.name}`,r=new Q(await this.createFieldInstances(e,n.fields,a,t,i,!0)),l=[{typeName:"Entry",displayName:n.elementName,template:r,inputs:[],outputs:[]}];ee.instance.addTemplates(e.type,n.name,l);let u=new Z(n.name,n.displayName,n.type,null,e,this.itemRepo);const c=await this.readBlocks(e,void 0,n.name,t,a,!0,!0,"List"),d=g.instance.proxyListArray(c,u,e);u.setInfo(n.info),u.setCondition(n.if),u.setBlocks(d),s.push(u);break}case"NodeGraph":{const t=`${o}${n.name}`,r=[];for(const s of n.childTypes){const n=new Q(await this.createFieldInstances(e,s.fields,a,t,i,!0));r.push({typeName:s.typeName,displayName:s.displayName||s.typeName,template:n,inputs:s.inputs||[],outputs:s.outputs||[]})}r.sort((function(e,t){return e.displayName.localeCompare(t.displayName)})),ee.instance.addTemplates(e.type,n.name,r);let l=await this.readBlocks(e,void 0,n.name,t,a,!1,!1,"NodeGraph"),u=this.readConnections(e,t,a),c=new Z(n.name,n.displayName,n.type,null,e,this.itemRepo);c.setInfo(n.info),c.setCondition(n.if),c.setBlocks(g.instance.proxyGraphBlockArray(l,e)),c.setConnections(g.instance.proxyConnectionArray(u,e)),s.push(c);break}case"Attribute":{let t;r||(t=e[i]?e[i][n.name]:void 0,void 0===t&&(t=n.defaultValue));let a=new Z(n.name,n.displayName,n.type,t,e,this.itemRepo);a.setInfo(n.info),a.setCondition(n.if),a.setDefaultValue(n.defaultValue),a.setMinValue(n.minValue),a.setMaxValue(n.maxValue),a.setOptions(n.options),a.setDatatype(n.datatype),a.setLanguage(n.language),a.setWidget(n.widget),a.setLength(n.length),s.push(g.instance.proxyItemField(a,e));break}}return s}getFieldSet(e,t){if(Array.isArray(e.fieldSets))for(const a of e.fieldSets)if(a.name===t)return a;return null}async fetchLinkValue(e,t){if(!e)throw new w("fetchLinkValue(): Item cannot be null!");for(const a of e.links)if(a.usage===t)return{id:a.to,linkItem:a.item?await this.itemFetcher(a.item):null,stopRecursion:a.stopRecursion};return{id:null,linkItem:null}}async readBlocks(e,t,a,n,i,r,s,o){if(!e)throw new w("readBlocks(): Item cannot be null!");const l=[];let u=0;for(;;){const c=`${n}[${u}]`;if(!this.existsBlockNamespace(e,i,c))break;{const n=`${c}#id`,u=e.attributes[n],d=`${c}#type`;let p,h,f=e.attributes[d];switch(o){case"NodeGraph":{const t=`${c}#posx`,a=`${c}#posy`;p=e.attributes[t]||0,h=e.attributes[a]||0;break}case"List":r=!1,f="Entry"}const m=ee.instance.getTemplate(e.packageType||e.type,a,f);if(m){const n=m.typeName,d=m.displayName,f=new ae(u,t,n,n,d,e),y=await this.createFields(f,e,m.template,c,"NodeGraph"===o,i);if(f.setFields(y),"NodeGraph"===o&&(f.setPosition(p,h),f.setInputs(m.inputs),f.setOutputs(m.outputs)),r){const t=await this.readBlocks(e,f,a,c,i,r,s,o);f.blocks=g.instance.proxyBlockArray(t,f,e)}if(s){const t=await this.readScripts(e,f,c,i);f.scripts=g.instance.proxyScriptArray(t,f,e)}"NodeGraph"===o?l.push(g.instance.proxyGraphBlock(f,e)):l.push(g.instance.proxyBlock(f,e))}else console.error(`Block template not found: ${a}_${f}`)}u++}return l}async readScripts(e,t,a,n){if(!e)throw new w("readScripts(): Item cannot be null!");const i=[];let r=0;for(;;){const s=`${a}#scripts[${r}]`;if(!this.existsScriptNamespace(e,n,s))break;{const a=n[`${s}#id`],r=`${s}#item`,o=`${s}->`,l=o.length;let{linkItem:u}=await this.fetchLinkValue(e,r);const c=new W(a,t,e,u);i.push(c);for(const t in n)if(n.hasOwnProperty(t)&&t.startsWith(o)){const a=n[t],i=t.substring(l),r=new j(c,i,a,e);c.addField(r)}}r++}return i}existsScriptNamespace(e,t,a){if(!e)throw new w("existsScriptNamespace(): Item cannot be null!");return"Script"===t[`${a}#usage`]}readConnections(e,t,a){const n=[];let i=0;for(;;){const r=a[`${t}#connection[${i++}]`];if(!r)break;n.push(new U(r,e))}return n}existsBlockNamespace(e,t,a){if(!e)throw new w("existsBlockNamespace(): Item cannot be null!");const n=t[`${a}#usage`];if(n)return"Block"===n;for(const e in t)if(t.hasOwnProperty(e)&&e.startsWith(a))return!0;for(const t of e.links)if(t.usage.startsWith(a))return!0;return!1}async createFields(e,t,a,n,i,r,s=!1){let o=a.instantiate(s),l=[];for(const a of o)if(a.name){const s=`${n}->${a.name}`;switch(a.type){case"Link":if(n){let{id:e,linkItem:n,stopRecursion:i}=await this.fetchLinkValue(t,s);a.value=n||(i?e:null)}else a.value=a.defaultValue;break;case"List":{const e=await this.readBlocks(t,void 0,a.name,s,r,!0,!0,"List"),n=g.instance.proxyListArray(e,a,t);a.setBlocks(n);break}case"Attribute":n?(a.value=t.attributes[s],void 0===a.value&&(a.value=a.defaultValue)):a.value=a.defaultValue}i?l.push(g.instance.proxyGraphBlockField(a,e,t)):l.push(g.instance.proxyBlockField(a,e,t))}return l}static refreshFieldDependencies(e){const t=new Map,a=new Map;for(const a of e)t.set(a.name,a);for(const n of e)if(Array.isArray(n.conditionFieldNames))for(const e of n.conditionFieldNames){const i=t.get(e);if(i){const e=a.get(i);e?e.push(n):a.set(i,[n])}}for(const n of e)n.refreshDependantFields(t,a.get(n))}}class ae extends ${id="";parent=void 0;type=void 0;name="";displayName="";fields=[];blocks=[];isSelected=!1;isExpanded=!0;scripts=[];inputs=[];outputs=[];posX=0;posY=0;constructor(e=void 0,t=void 0,a=void 0,n=void 0,i=void 0,r=void 0){super(r),e instanceof O?this.restoreFromSnapshot(e,t):(this.id=e||h.createItemOrBlockID(),this.parent=t,this.type=a,this.name=n||this.type||"",this.displayName=i||this.name)}getId(){return this.id}getPositionInParent(){if(this.parent){let e=0;for(const t of this.parent.blocks){if(t.id===this.id)return e;e++}}return-1}refreshFieldDependencies(){te.refreshFieldDependencies(this.fields);for(const e of this.fields)e.refreshFieldDependencies();for(const e of this.blocks)e.refreshFieldDependencies()}resetFieldValues(e=!1){for(const e of this.fields)e.resetValue();if(e)for(const t of this.blocks)t.resetFieldValues(e)}makeIdsUnique(e=new Map,t=!1){if(e.has(this.id)||t){const t=h.createItemOrBlockID();e.set(this.id,t),this.id=t}else e.set(this.id,this.id);for(const a of this.fields)a.makeIdsUnique(e,t);for(const a of this.blocks)a.makeIdsUnique(e,t);for(const a of this.scripts)a.makeIdsUnique(e,t);return e}transformNodeIds(e){for(const t of this.fields)t.transformNodeIds(e);for(const t of this.blocks)t.transformNodeIds(e);for(const t of this.scripts)t.transformNodeIds(e)}clone(e,t=!0,a={},n=!1){const i=new ae;n&&(i.id=this.id),i.ownerItem=this.ownerItem,i.parent=this.parent,i.type=this.type,i.name=this.name,i.displayName=this.displayName,i.isSelected=!1,i.isExpanded=!0,i.inputs=this.inputs,i.outputs=this.outputs,i.posX=0,i.posY=0;for(const t of this.fields){let r=t.clone(e,n);void 0!==a[t.name]&&(r.value=a[t.name]),e&&(r=g.instance.proxyBlockField(r,i,e)),i.fields.push(r)}if(e&&(i.scripts=g.instance.proxyScriptArray(i.scripts,i,e)),t)for(const e of this.scripts){const t=e.clone();i.scripts.push(t)}const r=i.blocks;e&&(i.blocks=g.instance.proxyBlockArray(r,i,e));for(const a of this.blocks){let s=a.clone(e,t,{},n);s.parent=i,e&&(s=g.instance.proxyBlock(s,e)),r.push(s)}return i}getDescendantBlocks(e=[]){const t=this.blocks;return e.push(...t),t.forEach((t=>t.getDescendantBlocks(e))),e}setFields(e){this.fields=e}setInputs(e){this.inputs=e}setOutputs(e){this.outputs=e}setPosition(e,t){this.posX=e,this.posY=t}setSelected(e){this.isSelected=e}setExpanded(e){this.isExpanded=e}getRoot(){return this.parent?this.parent.getRoot():this}forEachField(e){if(this.fields)for(const t of this.fields)t.forEachField(e);if(this.blocks)for(const t of this.blocks)t.forEachField(e)}findField(e){for(const t of this.fields)if(t.name===e)return t;return null}findBlock(e){if(this.id===e)return this;for(const t of this.blocks){const a=t.findBlock(e);if(a)return a}return null}removeBlock(e){this.blocks.removeObject(e)}addBlock(e,t){this.blocks.includes(e)||(void 0===t?this.blocks.push(e):this.blocks.splice(t,0,e))}moveBlock(e,t){e.parent.blocks.moveObjectToArray(e,e.parent.blocks,t)}moveToPosition(e){this.parent.moveBlock(this,e)}moveBlockToParent(e,t){this.parent.blocks.moveObjectToArray(this,e.blocks,t),this.parent=e}moveToParent(e,t){if(this.findBlock(e))return void console.error("Cannot move block to a parent that is a child.");const a=this.getRoot();if(!a)return void console.error("Cannot find root block!");const n=a.findBlock(e);n?this.parent!==n?this.moveBlockToParent(n,t):console.warn(`Node is already in parent ${e}`):console.error(`Cannot find the new parent block: ${e}`)}getField(e){for(const t of this.fields)if(t.name===e)return t;return null}hasTag(e){const t=this.getField("Tags");return!(!t||!Array.isArray(t.value))&&t.value.includes(e)}hasOneTag(e){const t=this.getField("Tags");if(t&&Array.isArray(t.value))for(const a of e)if(t.value.includes(a))return!0;return!1}getNameFieldValue(){const e=this.getField("Name");return e?e.value:null}getActiveFieldValue(){const e=this.getField("Active");return!e||e.value}createSnapshot(e=!1){const t=[];for(const a of this.fields)a.createSnapshot&&t.push(a.createSnapshot(e));const a=[];if(!e)for(const t of this.blocks)a.push(t.createSnapshot(e));const n=[];for(const e of this.scripts)n.push(e.createSnapshot());return new O(this.id,"block",{id:this.id,ownerItem:this.ownerItem,type:this.type,name:this.name,displayName:this.displayName,fields:t,blocks:a,isExpanded:this.isExpanded,scripts:n,inputs:this.inputs,outputs:this.outputs,posX:this.posX,posY:this.posY})}restoreFromSnapshot(e,t){this.id=e.data.id,this.parent=t,this.type=e.data.type,this.ownerItem=e.data.ownerItem,this.name=e.data.name,this.displayName=e.data.displayName,this.isSelected=!1,this.isExpanded=e.data.isExpanded,this.inputs=e.data.inputs,this.outputs=e.data.outputs,this.posX=e.data.posX,this.posY=e.data.posY;const a=[];this._rollbackArray(a,e.data.fields,(e=>g.instance.proxyBlockField(new Z(e),this,this.ownerItem))),this.fields=a;const n=[];this._rollbackArray(n,e.data.blocks,((e,t)=>g.instance.proxyBlock(new ae(e,t),this.ownerItem))),this.blocks=g.instance.proxyBlockArray(n,this,this.ownerItem);const i=[];this._rollbackArray(i,e.data.scripts,((e,t)=>new W(e,t,this.ownerItem))),this.scripts=g.instance.proxyScriptArray(i,this,this.ownerItem)}rollbackFromSnapshot(e,t=!1){this._rollbackArray(this.fields,e.data.fields,(e=>g.instance.proxyBlockField(new Z(e),this,this.ownerItem))),this._rollbackArray(this.scripts,e.data.scripts,(e=>new W(e,this,this.ownerItem))),t||this._rollbackArray(this.blocks,e.data.blocks,((e,t)=>g.instance.proxyBlock(new ae(e,t),this.ownerItem)))}_getFieldByName(e,t){for(const a of t)if(a.id===e)return a;return null}}
11
+ */var q=(Y||(Y=1,function(e,t){(function(){var a,n="Expected a function",i="__lodash_hash_undefined__",r="__lodash_placeholder__",s=32,o=128,l=256,u=1/0,c=9007199254740991,d=NaN,p=4294967295,h=[["ary",o],["bind",1],["bindKey",2],["curry",8],["curryRight",16],["flip",512],["partial",s],["partialRight",64],["rearg",l]],f="[object Arguments]",m="[object Array]",y="[object Boolean]",g="[object Date]",b="[object Error]",v="[object Function]",_="[object GeneratorFunction]",w="[object Map]",A="[object Number]",k="[object Object]",S="[object Promise]",N="[object RegExp]",T="[object Set]",M="[object String]",x="[object Symbol]",C="[object WeakMap]",V="[object ArrayBuffer]",E="[object DataView]",F="[object Float32Array]",D="[object Float64Array]",R="[object Int8Array]",L="[object Int16Array]",P="[object Int32Array]",B="[object Uint8Array]",O="[object Uint8ClampedArray]",$="[object Uint16Array]",U="[object Uint32Array]",j=/\b__p \+= '';/g,z=/\b(__p \+=) '' \+/g,W=/(__e\(.*?\)|\b__t\)) \+\n'';/g,Y=/&(?:amp|lt|gt|quot|#39);/g,H=/[&<>"']/g,G=RegExp(Y.source),q=RegExp(H.source),Z=/<%-([\s\S]+?)%>/g,J=/<%([\s\S]+?)%>/g,K=/<%=([\s\S]+?)%>/g,X=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Q=/^\w*$/,ee=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,te=/[\\^$.*+?()[\]{}|]/g,ae=RegExp(te.source),ne=/^\s+/,ie=/\s/,re=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,se=/\{\n\/\* \[wrapped with (.+)\] \*/,oe=/,? & /,le=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,ue=/[()=,{}\[\]\/\s]/,ce=/\\(\\)?/g,de=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,pe=/\w*$/,he=/^[-+]0x[0-9a-f]+$/i,fe=/^0b[01]+$/i,me=/^\[object .+?Constructor\]$/,ye=/^0o[0-7]+$/i,ge=/^(?:0|[1-9]\d*)$/,be=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,ve=/($^)/,_e=/['\n\r\u2028\u2029\\]/g,we="\\ud800-\\udfff",Ae="\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff",ke="\\u2700-\\u27bf",Se="a-z\\xdf-\\xf6\\xf8-\\xff",Ne="A-Z\\xc0-\\xd6\\xd8-\\xde",Te="\\ufe0e\\ufe0f",Me="\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",xe="['’]",Ce="["+we+"]",Ie="["+Me+"]",Ve="["+Ae+"]",Ee="\\d+",Fe="["+ke+"]",De="["+Se+"]",Re="[^"+we+Me+Ee+ke+Se+Ne+"]",Le="\\ud83c[\\udffb-\\udfff]",Pe="[^"+we+"]",Be="(?:\\ud83c[\\udde6-\\uddff]){2}",Oe="[\\ud800-\\udbff][\\udc00-\\udfff]",$e="["+Ne+"]",Ue="\\u200d",je="(?:"+De+"|"+Re+")",ze="(?:"+$e+"|"+Re+")",We="(?:['’](?:d|ll|m|re|s|t|ve))?",Ye="(?:['’](?:D|LL|M|RE|S|T|VE))?",He="(?:"+Ve+"|"+Le+")?",Ge="["+Te+"]?",qe=Ge+He+"(?:"+Ue+"(?:"+[Pe,Be,Oe].join("|")+")"+Ge+He+")*",Ze="(?:"+[Fe,Be,Oe].join("|")+")"+qe,Je="(?:"+[Pe+Ve+"?",Ve,Be,Oe,Ce].join("|")+")",Ke=RegExp(xe,"g"),Xe=RegExp(Ve,"g"),Qe=RegExp(Le+"(?="+Le+")|"+Je+qe,"g"),et=RegExp([$e+"?"+De+"+"+We+"(?="+[Ie,$e,"$"].join("|")+")",ze+"+"+Ye+"(?="+[Ie,$e+je,"$"].join("|")+")",$e+"?"+je+"+"+We,$e+"+"+Ye,"\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])","\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",Ee,Ze].join("|"),"g"),tt=RegExp("["+Ue+we+Ae+Te+"]"),at=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,nt=["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"],it=-1,rt={};rt[F]=rt[D]=rt[R]=rt[L]=rt[P]=rt[B]=rt[O]=rt[$]=rt[U]=!0,rt[f]=rt[m]=rt[V]=rt[y]=rt[E]=rt[g]=rt[b]=rt[v]=rt[w]=rt[A]=rt[k]=rt[N]=rt[T]=rt[M]=rt[C]=!1;var st={};st[f]=st[m]=st[V]=st[E]=st[y]=st[g]=st[F]=st[D]=st[R]=st[L]=st[P]=st[w]=st[A]=st[k]=st[N]=st[T]=st[M]=st[x]=st[B]=st[O]=st[$]=st[U]=!0,st[b]=st[v]=st[C]=!1;var ot={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},lt=parseFloat,ut=parseInt,ct="object"==typeof I&&I&&I.Object===Object&&I,dt="object"==typeof self&&self&&self.Object===Object&&self,pt=ct||dt||Function("return this")(),ht=t&&!t.nodeType&&t,ft=ht&&e&&!e.nodeType&&e,mt=ft&&ft.exports===ht,yt=mt&&ct.process,gt=function(){try{var e=ft&&ft.require&&ft.require("util").types;return e||yt&&yt.binding&&yt.binding("util")}catch(e){}}(),bt=gt&&gt.isArrayBuffer,vt=gt&&gt.isDate,_t=gt&&gt.isMap,wt=gt&&gt.isRegExp,At=gt&&gt.isSet,kt=gt&&gt.isTypedArray;function St(e,t,a){switch(a.length){case 0:return e.call(t);case 1:return e.call(t,a[0]);case 2:return e.call(t,a[0],a[1]);case 3:return e.call(t,a[0],a[1],a[2])}return e.apply(t,a)}function Nt(e,t,a,n){for(var i=-1,r=null==e?0:e.length;++i<r;){var s=e[i];t(n,s,a(s),e)}return n}function Tt(e,t){for(var a=-1,n=null==e?0:e.length;++a<n&&!1!==t(e[a],a,e););return e}function Mt(e,t){for(var a=null==e?0:e.length;a--&&!1!==t(e[a],a,e););return e}function xt(e,t){for(var a=-1,n=null==e?0:e.length;++a<n;)if(!t(e[a],a,e))return!1;return!0}function Ct(e,t){for(var a=-1,n=null==e?0:e.length,i=0,r=[];++a<n;){var s=e[a];t(s,a,e)&&(r[i++]=s)}return r}function It(e,t){return!(null==e||!e.length)&&$t(e,t,0)>-1}function Vt(e,t,a){for(var n=-1,i=null==e?0:e.length;++n<i;)if(a(t,e[n]))return!0;return!1}function Et(e,t){for(var a=-1,n=null==e?0:e.length,i=Array(n);++a<n;)i[a]=t(e[a],a,e);return i}function Ft(e,t){for(var a=-1,n=t.length,i=e.length;++a<n;)e[i+a]=t[a];return e}function Dt(e,t,a,n){var i=-1,r=null==e?0:e.length;for(n&&r&&(a=e[++i]);++i<r;)a=t(a,e[i],i,e);return a}function Rt(e,t,a,n){var i=null==e?0:e.length;for(n&&i&&(a=e[--i]);i--;)a=t(a,e[i],i,e);return a}function Lt(e,t){for(var a=-1,n=null==e?0:e.length;++a<n;)if(t(e[a],a,e))return!0;return!1}var Pt=Wt("length");function Bt(e,t,a){var n;return a(e,(function(e,a,i){if(t(e,a,i))return n=a,!1})),n}function Ot(e,t,a,n){for(var i=e.length,r=a+(n?1:-1);n?r--:++r<i;)if(t(e[r],r,e))return r;return-1}function $t(e,t,a){return t==t?function(e,t,a){for(var n=a-1,i=e.length;++n<i;)if(e[n]===t)return n;return-1}(e,t,a):Ot(e,jt,a)}function Ut(e,t,a,n){for(var i=a-1,r=e.length;++i<r;)if(n(e[i],t))return i;return-1}function jt(e){return e!=e}function zt(e,t){var a=null==e?0:e.length;return a?Gt(e,t)/a:d}function Wt(e){return function(t){return null==t?a:t[e]}}function Yt(e){return function(t){return null==e?a:e[t]}}function Ht(e,t,a,n,i){return i(e,(function(e,i,r){a=n?(n=!1,e):t(a,e,i,r)})),a}function Gt(e,t){for(var n,i=-1,r=e.length;++i<r;){var s=t(e[i]);s!==a&&(n=n===a?s:n+s)}return n}function qt(e,t){for(var a=-1,n=Array(e);++a<e;)n[a]=t(a);return n}function Zt(e){return e?e.slice(0,pa(e)+1).replace(ne,""):e}function Jt(e){return function(t){return e(t)}}function Kt(e,t){return Et(t,(function(t){return e[t]}))}function Xt(e,t){return e.has(t)}function Qt(e,t){for(var a=-1,n=e.length;++a<n&&$t(t,e[a],0)>-1;);return a}function ea(e,t){for(var a=e.length;a--&&$t(t,e[a],0)>-1;);return a}var ta=Yt({"À":"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"}),aa=Yt({"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"});function na(e){return"\\"+ot[e]}function ia(e){return tt.test(e)}function ra(e){var t=-1,a=Array(e.size);return e.forEach((function(e,n){a[++t]=[n,e]})),a}function sa(e,t){return function(a){return e(t(a))}}function oa(e,t){for(var a=-1,n=e.length,i=0,s=[];++a<n;){var o=e[a];o!==t&&o!==r||(e[a]=r,s[i++]=a)}return s}function la(e){var t=-1,a=Array(e.size);return e.forEach((function(e){a[++t]=e})),a}function ua(e){var t=-1,a=Array(e.size);return e.forEach((function(e){a[++t]=[e,e]})),a}function ca(e){return ia(e)?function(e){for(var t=Qe.lastIndex=0;Qe.test(e);)++t;return t}(e):Pt(e)}function da(e){return ia(e)?function(e){return e.match(Qe)||[]}(e):function(e){return e.split("")}(e)}function pa(e){for(var t=e.length;t--&&ie.test(e.charAt(t)););return t}var ha=Yt({"&amp;":"&","&lt;":"<","&gt;":">","&quot;":'"',"&#39;":"'"}),fa=function e(t){var I,ie=(t=null==t?pt:fa.defaults(pt.Object(),t,fa.pick(pt,nt))).Array,we=t.Date,Ae=t.Error,ke=t.Function,Se=t.Math,Ne=t.Object,Te=t.RegExp,Me=t.String,xe=t.TypeError,Ce=ie.prototype,Ie=ke.prototype,Ve=Ne.prototype,Ee=t["__core-js_shared__"],Fe=Ie.toString,De=Ve.hasOwnProperty,Re=0,Le=(I=/[^.]+$/.exec(Ee&&Ee.keys&&Ee.keys.IE_PROTO||""))?"Symbol(src)_1."+I:"",Pe=Ve.toString,Be=Fe.call(Ne),Oe=pt._,$e=Te("^"+Fe.call(De).replace(te,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),Ue=mt?t.Buffer:a,je=t.Symbol,ze=t.Uint8Array,We=Ue?Ue.allocUnsafe:a,Ye=sa(Ne.getPrototypeOf,Ne),He=Ne.create,Ge=Ve.propertyIsEnumerable,qe=Ce.splice,Ze=je?je.isConcatSpreadable:a,Je=je?je.iterator:a,Qe=je?je.toStringTag:a,tt=function(){try{var e=cr(Ne,"defineProperty");return e({},"",{}),e}catch(e){}}(),ot=t.clearTimeout!==pt.clearTimeout&&t.clearTimeout,ct=we&&we.now!==pt.Date.now&&we.now,dt=t.setTimeout!==pt.setTimeout&&t.setTimeout,ht=Se.ceil,ft=Se.floor,yt=Ne.getOwnPropertySymbols,gt=Ue?Ue.isBuffer:a,Pt=t.isFinite,Yt=Ce.join,ma=sa(Ne.keys,Ne),ya=Se.max,ga=Se.min,ba=we.now,va=t.parseInt,_a=Se.random,wa=Ce.reverse,Aa=cr(t,"DataView"),ka=cr(t,"Map"),Sa=cr(t,"Promise"),Na=cr(t,"Set"),Ta=cr(t,"WeakMap"),Ma=cr(Ne,"create"),xa=Ta&&new Ta,Ca={},Ia=Lr(Aa),Va=Lr(ka),Ea=Lr(Sa),Fa=Lr(Na),Da=Lr(Ta),Ra=je?je.prototype:a,La=Ra?Ra.valueOf:a,Pa=Ra?Ra.toString:a;function Ba(e){if(Qs(e)&&!js(e)&&!(e instanceof ja)){if(e instanceof Ua)return e;if(De.call(e,"__wrapped__"))return Pr(e)}return new Ua(e)}var Oa=function(){function e(){}return function(t){if(!Xs(t))return{};if(He)return He(t);e.prototype=t;var n=new e;return e.prototype=a,n}}();function $a(){}function Ua(e,t){this.__wrapped__=e,this.__actions__=[],this.__chain__=!!t,this.__index__=0,this.__values__=a}function ja(e){this.__wrapped__=e,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=p,this.__views__=[]}function za(e){var t=-1,a=null==e?0:e.length;for(this.clear();++t<a;){var n=e[t];this.set(n[0],n[1])}}function Wa(e){var t=-1,a=null==e?0:e.length;for(this.clear();++t<a;){var n=e[t];this.set(n[0],n[1])}}function Ya(e){var t=-1,a=null==e?0:e.length;for(this.clear();++t<a;){var n=e[t];this.set(n[0],n[1])}}function Ha(e){var t=-1,a=null==e?0:e.length;for(this.__data__=new Ya;++t<a;)this.add(e[t])}function Ga(e){var t=this.__data__=new Wa(e);this.size=t.size}function qa(e,t){var a=js(e),n=!a&&Us(e),i=!a&&!n&&Hs(e),r=!a&&!n&&!i&&oo(e),s=a||n||i||r,o=s?qt(e.length,Me):[],l=o.length;for(var u in e)!t&&!De.call(e,u)||s&&("length"==u||i&&("offset"==u||"parent"==u)||r&&("buffer"==u||"byteLength"==u||"byteOffset"==u)||gr(u,l))||o.push(u);return o}function Za(e){var t=e.length;return t?e[Gn(0,t-1)]:a}function Ja(e,t){return Fr(xi(e),sn(t,0,e.length))}function Ka(e){return Fr(xi(e))}function Xa(e,t,n){(n!==a&&!Bs(e[t],n)||n===a&&!(t in e))&&nn(e,t,n)}function Qa(e,t,n){var i=e[t];De.call(e,t)&&Bs(i,n)&&(n!==a||t in e)||nn(e,t,n)}function en(e,t){for(var a=e.length;a--;)if(Bs(e[a][0],t))return a;return-1}function tn(e,t,a,n){return dn(e,(function(e,i,r){t(n,e,a(e),r)})),n}function an(e,t){return e&&Ci(t,Io(t),e)}function nn(e,t,a){"__proto__"==t&&tt?tt(e,t,{configurable:!0,enumerable:!0,value:a,writable:!0}):e[t]=a}function rn(e,t){for(var n=-1,i=t.length,r=ie(i),s=null==e;++n<i;)r[n]=s?a:No(e,t[n]);return r}function sn(e,t,n){return e==e&&(n!==a&&(e=e<=n?e:n),t!==a&&(e=e>=t?e:t)),e}function on(e,t,n,i,r,s){var o,l=1&t,u=2&t,c=4&t;if(n&&(o=r?n(e,i,r,s):n(e)),o!==a)return o;if(!Xs(e))return e;var d=js(e);if(d){if(o=function(e){var t=e.length,a=new e.constructor(t);return t&&"string"==typeof e[0]&&De.call(e,"index")&&(a.index=e.index,a.input=e.input),a}(e),!l)return xi(e,o)}else{var p=hr(e),h=p==v||p==_;if(Hs(e))return Ai(e,l);if(p==k||p==f||h&&!r){if(o=u||h?{}:mr(e),!l)return u?function(e,t){return Ci(e,pr(e),t)}(e,function(e,t){return e&&Ci(t,Vo(t),e)}(o,e)):function(e,t){return Ci(e,dr(e),t)}(e,an(o,e))}else{if(!st[p])return r?e:{};o=function(e,t,a){var n,i=e.constructor;switch(t){case V:return ki(e);case y:case g:return new i(+e);case E:return function(e,t){var a=t?ki(e.buffer):e.buffer;return new e.constructor(a,e.byteOffset,e.byteLength)}(e,a);case F:case D:case R:case L:case P:case B:case O:case $:case U:return Si(e,a);case w:return new i;case A:case M:return new i(e);case N:return function(e){var t=new e.constructor(e.source,pe.exec(e));return t.lastIndex=e.lastIndex,t}(e);case T:return new i;case x:return n=e,La?Ne(La.call(n)):{}}}(e,p,l)}}s||(s=new Ga);var m=s.get(e);if(m)return m;s.set(e,o),io(e)?e.forEach((function(a){o.add(on(a,t,n,a,e,s))})):eo(e)&&e.forEach((function(a,i){o.set(i,on(a,t,n,i,e,s))}));var b=d?a:(c?u?nr:ar:u?Vo:Io)(e);return Tt(b||e,(function(a,i){b&&(a=e[i=a]),Qa(o,i,on(a,t,n,i,e,s))})),o}function ln(e,t,n){var i=n.length;if(null==e)return!i;for(e=Ne(e);i--;){var r=n[i],s=t[r],o=e[r];if(o===a&&!(r in e)||!s(o))return!1}return!0}function un(e,t,i){if("function"!=typeof e)throw new xe(n);return Cr((function(){e.apply(a,i)}),t)}function cn(e,t,a,n){var i=-1,r=It,s=!0,o=e.length,l=[],u=t.length;if(!o)return l;a&&(t=Et(t,Jt(a))),n?(r=Vt,s=!1):t.length>=200&&(r=Xt,s=!1,t=new Ha(t));e:for(;++i<o;){var c=e[i],d=null==a?c:a(c);if(c=n||0!==c?c:0,s&&d==d){for(var p=u;p--;)if(t[p]===d)continue e;l.push(c)}else r(t,d,n)||l.push(c)}return l}Ba.templateSettings={escape:Z,evaluate:J,interpolate:K,variable:"",imports:{_:Ba}},Ba.prototype=$a.prototype,Ba.prototype.constructor=Ba,Ua.prototype=Oa($a.prototype),Ua.prototype.constructor=Ua,ja.prototype=Oa($a.prototype),ja.prototype.constructor=ja,za.prototype.clear=function(){this.__data__=Ma?Ma(null):{},this.size=0},za.prototype.delete=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t},za.prototype.get=function(e){var t=this.__data__;if(Ma){var n=t[e];return n===i?a:n}return De.call(t,e)?t[e]:a},za.prototype.has=function(e){var t=this.__data__;return Ma?t[e]!==a:De.call(t,e)},za.prototype.set=function(e,t){var n=this.__data__;return this.size+=this.has(e)?0:1,n[e]=Ma&&t===a?i:t,this},Wa.prototype.clear=function(){this.__data__=[],this.size=0},Wa.prototype.delete=function(e){var t=this.__data__,a=en(t,e);return!(a<0||(a==t.length-1?t.pop():qe.call(t,a,1),--this.size,0))},Wa.prototype.get=function(e){var t=this.__data__,n=en(t,e);return n<0?a:t[n][1]},Wa.prototype.has=function(e){return en(this.__data__,e)>-1},Wa.prototype.set=function(e,t){var a=this.__data__,n=en(a,e);return n<0?(++this.size,a.push([e,t])):a[n][1]=t,this},Ya.prototype.clear=function(){this.size=0,this.__data__={hash:new za,map:new(ka||Wa),string:new za}},Ya.prototype.delete=function(e){var t=lr(this,e).delete(e);return this.size-=t?1:0,t},Ya.prototype.get=function(e){return lr(this,e).get(e)},Ya.prototype.has=function(e){return lr(this,e).has(e)},Ya.prototype.set=function(e,t){var a=lr(this,e),n=a.size;return a.set(e,t),this.size+=a.size==n?0:1,this},Ha.prototype.add=Ha.prototype.push=function(e){return this.__data__.set(e,i),this},Ha.prototype.has=function(e){return this.__data__.has(e)},Ga.prototype.clear=function(){this.__data__=new Wa,this.size=0},Ga.prototype.delete=function(e){var t=this.__data__,a=t.delete(e);return this.size=t.size,a},Ga.prototype.get=function(e){return this.__data__.get(e)},Ga.prototype.has=function(e){return this.__data__.has(e)},Ga.prototype.set=function(e,t){var a=this.__data__;if(a instanceof Wa){var n=a.__data__;if(!ka||n.length<199)return n.push([e,t]),this.size=++a.size,this;a=this.__data__=new Ya(n)}return a.set(e,t),this.size=a.size,this};var dn=Ei(vn),pn=Ei(_n,!0);function hn(e,t){var a=!0;return dn(e,(function(e,n,i){return a=!!t(e,n,i)})),a}function fn(e,t,n){for(var i=-1,r=e.length;++i<r;){var s=e[i],o=t(s);if(null!=o&&(l===a?o==o&&!so(o):n(o,l)))var l=o,u=s}return u}function mn(e,t){var a=[];return dn(e,(function(e,n,i){t(e,n,i)&&a.push(e)})),a}function yn(e,t,a,n,i){var r=-1,s=e.length;for(a||(a=yr),i||(i=[]);++r<s;){var o=e[r];t>0&&a(o)?t>1?yn(o,t-1,a,n,i):Ft(i,o):n||(i[i.length]=o)}return i}var gn=Fi(),bn=Fi(!0);function vn(e,t){return e&&gn(e,t,Io)}function _n(e,t){return e&&bn(e,t,Io)}function wn(e,t){return Ct(t,(function(t){return Zs(e[t])}))}function An(e,t){for(var n=0,i=(t=bi(t,e)).length;null!=e&&n<i;)e=e[Rr(t[n++])];return n&&n==i?e:a}function kn(e,t,a){var n=t(e);return js(e)?n:Ft(n,a(e))}function Sn(e){return null==e?e===a?"[object Undefined]":"[object Null]":Qe&&Qe in Ne(e)?function(e){var t=De.call(e,Qe),n=e[Qe];try{e[Qe]=a;var i=!0}catch(e){}var r=Pe.call(e);return i&&(t?e[Qe]=n:delete e[Qe]),r}(e):function(e){return Pe.call(e)}(e)}function Nn(e,t){return e>t}function Tn(e,t){return null!=e&&De.call(e,t)}function Mn(e,t){return null!=e&&t in Ne(e)}function xn(e,t,n){for(var i=n?Vt:It,r=e[0].length,s=e.length,o=s,l=ie(s),u=1/0,c=[];o--;){var d=e[o];o&&t&&(d=Et(d,Jt(t))),u=ga(d.length,u),l[o]=!n&&(t||r>=120&&d.length>=120)?new Ha(o&&d):a}d=e[0];var p=-1,h=l[0];e:for(;++p<r&&c.length<u;){var f=d[p],m=t?t(f):f;if(f=n||0!==f?f:0,!(h?Xt(h,m):i(c,m,n))){for(o=s;--o;){var y=l[o];if(!(y?Xt(y,m):i(e[o],m,n)))continue e}h&&h.push(m),c.push(f)}}return c}function Cn(e,t,n){var i=null==(e=Tr(e,t=bi(t,e)))?e:e[Rr(qr(t))];return null==i?a:St(i,e,n)}function In(e){return Qs(e)&&Sn(e)==f}function Vn(e,t,n,i,r){return e===t||(null==e||null==t||!Qs(e)&&!Qs(t)?e!=e&&t!=t:function(e,t,n,i,r,s){var o=js(e),l=js(t),u=o?m:hr(e),c=l?m:hr(t),d=(u=u==f?k:u)==k,p=(c=c==f?k:c)==k,h=u==c;if(h&&Hs(e)){if(!Hs(t))return!1;o=!0,d=!1}if(h&&!d)return s||(s=new Ga),o||oo(e)?er(e,t,n,i,r,s):function(e,t,a,n,i,r,s){switch(a){case E:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case V:return!(e.byteLength!=t.byteLength||!r(new ze(e),new ze(t)));case y:case g:case A:return Bs(+e,+t);case b:return e.name==t.name&&e.message==t.message;case N:case M:return e==t+"";case w:var o=ra;case T:var l=1&n;if(o||(o=la),e.size!=t.size&&!l)return!1;var u=s.get(e);if(u)return u==t;n|=2,s.set(e,t);var c=er(o(e),o(t),n,i,r,s);return s.delete(e),c;case x:if(La)return La.call(e)==La.call(t)}return!1}(e,t,u,n,i,r,s);if(!(1&n)){var v=d&&De.call(e,"__wrapped__"),_=p&&De.call(t,"__wrapped__");if(v||_){var S=v?e.value():e,C=_?t.value():t;return s||(s=new Ga),r(S,C,n,i,s)}}return!!h&&(s||(s=new Ga),function(e,t,n,i,r,s){var o=1&n,l=ar(e),u=l.length,c=ar(t),d=c.length;if(u!=d&&!o)return!1;for(var p=u;p--;){var h=l[p];if(!(o?h in t:De.call(t,h)))return!1}var f=s.get(e),m=s.get(t);if(f&&m)return f==t&&m==e;var y=!0;s.set(e,t),s.set(t,e);for(var g=o;++p<u;){var b=e[h=l[p]],v=t[h];if(i)var _=o?i(v,b,h,t,e,s):i(b,v,h,e,t,s);if(!(_===a?b===v||r(b,v,n,i,s):_)){y=!1;break}g||(g="constructor"==h)}if(y&&!g){var w=e.constructor,A=t.constructor;w==A||!("constructor"in e)||!("constructor"in t)||"function"==typeof w&&w instanceof w&&"function"==typeof A&&A instanceof A||(y=!1)}return s.delete(e),s.delete(t),y}(e,t,n,i,r,s))}(e,t,n,i,Vn,r))}function En(e,t,n,i){var r=n.length,s=r,o=!i;if(null==e)return!s;for(e=Ne(e);r--;){var l=n[r];if(o&&l[2]?l[1]!==e[l[0]]:!(l[0]in e))return!1}for(;++r<s;){var u=(l=n[r])[0],c=e[u],d=l[1];if(o&&l[2]){if(c===a&&!(u in e))return!1}else{var p=new Ga;if(i)var h=i(c,d,u,e,t,p);if(!(h===a?Vn(d,c,3,i,p):h))return!1}}return!0}function Fn(e){return!(!Xs(e)||(t=e,Le&&Le in t))&&(Zs(e)?$e:me).test(Lr(e));var t}function Dn(e){return"function"==typeof e?e:null==e?al:"object"==typeof e?js(e)?$n(e[0],e[1]):On(e):dl(e)}function Rn(e){if(!Ar(e))return ma(e);var t=[];for(var a in Ne(e))De.call(e,a)&&"constructor"!=a&&t.push(a);return t}function Ln(e){if(!Xs(e))return function(e){var t=[];if(null!=e)for(var a in Ne(e))t.push(a);return t}(e);var t=Ar(e),a=[];for(var n in e)("constructor"!=n||!t&&De.call(e,n))&&a.push(n);return a}function Pn(e,t){return e<t}function Bn(e,t){var a=-1,n=Ws(e)?ie(e.length):[];return dn(e,(function(e,i,r){n[++a]=t(e,i,r)})),n}function On(e){var t=ur(e);return 1==t.length&&t[0][2]?Sr(t[0][0],t[0][1]):function(a){return a===e||En(a,e,t)}}function $n(e,t){return vr(e)&&kr(t)?Sr(Rr(e),t):function(n){var i=No(n,e);return i===a&&i===t?To(n,e):Vn(t,i,3)}}function Un(e,t,n,i,r){e!==t&&gn(t,(function(s,o){if(r||(r=new Ga),Xs(s))!function(e,t,n,i,r,s,o){var l=Mr(e,n),u=Mr(t,n),c=o.get(u);if(c)Xa(e,n,c);else{var d=s?s(l,u,n+"",e,t,o):a,p=d===a;if(p){var h=js(u),f=!h&&Hs(u),m=!h&&!f&&oo(u);d=u,h||f||m?js(l)?d=l:Ys(l)?d=xi(l):f?(p=!1,d=Ai(u,!0)):m?(p=!1,d=Si(u,!0)):d=[]:ao(u)||Us(u)?(d=l,Us(l)?d=yo(l):Xs(l)&&!Zs(l)||(d=mr(u))):p=!1}p&&(o.set(u,d),r(d,u,i,s,o),o.delete(u)),Xa(e,n,d)}}(e,t,o,n,Un,i,r);else{var l=i?i(Mr(e,o),s,o+"",e,t,r):a;l===a&&(l=s),Xa(e,o,l)}}),Vo)}function jn(e,t){var n=e.length;if(n)return gr(t+=t<0?n:0,n)?e[t]:a}function zn(e,t,a){t=t.length?Et(t,(function(e){return js(e)?function(t){return An(t,1===e.length?e[0]:e)}:e})):[al];var n=-1;t=Et(t,Jt(or()));var i=Bn(e,(function(e,a,i){var r=Et(t,(function(t){return t(e)}));return{criteria:r,index:++n,value:e}}));return function(e,t){var a=e.length;for(e.sort(t);a--;)e[a]=e[a].value;return e}(i,(function(e,t){return function(e,t,a){for(var n=-1,i=e.criteria,r=t.criteria,s=i.length,o=a.length;++n<s;){var l=Ni(i[n],r[n]);if(l)return n>=o?l:l*("desc"==a[n]?-1:1)}return e.index-t.index}(e,t,a)}))}function Wn(e,t,a){for(var n=-1,i=t.length,r={};++n<i;){var s=t[n],o=An(e,s);a(o,s)&&Xn(r,bi(s,e),o)}return r}function Yn(e,t,a,n){var i=n?Ut:$t,r=-1,s=t.length,o=e;for(e===t&&(t=xi(t)),a&&(o=Et(e,Jt(a)));++r<s;)for(var l=0,u=t[r],c=a?a(u):u;(l=i(o,c,l,n))>-1;)o!==e&&qe.call(o,l,1),qe.call(e,l,1);return e}function Hn(e,t){for(var a=e?t.length:0,n=a-1;a--;){var i=t[a];if(a==n||i!==r){var r=i;gr(i)?qe.call(e,i,1):ci(e,i)}}return e}function Gn(e,t){return e+ft(_a()*(t-e+1))}function qn(e,t){var a="";if(!e||t<1||t>c)return a;do{t%2&&(a+=e),(t=ft(t/2))&&(e+=e)}while(t);return a}function Zn(e,t){return Ir(Nr(e,t,al),e+"")}function Jn(e){return Za(Oo(e))}function Kn(e,t){var a=Oo(e);return Fr(a,sn(t,0,a.length))}function Xn(e,t,n,i){if(!Xs(e))return e;for(var r=-1,s=(t=bi(t,e)).length,o=s-1,l=e;null!=l&&++r<s;){var u=Rr(t[r]),c=n;if("__proto__"===u||"constructor"===u||"prototype"===u)return e;if(r!=o){var d=l[u];(c=i?i(d,u,l):a)===a&&(c=Xs(d)?d:gr(t[r+1])?[]:{})}Qa(l,u,c),l=l[u]}return e}var Qn=xa?function(e,t){return xa.set(e,t),e}:al,ei=tt?function(e,t){return tt(e,"toString",{configurable:!0,enumerable:!1,value:Qo(t),writable:!0})}:al;function ti(e){return Fr(Oo(e))}function ai(e,t,a){var n=-1,i=e.length;t<0&&(t=-t>i?0:i+t),(a=a>i?i:a)<0&&(a+=i),i=t>a?0:a-t>>>0,t>>>=0;for(var r=ie(i);++n<i;)r[n]=e[n+t];return r}function ni(e,t){var a;return dn(e,(function(e,n,i){return!(a=t(e,n,i))})),!!a}function ii(e,t,a){var n=0,i=null==e?n:e.length;if("number"==typeof t&&t==t&&i<=2147483647){for(;n<i;){var r=n+i>>>1,s=e[r];null!==s&&!so(s)&&(a?s<=t:s<t)?n=r+1:i=r}return i}return ri(e,t,al,a)}function ri(e,t,n,i){var r=0,s=null==e?0:e.length;if(0===s)return 0;for(var o=(t=n(t))!=t,l=null===t,u=so(t),c=t===a;r<s;){var d=ft((r+s)/2),p=n(e[d]),h=p!==a,f=null===p,m=p==p,y=so(p);if(o)var g=i||m;else g=c?m&&(i||h):l?m&&h&&(i||!f):u?m&&h&&!f&&(i||!y):!f&&!y&&(i?p<=t:p<t);g?r=d+1:s=d}return ga(s,4294967294)}function si(e,t){for(var a=-1,n=e.length,i=0,r=[];++a<n;){var s=e[a],o=t?t(s):s;if(!a||!Bs(o,l)){var l=o;r[i++]=0===s?0:s}}return r}function oi(e){return"number"==typeof e?e:so(e)?d:+e}function li(e){if("string"==typeof e)return e;if(js(e))return Et(e,li)+"";if(so(e))return Pa?Pa.call(e):"";var t=e+"";return"0"==t&&1/e==-1/0?"-0":t}function ui(e,t,a){var n=-1,i=It,r=e.length,s=!0,o=[],l=o;if(a)s=!1,i=Vt;else if(r>=200){var u=t?null:qi(e);if(u)return la(u);s=!1,i=Xt,l=new Ha}else l=t?[]:o;e:for(;++n<r;){var c=e[n],d=t?t(c):c;if(c=a||0!==c?c:0,s&&d==d){for(var p=l.length;p--;)if(l[p]===d)continue e;t&&l.push(d),o.push(c)}else i(l,d,a)||(l!==o&&l.push(d),o.push(c))}return o}function ci(e,t){return null==(e=Tr(e,t=bi(t,e)))||delete e[Rr(qr(t))]}function di(e,t,a,n){return Xn(e,t,a(An(e,t)),n)}function pi(e,t,a,n){for(var i=e.length,r=n?i:-1;(n?r--:++r<i)&&t(e[r],r,e););return a?ai(e,n?0:r,n?r+1:i):ai(e,n?r+1:0,n?i:r)}function hi(e,t){var a=e;return a instanceof ja&&(a=a.value()),Dt(t,(function(e,t){return t.func.apply(t.thisArg,Ft([e],t.args))}),a)}function fi(e,t,a){var n=e.length;if(n<2)return n?ui(e[0]):[];for(var i=-1,r=ie(n);++i<n;)for(var s=e[i],o=-1;++o<n;)o!=i&&(r[i]=cn(r[i]||s,e[o],t,a));return ui(yn(r,1),t,a)}function mi(e,t,n){for(var i=-1,r=e.length,s=t.length,o={};++i<r;){var l=i<s?t[i]:a;n(o,e[i],l)}return o}function yi(e){return Ys(e)?e:[]}function gi(e){return"function"==typeof e?e:al}function bi(e,t){return js(e)?e:vr(e,t)?[e]:Dr(go(e))}var vi=Zn;function _i(e,t,n){var i=e.length;return n=n===a?i:n,!t&&n>=i?e:ai(e,t,n)}var wi=ot||function(e){return pt.clearTimeout(e)};function Ai(e,t){if(t)return e.slice();var a=e.length,n=We?We(a):new e.constructor(a);return e.copy(n),n}function ki(e){var t=new e.constructor(e.byteLength);return new ze(t).set(new ze(e)),t}function Si(e,t){var a=t?ki(e.buffer):e.buffer;return new e.constructor(a,e.byteOffset,e.length)}function Ni(e,t){if(e!==t){var n=e!==a,i=null===e,r=e==e,s=so(e),o=t!==a,l=null===t,u=t==t,c=so(t);if(!l&&!c&&!s&&e>t||s&&o&&u&&!l&&!c||i&&o&&u||!n&&u||!r)return 1;if(!i&&!s&&!c&&e<t||c&&n&&r&&!i&&!s||l&&n&&r||!o&&r||!u)return-1}return 0}function Ti(e,t,a,n){for(var i=-1,r=e.length,s=a.length,o=-1,l=t.length,u=ya(r-s,0),c=ie(l+u),d=!n;++o<l;)c[o]=t[o];for(;++i<s;)(d||i<r)&&(c[a[i]]=e[i]);for(;u--;)c[o++]=e[i++];return c}function Mi(e,t,a,n){for(var i=-1,r=e.length,s=-1,o=a.length,l=-1,u=t.length,c=ya(r-o,0),d=ie(c+u),p=!n;++i<c;)d[i]=e[i];for(var h=i;++l<u;)d[h+l]=t[l];for(;++s<o;)(p||i<r)&&(d[h+a[s]]=e[i++]);return d}function xi(e,t){var a=-1,n=e.length;for(t||(t=ie(n));++a<n;)t[a]=e[a];return t}function Ci(e,t,n,i){var r=!n;n||(n={});for(var s=-1,o=t.length;++s<o;){var l=t[s],u=i?i(n[l],e[l],l,n,e):a;u===a&&(u=e[l]),r?nn(n,l,u):Qa(n,l,u)}return n}function Ii(e,t){return function(a,n){var i=js(a)?Nt:tn,r=t?t():{};return i(a,e,or(n,2),r)}}function Vi(e){return Zn((function(t,n){var i=-1,r=n.length,s=r>1?n[r-1]:a,o=r>2?n[2]:a;for(s=e.length>3&&"function"==typeof s?(r--,s):a,o&&br(n[0],n[1],o)&&(s=r<3?a:s,r=1),t=Ne(t);++i<r;){var l=n[i];l&&e(t,l,i,s)}return t}))}function Ei(e,t){return function(a,n){if(null==a)return a;if(!Ws(a))return e(a,n);for(var i=a.length,r=t?i:-1,s=Ne(a);(t?r--:++r<i)&&!1!==n(s[r],r,s););return a}}function Fi(e){return function(t,a,n){for(var i=-1,r=Ne(t),s=n(t),o=s.length;o--;){var l=s[e?o:++i];if(!1===a(r[l],l,r))break}return t}}function Di(e){return function(t){var n=ia(t=go(t))?da(t):a,i=n?n[0]:t.charAt(0),r=n?_i(n,1).join(""):t.slice(1);return i[e]()+r}}function Ri(e){return function(t){return Dt(Jo(jo(t).replace(Ke,"")),e,"")}}function Li(e){return function(){var t=arguments;switch(t.length){case 0:return new e;case 1:return new e(t[0]);case 2:return new e(t[0],t[1]);case 3:return new e(t[0],t[1],t[2]);case 4:return new e(t[0],t[1],t[2],t[3]);case 5:return new e(t[0],t[1],t[2],t[3],t[4]);case 6:return new e(t[0],t[1],t[2],t[3],t[4],t[5]);case 7:return new e(t[0],t[1],t[2],t[3],t[4],t[5],t[6])}var a=Oa(e.prototype),n=e.apply(a,t);return Xs(n)?n:a}}function Pi(e){return function(t,n,i){var r=Ne(t);if(!Ws(t)){var s=or(n,3);t=Io(t),n=function(e){return s(r[e],e,r)}}var o=e(t,n,i);return o>-1?r[s?t[o]:o]:a}}function Bi(e){return tr((function(t){var i=t.length,r=i,s=Ua.prototype.thru;for(e&&t.reverse();r--;){var o=t[r];if("function"!=typeof o)throw new xe(n);if(s&&!l&&"wrapper"==rr(o))var l=new Ua([],!0)}for(r=l?r:i;++r<i;){var u=rr(o=t[r]),c="wrapper"==u?ir(o):a;l=c&&_r(c[0])&&424==c[1]&&!c[4].length&&1==c[9]?l[rr(c[0])].apply(l,c[3]):1==o.length&&_r(o)?l[u]():l.thru(o)}return function(){var e=arguments,a=e[0];if(l&&1==e.length&&js(a))return l.plant(a).value();for(var n=0,r=i?t[n].apply(this,e):a;++n<i;)r=t[n].call(this,r);return r}}))}function Oi(e,t,n,i,r,s,l,u,c,d){var p=t&o,h=1&t,f=2&t,m=24&t,y=512&t,g=f?a:Li(e);return function o(){for(var b=arguments.length,v=ie(b),_=b;_--;)v[_]=arguments[_];if(m)var w=sr(o),A=function(e,t){for(var a=e.length,n=0;a--;)e[a]===t&&++n;return n}(v,w);if(i&&(v=Ti(v,i,r,m)),s&&(v=Mi(v,s,l,m)),b-=A,m&&b<d){var k=oa(v,w);return Hi(e,t,Oi,o.placeholder,n,v,k,u,c,d-b)}var S=h?n:this,N=f?S[e]:e;return b=v.length,u?v=function(e,t){for(var n=e.length,i=ga(t.length,n),r=xi(e);i--;){var s=t[i];e[i]=gr(s,n)?r[s]:a}return e}(v,u):y&&b>1&&v.reverse(),p&&c<b&&(v.length=c),this&&this!==pt&&this instanceof o&&(N=g||Li(N)),N.apply(S,v)}}function $i(e,t){return function(a,n){return function(e,t,a,n){return vn(e,(function(e,i,r){t(n,a(e),i,r)})),n}(a,e,t(n),{})}}function Ui(e,t){return function(n,i){var r;if(n===a&&i===a)return t;if(n!==a&&(r=n),i!==a){if(r===a)return i;"string"==typeof n||"string"==typeof i?(n=li(n),i=li(i)):(n=oi(n),i=oi(i)),r=e(n,i)}return r}}function ji(e){return tr((function(t){return t=Et(t,Jt(or())),Zn((function(a){var n=this;return e(t,(function(e){return St(e,n,a)}))}))}))}function zi(e,t){var n=(t=t===a?" ":li(t)).length;if(n<2)return n?qn(t,e):t;var i=qn(t,ht(e/ca(t)));return ia(t)?_i(da(i),0,e).join(""):i.slice(0,e)}function Wi(e){return function(t,n,i){return i&&"number"!=typeof i&&br(t,n,i)&&(n=i=a),t=po(t),n===a?(n=t,t=0):n=po(n),function(e,t,a,n){for(var i=-1,r=ya(ht((t-e)/(a||1)),0),s=ie(r);r--;)s[n?r:++i]=e,e+=a;return s}(t,n,i=i===a?t<n?1:-1:po(i),e)}}function Yi(e){return function(t,a){return"string"==typeof t&&"string"==typeof a||(t=mo(t),a=mo(a)),e(t,a)}}function Hi(e,t,n,i,r,o,l,u,c,d){var p=8&t;t|=p?s:64,4&(t&=~(p?64:s))||(t&=-4);var h=[e,t,r,p?o:a,p?l:a,p?a:o,p?a:l,u,c,d],f=n.apply(a,h);return _r(e)&&xr(f,h),f.placeholder=i,Vr(f,e,t)}function Gi(e){var t=Se[e];return function(e,a){if(e=mo(e),(a=null==a?0:ga(ho(a),292))&&Pt(e)){var n=(go(e)+"e").split("e");return+((n=(go(t(n[0]+"e"+(+n[1]+a)))+"e").split("e"))[0]+"e"+(+n[1]-a))}return t(e)}}var qi=Na&&1/la(new Na([,-0]))[1]==u?function(e){return new Na(e)}:ol;function Zi(e){return function(t){var a=hr(t);return a==w?ra(t):a==T?ua(t):function(e,t){return Et(t,(function(t){return[t,e[t]]}))}(t,e(t))}}function Ji(e,t,i,u,c,d,p,h){var f=2&t;if(!f&&"function"!=typeof e)throw new xe(n);var m=u?u.length:0;if(m||(t&=-97,u=c=a),p=p===a?p:ya(ho(p),0),h=h===a?h:ho(h),m-=c?c.length:0,64&t){var y=u,g=c;u=c=a}var b=f?a:ir(e),v=[e,t,i,u,c,y,g,d,p,h];if(b&&function(e,t){var a=e[1],n=t[1],i=a|n,s=i<131,u=n==o&&8==a||n==o&&a==l&&e[7].length<=t[8]||384==n&&t[7].length<=t[8]&&8==a;if(!s&&!u)return e;1&n&&(e[2]=t[2],i|=1&a?0:4);var c=t[3];if(c){var d=e[3];e[3]=d?Ti(d,c,t[4]):c,e[4]=d?oa(e[3],r):t[4]}(c=t[5])&&(d=e[5],e[5]=d?Mi(d,c,t[6]):c,e[6]=d?oa(e[5],r):t[6]),(c=t[7])&&(e[7]=c),n&o&&(e[8]=null==e[8]?t[8]:ga(e[8],t[8])),null==e[9]&&(e[9]=t[9]),e[0]=t[0],e[1]=i}(v,b),e=v[0],t=v[1],i=v[2],u=v[3],c=v[4],!(h=v[9]=v[9]===a?f?0:e.length:ya(v[9]-m,0))&&24&t&&(t&=-25),t&&1!=t)_=8==t||16==t?function(e,t,n){var i=Li(e);return function r(){for(var s=arguments.length,o=ie(s),l=s,u=sr(r);l--;)o[l]=arguments[l];var c=s<3&&o[0]!==u&&o[s-1]!==u?[]:oa(o,u);return(s-=c.length)<n?Hi(e,t,Oi,r.placeholder,a,o,c,a,a,n-s):St(this&&this!==pt&&this instanceof r?i:e,this,o)}}(e,t,h):t!=s&&33!=t||c.length?Oi.apply(a,v):function(e,t,a,n){var i=1&t,r=Li(e);return function t(){for(var s=-1,o=arguments.length,l=-1,u=n.length,c=ie(u+o),d=this&&this!==pt&&this instanceof t?r:e;++l<u;)c[l]=n[l];for(;o--;)c[l++]=arguments[++s];return St(d,i?a:this,c)}}(e,t,i,u);else var _=function(e,t,a){var n=1&t,i=Li(e);return function t(){return(this&&this!==pt&&this instanceof t?i:e).apply(n?a:this,arguments)}}(e,t,i);return Vr((b?Qn:xr)(_,v),e,t)}function Ki(e,t,n,i){return e===a||Bs(e,Ve[n])&&!De.call(i,n)?t:e}function Xi(e,t,n,i,r,s){return Xs(e)&&Xs(t)&&(s.set(t,e),Un(e,t,a,Xi,s),s.delete(t)),e}function Qi(e){return ao(e)?a:e}function er(e,t,n,i,r,s){var o=1&n,l=e.length,u=t.length;if(l!=u&&!(o&&u>l))return!1;var c=s.get(e),d=s.get(t);if(c&&d)return c==t&&d==e;var p=-1,h=!0,f=2&n?new Ha:a;for(s.set(e,t),s.set(t,e);++p<l;){var m=e[p],y=t[p];if(i)var g=o?i(y,m,p,t,e,s):i(m,y,p,e,t,s);if(g!==a){if(g)continue;h=!1;break}if(f){if(!Lt(t,(function(e,t){if(!Xt(f,t)&&(m===e||r(m,e,n,i,s)))return f.push(t)}))){h=!1;break}}else if(m!==y&&!r(m,y,n,i,s)){h=!1;break}}return s.delete(e),s.delete(t),h}function tr(e){return Ir(Nr(e,a,zr),e+"")}function ar(e){return kn(e,Io,dr)}function nr(e){return kn(e,Vo,pr)}var ir=xa?function(e){return xa.get(e)}:ol;function rr(e){for(var t=e.name+"",a=Ca[t],n=De.call(Ca,t)?a.length:0;n--;){var i=a[n],r=i.func;if(null==r||r==e)return i.name}return t}function sr(e){return(De.call(Ba,"placeholder")?Ba:e).placeholder}function or(){var e=Ba.iteratee||nl;return e=e===nl?Dn:e,arguments.length?e(arguments[0],arguments[1]):e}function lr(e,t){var a,n,i=e.__data__;return("string"==(n=typeof(a=t))||"number"==n||"symbol"==n||"boolean"==n?"__proto__"!==a:null===a)?i["string"==typeof t?"string":"hash"]:i.map}function ur(e){for(var t=Io(e),a=t.length;a--;){var n=t[a],i=e[n];t[a]=[n,i,kr(i)]}return t}function cr(e,t){var n=function(e,t){return null==e?a:e[t]}(e,t);return Fn(n)?n:a}var dr=yt?function(e){return null==e?[]:(e=Ne(e),Ct(yt(e),(function(t){return Ge.call(e,t)})))}:fl,pr=yt?function(e){for(var t=[];e;)Ft(t,dr(e)),e=Ye(e);return t}:fl,hr=Sn;function fr(e,t,a){for(var n=-1,i=(t=bi(t,e)).length,r=!1;++n<i;){var s=Rr(t[n]);if(!(r=null!=e&&a(e,s)))break;e=e[s]}return r||++n!=i?r:!!(i=null==e?0:e.length)&&Ks(i)&&gr(s,i)&&(js(e)||Us(e))}function mr(e){return"function"!=typeof e.constructor||Ar(e)?{}:Oa(Ye(e))}function yr(e){return js(e)||Us(e)||!!(Ze&&e&&e[Ze])}function gr(e,t){var a=typeof e;return!!(t=null==t?c:t)&&("number"==a||"symbol"!=a&&ge.test(e))&&e>-1&&e%1==0&&e<t}function br(e,t,a){if(!Xs(a))return!1;var n=typeof t;return!!("number"==n?Ws(a)&&gr(t,a.length):"string"==n&&t in a)&&Bs(a[t],e)}function vr(e,t){if(js(e))return!1;var a=typeof e;return!("number"!=a&&"symbol"!=a&&"boolean"!=a&&null!=e&&!so(e))||Q.test(e)||!X.test(e)||null!=t&&e in Ne(t)}function _r(e){var t=rr(e),a=Ba[t];if("function"!=typeof a||!(t in ja.prototype))return!1;if(e===a)return!0;var n=ir(a);return!!n&&e===n[0]}(Aa&&hr(new Aa(new ArrayBuffer(1)))!=E||ka&&hr(new ka)!=w||Sa&&hr(Sa.resolve())!=S||Na&&hr(new Na)!=T||Ta&&hr(new Ta)!=C)&&(hr=function(e){var t=Sn(e),n=t==k?e.constructor:a,i=n?Lr(n):"";if(i)switch(i){case Ia:return E;case Va:return w;case Ea:return S;case Fa:return T;case Da:return C}return t});var wr=Ee?Zs:ml;function Ar(e){var t=e&&e.constructor;return e===("function"==typeof t&&t.prototype||Ve)}function kr(e){return e==e&&!Xs(e)}function Sr(e,t){return function(n){return null!=n&&n[e]===t&&(t!==a||e in Ne(n))}}function Nr(e,t,n){return t=ya(t===a?e.length-1:t,0),function(){for(var a=arguments,i=-1,r=ya(a.length-t,0),s=ie(r);++i<r;)s[i]=a[t+i];i=-1;for(var o=ie(t+1);++i<t;)o[i]=a[i];return o[t]=n(s),St(e,this,o)}}function Tr(e,t){return t.length<2?e:An(e,ai(t,0,-1))}function Mr(e,t){if(("constructor"!==t||"function"!=typeof e[t])&&"__proto__"!=t)return e[t]}var xr=Er(Qn),Cr=dt||function(e,t){return pt.setTimeout(e,t)},Ir=Er(ei);function Vr(e,t,a){var n=t+"";return Ir(e,function(e,t){var a=t.length;if(!a)return e;var n=a-1;return t[n]=(a>1?"& ":"")+t[n],t=t.join(a>2?", ":" "),e.replace(re,"{\n/* [wrapped with "+t+"] */\n")}(n,function(e,t){return Tt(h,(function(a){var n="_."+a[0];t&a[1]&&!It(e,n)&&e.push(n)})),e.sort()}(function(e){var t=e.match(se);return t?t[1].split(oe):[]}(n),a)))}function Er(e){var t=0,n=0;return function(){var i=ba(),r=16-(i-n);if(n=i,r>0){if(++t>=800)return arguments[0]}else t=0;return e.apply(a,arguments)}}function Fr(e,t){var n=-1,i=e.length,r=i-1;for(t=t===a?i:t;++n<t;){var s=Gn(n,r),o=e[s];e[s]=e[n],e[n]=o}return e.length=t,e}var Dr=function(e){var t=Es(e,(function(e){return 500===a.size&&a.clear(),e})),a=t.cache;return t}((function(e){var t=[];return 46===e.charCodeAt(0)&&t.push(""),e.replace(ee,(function(e,a,n,i){t.push(n?i.replace(ce,"$1"):a||e)})),t}));function Rr(e){if("string"==typeof e||so(e))return e;var t=e+"";return"0"==t&&1/e==-1/0?"-0":t}function Lr(e){if(null!=e){try{return Fe.call(e)}catch(e){}try{return e+""}catch(e){}}return""}function Pr(e){if(e instanceof ja)return e.clone();var t=new Ua(e.__wrapped__,e.__chain__);return t.__actions__=xi(e.__actions__),t.__index__=e.__index__,t.__values__=e.__values__,t}var Br=Zn((function(e,t){return Ys(e)?cn(e,yn(t,1,Ys,!0)):[]})),Or=Zn((function(e,t){var n=qr(t);return Ys(n)&&(n=a),Ys(e)?cn(e,yn(t,1,Ys,!0),or(n,2)):[]})),$r=Zn((function(e,t){var n=qr(t);return Ys(n)&&(n=a),Ys(e)?cn(e,yn(t,1,Ys,!0),a,n):[]}));function Ur(e,t,a){var n=null==e?0:e.length;if(!n)return-1;var i=null==a?0:ho(a);return i<0&&(i=ya(n+i,0)),Ot(e,or(t,3),i)}function jr(e,t,n){var i=null==e?0:e.length;if(!i)return-1;var r=i-1;return n!==a&&(r=ho(n),r=n<0?ya(i+r,0):ga(r,i-1)),Ot(e,or(t,3),r,!0)}function zr(e){return null!=e&&e.length?yn(e,1):[]}function Wr(e){return e&&e.length?e[0]:a}var Yr=Zn((function(e){var t=Et(e,yi);return t.length&&t[0]===e[0]?xn(t):[]})),Hr=Zn((function(e){var t=qr(e),n=Et(e,yi);return t===qr(n)?t=a:n.pop(),n.length&&n[0]===e[0]?xn(n,or(t,2)):[]})),Gr=Zn((function(e){var t=qr(e),n=Et(e,yi);return(t="function"==typeof t?t:a)&&n.pop(),n.length&&n[0]===e[0]?xn(n,a,t):[]}));function qr(e){var t=null==e?0:e.length;return t?e[t-1]:a}var Zr=Zn(Jr);function Jr(e,t){return e&&e.length&&t&&t.length?Yn(e,t):e}var Kr=tr((function(e,t){var a=null==e?0:e.length,n=rn(e,t);return Hn(e,Et(t,(function(e){return gr(e,a)?+e:e})).sort(Ni)),n}));function Xr(e){return null==e?e:wa.call(e)}var Qr=Zn((function(e){return ui(yn(e,1,Ys,!0))})),es=Zn((function(e){var t=qr(e);return Ys(t)&&(t=a),ui(yn(e,1,Ys,!0),or(t,2))})),ts=Zn((function(e){var t=qr(e);return t="function"==typeof t?t:a,ui(yn(e,1,Ys,!0),a,t)}));function as(e){if(!e||!e.length)return[];var t=0;return e=Ct(e,(function(e){if(Ys(e))return t=ya(e.length,t),!0})),qt(t,(function(t){return Et(e,Wt(t))}))}function ns(e,t){if(!e||!e.length)return[];var n=as(e);return null==t?n:Et(n,(function(e){return St(t,a,e)}))}var is=Zn((function(e,t){return Ys(e)?cn(e,t):[]})),rs=Zn((function(e){return fi(Ct(e,Ys))})),ss=Zn((function(e){var t=qr(e);return Ys(t)&&(t=a),fi(Ct(e,Ys),or(t,2))})),os=Zn((function(e){var t=qr(e);return t="function"==typeof t?t:a,fi(Ct(e,Ys),a,t)})),ls=Zn(as),us=Zn((function(e){var t=e.length,n=t>1?e[t-1]:a;return n="function"==typeof n?(e.pop(),n):a,ns(e,n)}));function cs(e){var t=Ba(e);return t.__chain__=!0,t}function ds(e,t){return t(e)}var ps=tr((function(e){var t=e.length,n=t?e[0]:0,i=this.__wrapped__,r=function(t){return rn(t,e)};return!(t>1||this.__actions__.length)&&i instanceof ja&&gr(n)?((i=i.slice(n,+n+(t?1:0))).__actions__.push({func:ds,args:[r],thisArg:a}),new Ua(i,this.__chain__).thru((function(e){return t&&!e.length&&e.push(a),e}))):this.thru(r)})),hs=Ii((function(e,t,a){De.call(e,a)?++e[a]:nn(e,a,1)})),fs=Pi(Ur),ms=Pi(jr);function ys(e,t){return(js(e)?Tt:dn)(e,or(t,3))}function gs(e,t){return(js(e)?Mt:pn)(e,or(t,3))}var bs=Ii((function(e,t,a){De.call(e,a)?e[a].push(t):nn(e,a,[t])})),vs=Zn((function(e,t,a){var n=-1,i="function"==typeof t,r=Ws(e)?ie(e.length):[];return dn(e,(function(e){r[++n]=i?St(t,e,a):Cn(e,t,a)})),r})),_s=Ii((function(e,t,a){nn(e,a,t)}));function ws(e,t){return(js(e)?Et:Bn)(e,or(t,3))}var As=Ii((function(e,t,a){e[a?0:1].push(t)}),(function(){return[[],[]]})),ks=Zn((function(e,t){if(null==e)return[];var a=t.length;return a>1&&br(e,t[0],t[1])?t=[]:a>2&&br(t[0],t[1],t[2])&&(t=[t[0]]),zn(e,yn(t,1),[])})),Ss=ct||function(){return pt.Date.now()};function Ns(e,t,n){return t=n?a:t,t=e&&null==t?e.length:t,Ji(e,o,a,a,a,a,t)}function Ts(e,t){var i;if("function"!=typeof t)throw new xe(n);return e=ho(e),function(){return--e>0&&(i=t.apply(this,arguments)),e<=1&&(t=a),i}}var Ms=Zn((function(e,t,a){var n=1;if(a.length){var i=oa(a,sr(Ms));n|=s}return Ji(e,n,t,a,i)})),xs=Zn((function(e,t,a){var n=3;if(a.length){var i=oa(a,sr(xs));n|=s}return Ji(t,n,e,a,i)}));function Cs(e,t,i){var r,s,o,l,u,c,d=0,p=!1,h=!1,f=!0;if("function"!=typeof e)throw new xe(n);function m(t){var n=r,i=s;return r=s=a,d=t,l=e.apply(i,n)}function y(e){var n=e-c;return c===a||n>=t||n<0||h&&e-d>=o}function g(){var e=Ss();if(y(e))return b(e);u=Cr(g,function(e){var a=t-(e-c);return h?ga(a,o-(e-d)):a}(e))}function b(e){return u=a,f&&r?m(e):(r=s=a,l)}function v(){var e=Ss(),n=y(e);if(r=arguments,s=this,c=e,n){if(u===a)return function(e){return d=e,u=Cr(g,t),p?m(e):l}(c);if(h)return wi(u),u=Cr(g,t),m(c)}return u===a&&(u=Cr(g,t)),l}return t=mo(t)||0,Xs(i)&&(p=!!i.leading,o=(h="maxWait"in i)?ya(mo(i.maxWait)||0,t):o,f="trailing"in i?!!i.trailing:f),v.cancel=function(){u!==a&&wi(u),d=0,r=c=s=u=a},v.flush=function(){return u===a?l:b(Ss())},v}var Is=Zn((function(e,t){return un(e,1,t)})),Vs=Zn((function(e,t,a){return un(e,mo(t)||0,a)}));function Es(e,t){if("function"!=typeof e||null!=t&&"function"!=typeof t)throw new xe(n);var a=function(){var n=arguments,i=t?t.apply(this,n):n[0],r=a.cache;if(r.has(i))return r.get(i);var s=e.apply(this,n);return a.cache=r.set(i,s)||r,s};return a.cache=new(Es.Cache||Ya),a}function Fs(e){if("function"!=typeof e)throw new xe(n);return function(){var t=arguments;switch(t.length){case 0:return!e.call(this);case 1:return!e.call(this,t[0]);case 2:return!e.call(this,t[0],t[1]);case 3:return!e.call(this,t[0],t[1],t[2])}return!e.apply(this,t)}}Es.Cache=Ya;var Ds=vi((function(e,t){var a=(t=1==t.length&&js(t[0])?Et(t[0],Jt(or())):Et(yn(t,1),Jt(or()))).length;return Zn((function(n){for(var i=-1,r=ga(n.length,a);++i<r;)n[i]=t[i].call(this,n[i]);return St(e,this,n)}))})),Rs=Zn((function(e,t){var n=oa(t,sr(Rs));return Ji(e,s,a,t,n)})),Ls=Zn((function(e,t){var n=oa(t,sr(Ls));return Ji(e,64,a,t,n)})),Ps=tr((function(e,t){return Ji(e,l,a,a,a,t)}));function Bs(e,t){return e===t||e!=e&&t!=t}var Os=Yi(Nn),$s=Yi((function(e,t){return e>=t})),Us=In(function(){return arguments}())?In:function(e){return Qs(e)&&De.call(e,"callee")&&!Ge.call(e,"callee")},js=ie.isArray,zs=bt?Jt(bt):function(e){return Qs(e)&&Sn(e)==V};function Ws(e){return null!=e&&Ks(e.length)&&!Zs(e)}function Ys(e){return Qs(e)&&Ws(e)}var Hs=gt||ml,Gs=vt?Jt(vt):function(e){return Qs(e)&&Sn(e)==g};function qs(e){if(!Qs(e))return!1;var t=Sn(e);return t==b||"[object DOMException]"==t||"string"==typeof e.message&&"string"==typeof e.name&&!ao(e)}function Zs(e){if(!Xs(e))return!1;var t=Sn(e);return t==v||t==_||"[object AsyncFunction]"==t||"[object Proxy]"==t}function Js(e){return"number"==typeof e&&e==ho(e)}function Ks(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=c}function Xs(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}function Qs(e){return null!=e&&"object"==typeof e}var eo=_t?Jt(_t):function(e){return Qs(e)&&hr(e)==w};function to(e){return"number"==typeof e||Qs(e)&&Sn(e)==A}function ao(e){if(!Qs(e)||Sn(e)!=k)return!1;var t=Ye(e);if(null===t)return!0;var a=De.call(t,"constructor")&&t.constructor;return"function"==typeof a&&a instanceof a&&Fe.call(a)==Be}var no=wt?Jt(wt):function(e){return Qs(e)&&Sn(e)==N},io=At?Jt(At):function(e){return Qs(e)&&hr(e)==T};function ro(e){return"string"==typeof e||!js(e)&&Qs(e)&&Sn(e)==M}function so(e){return"symbol"==typeof e||Qs(e)&&Sn(e)==x}var oo=kt?Jt(kt):function(e){return Qs(e)&&Ks(e.length)&&!!rt[Sn(e)]},lo=Yi(Pn),uo=Yi((function(e,t){return e<=t}));function co(e){if(!e)return[];if(Ws(e))return ro(e)?da(e):xi(e);if(Je&&e[Je])return function(e){for(var t,a=[];!(t=e.next()).done;)a.push(t.value);return a}(e[Je]());var t=hr(e);return(t==w?ra:t==T?la:Oo)(e)}function po(e){return e?(e=mo(e))===u||e===-1/0?17976931348623157e292*(e<0?-1:1):e==e?e:0:0===e?e:0}function ho(e){var t=po(e),a=t%1;return t==t?a?t-a:t:0}function fo(e){return e?sn(ho(e),0,p):0}function mo(e){if("number"==typeof e)return e;if(so(e))return d;if(Xs(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=Xs(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=Zt(e);var a=fe.test(e);return a||ye.test(e)?ut(e.slice(2),a?2:8):he.test(e)?d:+e}function yo(e){return Ci(e,Vo(e))}function go(e){return null==e?"":li(e)}var bo=Vi((function(e,t){if(Ar(t)||Ws(t))Ci(t,Io(t),e);else for(var a in t)De.call(t,a)&&Qa(e,a,t[a])})),vo=Vi((function(e,t){Ci(t,Vo(t),e)})),_o=Vi((function(e,t,a,n){Ci(t,Vo(t),e,n)})),wo=Vi((function(e,t,a,n){Ci(t,Io(t),e,n)})),Ao=tr(rn),ko=Zn((function(e,t){e=Ne(e);var n=-1,i=t.length,r=i>2?t[2]:a;for(r&&br(t[0],t[1],r)&&(i=1);++n<i;)for(var s=t[n],o=Vo(s),l=-1,u=o.length;++l<u;){var c=o[l],d=e[c];(d===a||Bs(d,Ve[c])&&!De.call(e,c))&&(e[c]=s[c])}return e})),So=Zn((function(e){return e.push(a,Xi),St(Fo,a,e)}));function No(e,t,n){var i=null==e?a:An(e,t);return i===a?n:i}function To(e,t){return null!=e&&fr(e,t,Mn)}var Mo=$i((function(e,t,a){null!=t&&"function"!=typeof t.toString&&(t=Pe.call(t)),e[t]=a}),Qo(al)),xo=$i((function(e,t,a){null!=t&&"function"!=typeof t.toString&&(t=Pe.call(t)),De.call(e,t)?e[t].push(a):e[t]=[a]}),or),Co=Zn(Cn);function Io(e){return Ws(e)?qa(e):Rn(e)}function Vo(e){return Ws(e)?qa(e,!0):Ln(e)}var Eo=Vi((function(e,t,a){Un(e,t,a)})),Fo=Vi((function(e,t,a,n){Un(e,t,a,n)})),Do=tr((function(e,t){var a={};if(null==e)return a;var n=!1;t=Et(t,(function(t){return t=bi(t,e),n||(n=t.length>1),t})),Ci(e,nr(e),a),n&&(a=on(a,7,Qi));for(var i=t.length;i--;)ci(a,t[i]);return a})),Ro=tr((function(e,t){return null==e?{}:function(e,t){return Wn(e,t,(function(t,a){return To(e,a)}))}(e,t)}));function Lo(e,t){if(null==e)return{};var a=Et(nr(e),(function(e){return[e]}));return t=or(t),Wn(e,a,(function(e,a){return t(e,a[0])}))}var Po=Zi(Io),Bo=Zi(Vo);function Oo(e){return null==e?[]:Kt(e,Io(e))}var $o=Ri((function(e,t,a){return t=t.toLowerCase(),e+(a?Uo(t):t)}));function Uo(e){return Zo(go(e).toLowerCase())}function jo(e){return(e=go(e))&&e.replace(be,ta).replace(Xe,"")}var zo=Ri((function(e,t,a){return e+(a?"-":"")+t.toLowerCase()})),Wo=Ri((function(e,t,a){return e+(a?" ":"")+t.toLowerCase()})),Yo=Di("toLowerCase"),Ho=Ri((function(e,t,a){return e+(a?"_":"")+t.toLowerCase()})),Go=Ri((function(e,t,a){return e+(a?" ":"")+Zo(t)})),qo=Ri((function(e,t,a){return e+(a?" ":"")+t.toUpperCase()})),Zo=Di("toUpperCase");function Jo(e,t,n){return e=go(e),(t=n?a:t)===a?function(e){return at.test(e)}(e)?function(e){return e.match(et)||[]}(e):function(e){return e.match(le)||[]}(e):e.match(t)||[]}var Ko=Zn((function(e,t){try{return St(e,a,t)}catch(e){return qs(e)?e:new Ae(e)}})),Xo=tr((function(e,t){return Tt(t,(function(t){t=Rr(t),nn(e,t,Ms(e[t],e))})),e}));function Qo(e){return function(){return e}}var el=Bi(),tl=Bi(!0);function al(e){return e}function nl(e){return Dn("function"==typeof e?e:on(e,1))}var il=Zn((function(e,t){return function(a){return Cn(a,e,t)}})),rl=Zn((function(e,t){return function(a){return Cn(e,a,t)}}));function sl(e,t,a){var n=Io(t),i=wn(t,n);null!=a||Xs(t)&&(i.length||!n.length)||(a=t,t=e,e=this,i=wn(t,Io(t)));var r=!(Xs(a)&&"chain"in a&&!a.chain),s=Zs(e);return Tt(i,(function(a){var n=t[a];e[a]=n,s&&(e.prototype[a]=function(){var t=this.__chain__;if(r||t){var a=e(this.__wrapped__);return(a.__actions__=xi(this.__actions__)).push({func:n,args:arguments,thisArg:e}),a.__chain__=t,a}return n.apply(e,Ft([this.value()],arguments))})})),e}function ol(){}var ll=ji(Et),ul=ji(xt),cl=ji(Lt);function dl(e){return vr(e)?Wt(Rr(e)):function(e){return function(t){return An(t,e)}}(e)}var pl=Wi(),hl=Wi(!0);function fl(){return[]}function ml(){return!1}var yl,gl=Ui((function(e,t){return e+t}),0),bl=Gi("ceil"),vl=Ui((function(e,t){return e/t}),1),_l=Gi("floor"),wl=Ui((function(e,t){return e*t}),1),Al=Gi("round"),kl=Ui((function(e,t){return e-t}),0);return Ba.after=function(e,t){if("function"!=typeof t)throw new xe(n);return e=ho(e),function(){if(--e<1)return t.apply(this,arguments)}},Ba.ary=Ns,Ba.assign=bo,Ba.assignIn=vo,Ba.assignInWith=_o,Ba.assignWith=wo,Ba.at=Ao,Ba.before=Ts,Ba.bind=Ms,Ba.bindAll=Xo,Ba.bindKey=xs,Ba.castArray=function(){if(!arguments.length)return[];var e=arguments[0];return js(e)?e:[e]},Ba.chain=cs,Ba.chunk=function(e,t,n){t=(n?br(e,t,n):t===a)?1:ya(ho(t),0);var i=null==e?0:e.length;if(!i||t<1)return[];for(var r=0,s=0,o=ie(ht(i/t));r<i;)o[s++]=ai(e,r,r+=t);return o},Ba.compact=function(e){for(var t=-1,a=null==e?0:e.length,n=0,i=[];++t<a;){var r=e[t];r&&(i[n++]=r)}return i},Ba.concat=function(){var e=arguments.length;if(!e)return[];for(var t=ie(e-1),a=arguments[0],n=e;n--;)t[n-1]=arguments[n];return Ft(js(a)?xi(a):[a],yn(t,1))},Ba.cond=function(e){var t=null==e?0:e.length,a=or();return e=t?Et(e,(function(e){if("function"!=typeof e[1])throw new xe(n);return[a(e[0]),e[1]]})):[],Zn((function(a){for(var n=-1;++n<t;){var i=e[n];if(St(i[0],this,a))return St(i[1],this,a)}}))},Ba.conforms=function(e){return function(e){var t=Io(e);return function(a){return ln(a,e,t)}}(on(e,1))},Ba.constant=Qo,Ba.countBy=hs,Ba.create=function(e,t){var a=Oa(e);return null==t?a:an(a,t)},Ba.curry=function e(t,n,i){var r=Ji(t,8,a,a,a,a,a,n=i?a:n);return r.placeholder=e.placeholder,r},Ba.curryRight=function e(t,n,i){var r=Ji(t,16,a,a,a,a,a,n=i?a:n);return r.placeholder=e.placeholder,r},Ba.debounce=Cs,Ba.defaults=ko,Ba.defaultsDeep=So,Ba.defer=Is,Ba.delay=Vs,Ba.difference=Br,Ba.differenceBy=Or,Ba.differenceWith=$r,Ba.drop=function(e,t,n){var i=null==e?0:e.length;return i?ai(e,(t=n||t===a?1:ho(t))<0?0:t,i):[]},Ba.dropRight=function(e,t,n){var i=null==e?0:e.length;return i?ai(e,0,(t=i-(t=n||t===a?1:ho(t)))<0?0:t):[]},Ba.dropRightWhile=function(e,t){return e&&e.length?pi(e,or(t,3),!0,!0):[]},Ba.dropWhile=function(e,t){return e&&e.length?pi(e,or(t,3),!0):[]},Ba.fill=function(e,t,n,i){var r=null==e?0:e.length;return r?(n&&"number"!=typeof n&&br(e,t,n)&&(n=0,i=r),function(e,t,n,i){var r=e.length;for((n=ho(n))<0&&(n=-n>r?0:r+n),(i=i===a||i>r?r:ho(i))<0&&(i+=r),i=n>i?0:fo(i);n<i;)e[n++]=t;return e}(e,t,n,i)):[]},Ba.filter=function(e,t){return(js(e)?Ct:mn)(e,or(t,3))},Ba.flatMap=function(e,t){return yn(ws(e,t),1)},Ba.flatMapDeep=function(e,t){return yn(ws(e,t),u)},Ba.flatMapDepth=function(e,t,n){return n=n===a?1:ho(n),yn(ws(e,t),n)},Ba.flatten=zr,Ba.flattenDeep=function(e){return null!=e&&e.length?yn(e,u):[]},Ba.flattenDepth=function(e,t){return null!=e&&e.length?yn(e,t=t===a?1:ho(t)):[]},Ba.flip=function(e){return Ji(e,512)},Ba.flow=el,Ba.flowRight=tl,Ba.fromPairs=function(e){for(var t=-1,a=null==e?0:e.length,n={};++t<a;){var i=e[t];n[i[0]]=i[1]}return n},Ba.functions=function(e){return null==e?[]:wn(e,Io(e))},Ba.functionsIn=function(e){return null==e?[]:wn(e,Vo(e))},Ba.groupBy=bs,Ba.initial=function(e){return null!=e&&e.length?ai(e,0,-1):[]},Ba.intersection=Yr,Ba.intersectionBy=Hr,Ba.intersectionWith=Gr,Ba.invert=Mo,Ba.invertBy=xo,Ba.invokeMap=vs,Ba.iteratee=nl,Ba.keyBy=_s,Ba.keys=Io,Ba.keysIn=Vo,Ba.map=ws,Ba.mapKeys=function(e,t){var a={};return t=or(t,3),vn(e,(function(e,n,i){nn(a,t(e,n,i),e)})),a},Ba.mapValues=function(e,t){var a={};return t=or(t,3),vn(e,(function(e,n,i){nn(a,n,t(e,n,i))})),a},Ba.matches=function(e){return On(on(e,1))},Ba.matchesProperty=function(e,t){return $n(e,on(t,1))},Ba.memoize=Es,Ba.merge=Eo,Ba.mergeWith=Fo,Ba.method=il,Ba.methodOf=rl,Ba.mixin=sl,Ba.negate=Fs,Ba.nthArg=function(e){return e=ho(e),Zn((function(t){return jn(t,e)}))},Ba.omit=Do,Ba.omitBy=function(e,t){return Lo(e,Fs(or(t)))},Ba.once=function(e){return Ts(2,e)},Ba.orderBy=function(e,t,n,i){return null==e?[]:(js(t)||(t=null==t?[]:[t]),js(n=i?a:n)||(n=null==n?[]:[n]),zn(e,t,n))},Ba.over=ll,Ba.overArgs=Ds,Ba.overEvery=ul,Ba.overSome=cl,Ba.partial=Rs,Ba.partialRight=Ls,Ba.partition=As,Ba.pick=Ro,Ba.pickBy=Lo,Ba.property=dl,Ba.propertyOf=function(e){return function(t){return null==e?a:An(e,t)}},Ba.pull=Zr,Ba.pullAll=Jr,Ba.pullAllBy=function(e,t,a){return e&&e.length&&t&&t.length?Yn(e,t,or(a,2)):e},Ba.pullAllWith=function(e,t,n){return e&&e.length&&t&&t.length?Yn(e,t,a,n):e},Ba.pullAt=Kr,Ba.range=pl,Ba.rangeRight=hl,Ba.rearg=Ps,Ba.reject=function(e,t){return(js(e)?Ct:mn)(e,Fs(or(t,3)))},Ba.remove=function(e,t){var a=[];if(!e||!e.length)return a;var n=-1,i=[],r=e.length;for(t=or(t,3);++n<r;){var s=e[n];t(s,n,e)&&(a.push(s),i.push(n))}return Hn(e,i),a},Ba.rest=function(e,t){if("function"!=typeof e)throw new xe(n);return Zn(e,t=t===a?t:ho(t))},Ba.reverse=Xr,Ba.sampleSize=function(e,t,n){return t=(n?br(e,t,n):t===a)?1:ho(t),(js(e)?Ja:Kn)(e,t)},Ba.set=function(e,t,a){return null==e?e:Xn(e,t,a)},Ba.setWith=function(e,t,n,i){return i="function"==typeof i?i:a,null==e?e:Xn(e,t,n,i)},Ba.shuffle=function(e){return(js(e)?Ka:ti)(e)},Ba.slice=function(e,t,n){var i=null==e?0:e.length;return i?(n&&"number"!=typeof n&&br(e,t,n)?(t=0,n=i):(t=null==t?0:ho(t),n=n===a?i:ho(n)),ai(e,t,n)):[]},Ba.sortBy=ks,Ba.sortedUniq=function(e){return e&&e.length?si(e):[]},Ba.sortedUniqBy=function(e,t){return e&&e.length?si(e,or(t,2)):[]},Ba.split=function(e,t,n){return n&&"number"!=typeof n&&br(e,t,n)&&(t=n=a),(n=n===a?p:n>>>0)?(e=go(e))&&("string"==typeof t||null!=t&&!no(t))&&!(t=li(t))&&ia(e)?_i(da(e),0,n):e.split(t,n):[]},Ba.spread=function(e,t){if("function"!=typeof e)throw new xe(n);return t=null==t?0:ya(ho(t),0),Zn((function(a){var n=a[t],i=_i(a,0,t);return n&&Ft(i,n),St(e,this,i)}))},Ba.tail=function(e){var t=null==e?0:e.length;return t?ai(e,1,t):[]},Ba.take=function(e,t,n){return e&&e.length?ai(e,0,(t=n||t===a?1:ho(t))<0?0:t):[]},Ba.takeRight=function(e,t,n){var i=null==e?0:e.length;return i?ai(e,(t=i-(t=n||t===a?1:ho(t)))<0?0:t,i):[]},Ba.takeRightWhile=function(e,t){return e&&e.length?pi(e,or(t,3),!1,!0):[]},Ba.takeWhile=function(e,t){return e&&e.length?pi(e,or(t,3)):[]},Ba.tap=function(e,t){return t(e),e},Ba.throttle=function(e,t,a){var i=!0,r=!0;if("function"!=typeof e)throw new xe(n);return Xs(a)&&(i="leading"in a?!!a.leading:i,r="trailing"in a?!!a.trailing:r),Cs(e,t,{leading:i,maxWait:t,trailing:r})},Ba.thru=ds,Ba.toArray=co,Ba.toPairs=Po,Ba.toPairsIn=Bo,Ba.toPath=function(e){return js(e)?Et(e,Rr):so(e)?[e]:xi(Dr(go(e)))},Ba.toPlainObject=yo,Ba.transform=function(e,t,a){var n=js(e),i=n||Hs(e)||oo(e);if(t=or(t,4),null==a){var r=e&&e.constructor;a=i?n?new r:[]:Xs(e)&&Zs(r)?Oa(Ye(e)):{}}return(i?Tt:vn)(e,(function(e,n,i){return t(a,e,n,i)})),a},Ba.unary=function(e){return Ns(e,1)},Ba.union=Qr,Ba.unionBy=es,Ba.unionWith=ts,Ba.uniq=function(e){return e&&e.length?ui(e):[]},Ba.uniqBy=function(e,t){return e&&e.length?ui(e,or(t,2)):[]},Ba.uniqWith=function(e,t){return t="function"==typeof t?t:a,e&&e.length?ui(e,a,t):[]},Ba.unset=function(e,t){return null==e||ci(e,t)},Ba.unzip=as,Ba.unzipWith=ns,Ba.update=function(e,t,a){return null==e?e:di(e,t,gi(a))},Ba.updateWith=function(e,t,n,i){return i="function"==typeof i?i:a,null==e?e:di(e,t,gi(n),i)},Ba.values=Oo,Ba.valuesIn=function(e){return null==e?[]:Kt(e,Vo(e))},Ba.without=is,Ba.words=Jo,Ba.wrap=function(e,t){return Rs(gi(t),e)},Ba.xor=rs,Ba.xorBy=ss,Ba.xorWith=os,Ba.zip=ls,Ba.zipObject=function(e,t){return mi(e||[],t||[],Qa)},Ba.zipObjectDeep=function(e,t){return mi(e||[],t||[],Xn)},Ba.zipWith=us,Ba.entries=Po,Ba.entriesIn=Bo,Ba.extend=vo,Ba.extendWith=_o,sl(Ba,Ba),Ba.add=gl,Ba.attempt=Ko,Ba.camelCase=$o,Ba.capitalize=Uo,Ba.ceil=bl,Ba.clamp=function(e,t,n){return n===a&&(n=t,t=a),n!==a&&(n=(n=mo(n))==n?n:0),t!==a&&(t=(t=mo(t))==t?t:0),sn(mo(e),t,n)},Ba.clone=function(e){return on(e,4)},Ba.cloneDeep=function(e){return on(e,5)},Ba.cloneDeepWith=function(e,t){return on(e,5,t="function"==typeof t?t:a)},Ba.cloneWith=function(e,t){return on(e,4,t="function"==typeof t?t:a)},Ba.conformsTo=function(e,t){return null==t||ln(e,t,Io(t))},Ba.deburr=jo,Ba.defaultTo=function(e,t){return null==e||e!=e?t:e},Ba.divide=vl,Ba.endsWith=function(e,t,n){e=go(e),t=li(t);var i=e.length,r=n=n===a?i:sn(ho(n),0,i);return(n-=t.length)>=0&&e.slice(n,r)==t},Ba.eq=Bs,Ba.escape=function(e){return(e=go(e))&&q.test(e)?e.replace(H,aa):e},Ba.escapeRegExp=function(e){return(e=go(e))&&ae.test(e)?e.replace(te,"\\$&"):e},Ba.every=function(e,t,n){var i=js(e)?xt:hn;return n&&br(e,t,n)&&(t=a),i(e,or(t,3))},Ba.find=fs,Ba.findIndex=Ur,Ba.findKey=function(e,t){return Bt(e,or(t,3),vn)},Ba.findLast=ms,Ba.findLastIndex=jr,Ba.findLastKey=function(e,t){return Bt(e,or(t,3),_n)},Ba.floor=_l,Ba.forEach=ys,Ba.forEachRight=gs,Ba.forIn=function(e,t){return null==e?e:gn(e,or(t,3),Vo)},Ba.forInRight=function(e,t){return null==e?e:bn(e,or(t,3),Vo)},Ba.forOwn=function(e,t){return e&&vn(e,or(t,3))},Ba.forOwnRight=function(e,t){return e&&_n(e,or(t,3))},Ba.get=No,Ba.gt=Os,Ba.gte=$s,Ba.has=function(e,t){return null!=e&&fr(e,t,Tn)},Ba.hasIn=To,Ba.head=Wr,Ba.identity=al,Ba.includes=function(e,t,a,n){e=Ws(e)?e:Oo(e),a=a&&!n?ho(a):0;var i=e.length;return a<0&&(a=ya(i+a,0)),ro(e)?a<=i&&e.indexOf(t,a)>-1:!!i&&$t(e,t,a)>-1},Ba.indexOf=function(e,t,a){var n=null==e?0:e.length;if(!n)return-1;var i=null==a?0:ho(a);return i<0&&(i=ya(n+i,0)),$t(e,t,i)},Ba.inRange=function(e,t,n){return t=po(t),n===a?(n=t,t=0):n=po(n),function(e,t,a){return e>=ga(t,a)&&e<ya(t,a)}(e=mo(e),t,n)},Ba.invoke=Co,Ba.isArguments=Us,Ba.isArray=js,Ba.isArrayBuffer=zs,Ba.isArrayLike=Ws,Ba.isArrayLikeObject=Ys,Ba.isBoolean=function(e){return!0===e||!1===e||Qs(e)&&Sn(e)==y},Ba.isBuffer=Hs,Ba.isDate=Gs,Ba.isElement=function(e){return Qs(e)&&1===e.nodeType&&!ao(e)},Ba.isEmpty=function(e){if(null==e)return!0;if(Ws(e)&&(js(e)||"string"==typeof e||"function"==typeof e.splice||Hs(e)||oo(e)||Us(e)))return!e.length;var t=hr(e);if(t==w||t==T)return!e.size;if(Ar(e))return!Rn(e).length;for(var a in e)if(De.call(e,a))return!1;return!0},Ba.isEqual=function(e,t){return Vn(e,t)},Ba.isEqualWith=function(e,t,n){var i=(n="function"==typeof n?n:a)?n(e,t):a;return i===a?Vn(e,t,a,n):!!i},Ba.isError=qs,Ba.isFinite=function(e){return"number"==typeof e&&Pt(e)},Ba.isFunction=Zs,Ba.isInteger=Js,Ba.isLength=Ks,Ba.isMap=eo,Ba.isMatch=function(e,t){return e===t||En(e,t,ur(t))},Ba.isMatchWith=function(e,t,n){return n="function"==typeof n?n:a,En(e,t,ur(t),n)},Ba.isNaN=function(e){return to(e)&&e!=+e},Ba.isNative=function(e){if(wr(e))throw new Ae("Unsupported core-js use. Try https://npms.io/search?q=ponyfill.");return Fn(e)},Ba.isNil=function(e){return null==e},Ba.isNull=function(e){return null===e},Ba.isNumber=to,Ba.isObject=Xs,Ba.isObjectLike=Qs,Ba.isPlainObject=ao,Ba.isRegExp=no,Ba.isSafeInteger=function(e){return Js(e)&&e>=-9007199254740991&&e<=c},Ba.isSet=io,Ba.isString=ro,Ba.isSymbol=so,Ba.isTypedArray=oo,Ba.isUndefined=function(e){return e===a},Ba.isWeakMap=function(e){return Qs(e)&&hr(e)==C},Ba.isWeakSet=function(e){return Qs(e)&&"[object WeakSet]"==Sn(e)},Ba.join=function(e,t){return null==e?"":Yt.call(e,t)},Ba.kebabCase=zo,Ba.last=qr,Ba.lastIndexOf=function(e,t,n){var i=null==e?0:e.length;if(!i)return-1;var r=i;return n!==a&&(r=(r=ho(n))<0?ya(i+r,0):ga(r,i-1)),t==t?function(e,t,a){for(var n=a+1;n--;)if(e[n]===t)return n;return n}(e,t,r):Ot(e,jt,r,!0)},Ba.lowerCase=Wo,Ba.lowerFirst=Yo,Ba.lt=lo,Ba.lte=uo,Ba.max=function(e){return e&&e.length?fn(e,al,Nn):a},Ba.maxBy=function(e,t){return e&&e.length?fn(e,or(t,2),Nn):a},Ba.mean=function(e){return zt(e,al)},Ba.meanBy=function(e,t){return zt(e,or(t,2))},Ba.min=function(e){return e&&e.length?fn(e,al,Pn):a},Ba.minBy=function(e,t){return e&&e.length?fn(e,or(t,2),Pn):a},Ba.stubArray=fl,Ba.stubFalse=ml,Ba.stubObject=function(){return{}},Ba.stubString=function(){return""},Ba.stubTrue=function(){return!0},Ba.multiply=wl,Ba.nth=function(e,t){return e&&e.length?jn(e,ho(t)):a},Ba.noConflict=function(){return pt._===this&&(pt._=Oe),this},Ba.noop=ol,Ba.now=Ss,Ba.pad=function(e,t,a){e=go(e);var n=(t=ho(t))?ca(e):0;if(!t||n>=t)return e;var i=(t-n)/2;return zi(ft(i),a)+e+zi(ht(i),a)},Ba.padEnd=function(e,t,a){e=go(e);var n=(t=ho(t))?ca(e):0;return t&&n<t?e+zi(t-n,a):e},Ba.padStart=function(e,t,a){e=go(e);var n=(t=ho(t))?ca(e):0;return t&&n<t?zi(t-n,a)+e:e},Ba.parseInt=function(e,t,a){return a||null==t?t=0:t&&(t=+t),va(go(e).replace(ne,""),t||0)},Ba.random=function(e,t,n){if(n&&"boolean"!=typeof n&&br(e,t,n)&&(t=n=a),n===a&&("boolean"==typeof t?(n=t,t=a):"boolean"==typeof e&&(n=e,e=a)),e===a&&t===a?(e=0,t=1):(e=po(e),t===a?(t=e,e=0):t=po(t)),e>t){var i=e;e=t,t=i}if(n||e%1||t%1){var r=_a();return ga(e+r*(t-e+lt("1e-"+((r+"").length-1))),t)}return Gn(e,t)},Ba.reduce=function(e,t,a){var n=js(e)?Dt:Ht,i=arguments.length<3;return n(e,or(t,4),a,i,dn)},Ba.reduceRight=function(e,t,a){var n=js(e)?Rt:Ht,i=arguments.length<3;return n(e,or(t,4),a,i,pn)},Ba.repeat=function(e,t,n){return t=(n?br(e,t,n):t===a)?1:ho(t),qn(go(e),t)},Ba.replace=function(){var e=arguments,t=go(e[0]);return e.length<3?t:t.replace(e[1],e[2])},Ba.result=function(e,t,n){var i=-1,r=(t=bi(t,e)).length;for(r||(r=1,e=a);++i<r;){var s=null==e?a:e[Rr(t[i])];s===a&&(i=r,s=n),e=Zs(s)?s.call(e):s}return e},Ba.round=Al,Ba.runInContext=e,Ba.sample=function(e){return(js(e)?Za:Jn)(e)},Ba.size=function(e){if(null==e)return 0;if(Ws(e))return ro(e)?ca(e):e.length;var t=hr(e);return t==w||t==T?e.size:Rn(e).length},Ba.snakeCase=Ho,Ba.some=function(e,t,n){var i=js(e)?Lt:ni;return n&&br(e,t,n)&&(t=a),i(e,or(t,3))},Ba.sortedIndex=function(e,t){return ii(e,t)},Ba.sortedIndexBy=function(e,t,a){return ri(e,t,or(a,2))},Ba.sortedIndexOf=function(e,t){var a=null==e?0:e.length;if(a){var n=ii(e,t);if(n<a&&Bs(e[n],t))return n}return-1},Ba.sortedLastIndex=function(e,t){return ii(e,t,!0)},Ba.sortedLastIndexBy=function(e,t,a){return ri(e,t,or(a,2),!0)},Ba.sortedLastIndexOf=function(e,t){if(null!=e&&e.length){var a=ii(e,t,!0)-1;if(Bs(e[a],t))return a}return-1},Ba.startCase=Go,Ba.startsWith=function(e,t,a){return e=go(e),a=null==a?0:sn(ho(a),0,e.length),t=li(t),e.slice(a,a+t.length)==t},Ba.subtract=kl,Ba.sum=function(e){return e&&e.length?Gt(e,al):0},Ba.sumBy=function(e,t){return e&&e.length?Gt(e,or(t,2)):0},Ba.template=function(e,t,n){var i=Ba.templateSettings;n&&br(e,t,n)&&(t=a),e=go(e),t=_o({},t,i,Ki);var r,s,o=_o({},t.imports,i.imports,Ki),l=Io(o),u=Kt(o,l),c=0,d=t.interpolate||ve,p="__p += '",h=Te((t.escape||ve).source+"|"+d.source+"|"+(d===K?de:ve).source+"|"+(t.evaluate||ve).source+"|$","g"),f="//# sourceURL="+(De.call(t,"sourceURL")?(t.sourceURL+"").replace(/\s/g," "):"lodash.templateSources["+ ++it+"]")+"\n";e.replace(h,(function(t,a,n,i,o,l){return n||(n=i),p+=e.slice(c,l).replace(_e,na),a&&(r=!0,p+="' +\n__e("+a+") +\n'"),o&&(s=!0,p+="';\n"+o+";\n__p += '"),n&&(p+="' +\n((__t = ("+n+")) == null ? '' : __t) +\n'"),c=l+t.length,t})),p+="';\n";var m=De.call(t,"variable")&&t.variable;if(m){if(ue.test(m))throw new Ae("Invalid `variable` option passed into `_.template`")}else p="with (obj) {\n"+p+"\n}\n";p=(s?p.replace(j,""):p).replace(z,"$1").replace(W,"$1;"),p="function("+(m||"obj")+") {\n"+(m?"":"obj || (obj = {});\n")+"var __t, __p = ''"+(r?", __e = _.escape":"")+(s?", __j = Array.prototype.join;\nfunction print() { __p += __j.call(arguments, '') }\n":";\n")+p+"return __p\n}";var y=Ko((function(){return ke(l,f+"return "+p).apply(a,u)}));if(y.source=p,qs(y))throw y;return y},Ba.times=function(e,t){if((e=ho(e))<1||e>c)return[];var a=p,n=ga(e,p);t=or(t),e-=p;for(var i=qt(n,t);++a<e;)t(a);return i},Ba.toFinite=po,Ba.toInteger=ho,Ba.toLength=fo,Ba.toLower=function(e){return go(e).toLowerCase()},Ba.toNumber=mo,Ba.toSafeInteger=function(e){return e?sn(ho(e),-9007199254740991,c):0===e?e:0},Ba.toString=go,Ba.toUpper=function(e){return go(e).toUpperCase()},Ba.trim=function(e,t,n){if((e=go(e))&&(n||t===a))return Zt(e);if(!e||!(t=li(t)))return e;var i=da(e),r=da(t);return _i(i,Qt(i,r),ea(i,r)+1).join("")},Ba.trimEnd=function(e,t,n){if((e=go(e))&&(n||t===a))return e.slice(0,pa(e)+1);if(!e||!(t=li(t)))return e;var i=da(e);return _i(i,0,ea(i,da(t))+1).join("")},Ba.trimStart=function(e,t,n){if((e=go(e))&&(n||t===a))return e.replace(ne,"");if(!e||!(t=li(t)))return e;var i=da(e);return _i(i,Qt(i,da(t))).join("")},Ba.truncate=function(e,t){var n=30,i="...";if(Xs(t)){var r="separator"in t?t.separator:r;n="length"in t?ho(t.length):n,i="omission"in t?li(t.omission):i}var s=(e=go(e)).length;if(ia(e)){var o=da(e);s=o.length}if(n>=s)return e;var l=n-ca(i);if(l<1)return i;var u=o?_i(o,0,l).join(""):e.slice(0,l);if(r===a)return u+i;if(o&&(l+=u.length-l),no(r)){if(e.slice(l).search(r)){var c,d=u;for(r.global||(r=Te(r.source,go(pe.exec(r))+"g")),r.lastIndex=0;c=r.exec(d);)var p=c.index;u=u.slice(0,p===a?l:p)}}else if(e.indexOf(li(r),l)!=l){var h=u.lastIndexOf(r);h>-1&&(u=u.slice(0,h))}return u+i},Ba.unescape=function(e){return(e=go(e))&&G.test(e)?e.replace(Y,ha):e},Ba.uniqueId=function(e){var t=++Re;return go(e)+t},Ba.upperCase=qo,Ba.upperFirst=Zo,Ba.each=ys,Ba.eachRight=gs,Ba.first=Wr,sl(Ba,(yl={},vn(Ba,(function(e,t){De.call(Ba.prototype,t)||(yl[t]=e)})),yl),{chain:!1}),Ba.VERSION="4.17.21",Tt(["bind","bindKey","curry","curryRight","partial","partialRight"],(function(e){Ba[e].placeholder=Ba})),Tt(["drop","take"],(function(e,t){ja.prototype[e]=function(n){n=n===a?1:ya(ho(n),0);var i=this.__filtered__&&!t?new ja(this):this.clone();return i.__filtered__?i.__takeCount__=ga(n,i.__takeCount__):i.__views__.push({size:ga(n,p),type:e+(i.__dir__<0?"Right":"")}),i},ja.prototype[e+"Right"]=function(t){return this.reverse()[e](t).reverse()}})),Tt(["filter","map","takeWhile"],(function(e,t){var a=t+1,n=1==a||3==a;ja.prototype[e]=function(e){var t=this.clone();return t.__iteratees__.push({iteratee:or(e,3),type:a}),t.__filtered__=t.__filtered__||n,t}})),Tt(["head","last"],(function(e,t){var a="take"+(t?"Right":"");ja.prototype[e]=function(){return this[a](1).value()[0]}})),Tt(["initial","tail"],(function(e,t){var a="drop"+(t?"":"Right");ja.prototype[e]=function(){return this.__filtered__?new ja(this):this[a](1)}})),ja.prototype.compact=function(){return this.filter(al)},ja.prototype.find=function(e){return this.filter(e).head()},ja.prototype.findLast=function(e){return this.reverse().find(e)},ja.prototype.invokeMap=Zn((function(e,t){return"function"==typeof e?new ja(this):this.map((function(a){return Cn(a,e,t)}))})),ja.prototype.reject=function(e){return this.filter(Fs(or(e)))},ja.prototype.slice=function(e,t){e=ho(e);var n=this;return n.__filtered__&&(e>0||t<0)?new ja(n):(e<0?n=n.takeRight(-e):e&&(n=n.drop(e)),t!==a&&(n=(t=ho(t))<0?n.dropRight(-t):n.take(t-e)),n)},ja.prototype.takeRightWhile=function(e){return this.reverse().takeWhile(e).reverse()},ja.prototype.toArray=function(){return this.take(p)},vn(ja.prototype,(function(e,t){var n=/^(?:filter|find|map|reject)|While$/.test(t),i=/^(?:head|last)$/.test(t),r=Ba[i?"take"+("last"==t?"Right":""):t],s=i||/^find/.test(t);r&&(Ba.prototype[t]=function(){var t=this.__wrapped__,o=i?[1]:arguments,l=t instanceof ja,u=o[0],c=l||js(t),d=function(e){var t=r.apply(Ba,Ft([e],o));return i&&p?t[0]:t};c&&n&&"function"==typeof u&&1!=u.length&&(l=c=!1);var p=this.__chain__,h=!!this.__actions__.length,f=s&&!p,m=l&&!h;if(!s&&c){t=m?t:new ja(this);var y=e.apply(t,o);return y.__actions__.push({func:ds,args:[d],thisArg:a}),new Ua(y,p)}return f&&m?e.apply(this,o):(y=this.thru(d),f?i?y.value()[0]:y.value():y)})})),Tt(["pop","push","shift","sort","splice","unshift"],(function(e){var t=Ce[e],a=/^(?:push|sort|unshift)$/.test(e)?"tap":"thru",n=/^(?:pop|shift)$/.test(e);Ba.prototype[e]=function(){var e=arguments;if(n&&!this.__chain__){var i=this.value();return t.apply(js(i)?i:[],e)}return this[a]((function(a){return t.apply(js(a)?a:[],e)}))}})),vn(ja.prototype,(function(e,t){var a=Ba[t];if(a){var n=a.name+"";De.call(Ca,n)||(Ca[n]=[]),Ca[n].push({name:t,func:a})}})),Ca[Oi(a,2).name]=[{name:"wrapper",func:a}],ja.prototype.clone=function(){var e=new ja(this.__wrapped__);return e.__actions__=xi(this.__actions__),e.__dir__=this.__dir__,e.__filtered__=this.__filtered__,e.__iteratees__=xi(this.__iteratees__),e.__takeCount__=this.__takeCount__,e.__views__=xi(this.__views__),e},ja.prototype.reverse=function(){if(this.__filtered__){var e=new ja(this);e.__dir__=-1,e.__filtered__=!0}else(e=this.clone()).__dir__*=-1;return e},ja.prototype.value=function(){var e=this.__wrapped__.value(),t=this.__dir__,a=js(e),n=t<0,i=a?e.length:0,r=function(e,t,a){for(var n=-1,i=a.length;++n<i;){var r=a[n],s=r.size;switch(r.type){case"drop":e+=s;break;case"dropRight":t-=s;break;case"take":t=ga(t,e+s);break;case"takeRight":e=ya(e,t-s)}}return{start:e,end:t}}(0,i,this.__views__),s=r.start,o=r.end,l=o-s,u=n?o:s-1,c=this.__iteratees__,d=c.length,p=0,h=ga(l,this.__takeCount__);if(!a||!n&&i==l&&h==l)return hi(e,this.__actions__);var f=[];e:for(;l--&&p<h;){for(var m=-1,y=e[u+=t];++m<d;){var g=c[m],b=g.iteratee,v=g.type,_=b(y);if(2==v)y=_;else if(!_){if(1==v)continue e;break e}}f[p++]=y}return f},Ba.prototype.at=ps,Ba.prototype.chain=function(){return cs(this)},Ba.prototype.commit=function(){return new Ua(this.value(),this.__chain__)},Ba.prototype.next=function(){this.__values__===a&&(this.__values__=co(this.value()));var e=this.__index__>=this.__values__.length;return{done:e,value:e?a:this.__values__[this.__index__++]}},Ba.prototype.plant=function(e){for(var t,n=this;n instanceof $a;){var i=Pr(n);i.__index__=0,i.__values__=a,t?r.__wrapped__=i:t=i;var r=i;n=n.__wrapped__}return r.__wrapped__=e,t},Ba.prototype.reverse=function(){var e=this.__wrapped__;if(e instanceof ja){var t=e;return this.__actions__.length&&(t=new ja(this)),(t=t.reverse()).__actions__.push({func:ds,args:[Xr],thisArg:a}),new Ua(t,this.__chain__)}return this.thru(Xr)},Ba.prototype.toJSON=Ba.prototype.valueOf=Ba.prototype.value=function(){return hi(this.__wrapped__,this.__actions__)},Ba.prototype.first=Ba.prototype.head,Je&&(Ba.prototype[Je]=function(){return this}),Ba}();ft?((ft.exports=fa)._=fa,ht._=fa):pt._=fa}).call(G)}(H,H.exports)),H.exports);class Z extends ${name="";displayName="";type=void 0;info;preload=!0;loadingManagerRule="load";item;itemRepo;condition;conditionFields=[];conditionFieldNames=[];dependantFields=[];dependenciesInitialized=!1;linkableTypes=[];collapsed=!1;presets=[];datatype=null;defaultValue=null;minValue=null;maxValue=null;language=null;widget=null;length=null;labelType=null;blocks=[];connections=[];_id="";_internalValue;_internalOptions=[];_updateConditions=!0;_hidden=!1;get hidden(){return!(!this.condition||!this.dependenciesInitialized)&&(this._updateConditions&&(this._hidden=!this._calculateConditionBlock(this.condition),this._updateConditions=!1),this._hidden)}get id(){return this._id}get options(){return this._internalOptions}set options(e){this._internalOptions=e,this.updateConditions()}get value(){return this._internalValue}set value(e){this._internalValue=e,this._processDependencies()}constructor(e,t=void 0,a=void 0,n=void 0,i=void 0,r=void 0){super(i),e instanceof O?(this._id=e.id,this.restoreFromSnapshot(e)):(h.assert(e,"Field has no name!"),h.assert(a,"Field has no type!"),this._id=h.createFieldID(),this.name=e,this.displayName=t||e,this.type=a,this._internalValue=n,this.item=i,this.itemRepo=r)}updateConditions(){this.condition&&this.dependenciesInitialized&&(this._updateConditions=!0,u.$emit("field:hiddenChanged",this.id))}getId(){return this.id}resetValue(){this.value=this.defaultValue}makeIdsUnique(e=new Map,t=!1){if(e.has(this._id)||t){const t=h.createFieldID();e.set(this._id,t),this._id=t}else e.set(this._id,this._id);for(const a of this.blocks)a.makeIdsUnique(e,t);return e}transformNodeIds(e){for(const t of this.blocks)t.transformNodeIds(e);"Attribute"===this.type&&"Node"===this.datatype&&this.value&&e.has(this.value)&&(this.value=e.get(this.value))}findBlock(e){for(const t of this.blocks){const a=t.findBlock(e);if(a)return a}return null}clone(e=void 0,t=!1){let a=new Z(this.name,this.displayName,this.type);void 0===this._internalValue?a._internalValue=void 0:null===this._internalValue?a._internalValue=null:"Link"===this.type?a._internalValue=this._internalValue:a._internalValue=q.cloneDeep(this._internalValue),a.info=this.info,a.preload=this.preload,a.loadingManagerRule=this.loadingManagerRule,a.item=this.item,a.ownerItem=this.ownerItem,a.itemRepo=this.itemRepo,a.condition=this.condition,a.conditionFields=this.conditionFields,a.conditionFieldNames=this.conditionFieldNames,a.dependantFields=this.dependantFields,a.collapsed=this.collapsed,a.presets=this.presets,a.labelType=this.labelType,a.datatype=this.datatype,a.defaultValue=this.defaultValue,a.minValue=this.minValue,a.maxValue=this.maxValue,a.options=this.options,a.language=this.language,a.widget=this.widget,a.length=this.length,a.linkableTypes=this.linkableTypes;for(const n of this.blocks){let i=n.clone(e,!0,{},t);e&&(i=g.instance.proxyBlock(i,e)),a.blocks.push(i)}for(const t of this.connections){let n=t.clone();e&&(n=g.instance.proxyConnection(n,e)),a.connections.push(n)}return a}_processDependencies(){for(const e of this.dependantFields)e.updateConditions()}_getConditionField(e){for(const t of this.conditionFields)if(t&&t.name===e)return t;return null}_calculateConditionField(e,t){if(!e.startsWith("$")){let a;e.includes(".")?(a=e.split("."),e=a.splice(0,1)[0]):a=[];let n=e.endsWith("?");n&&(e=e.substring(0,e.length-1));const i=this._getConditionField(e);if(!i)return n||console.error("Field to resolve condition not found: "+e),!1;let r=i.value;for(let t=0;t<a.length;t++){if(!r)return console.error(`Field path ${a.join(".")} not found in field ${e}!`),!1;r=r[a[t]]}return"object"==typeof t?void 0!==t.$isset?t.$isset===!!r:void 0!==t.$not?t.$not!==r:(console.error("Condition value cannot be interpreted: ",t,this),!1):i.value==t}switch(e){case"$isroot":return this.item._id===this.itemRepo.rootItemId===t;case"$parenttype":return console.log("$parenttype is not yet implemented!",this),!1;case"$optionsexist":return(Array.isArray(this.options)&&this.options.length>0)===t;case"$featureenabled":return this.itemRepo.apiClient.isFeatureEnabled(t);default:return console.error("Computed value unknown: "+e,this),!1}}_calculateConditionBlock(e){for(const t in e)if(e.hasOwnProperty(t)){const a=e[t];if("$or"===t)if(Array.isArray(a)){let e=!1;for(const t of a)if(this._calculateConditionBlock(t)){e=!0;break}if(!e)return!1}else console.error("Condition contains $or but its value is not an array!");else if("$not"===t){if("object"!=typeof a)console.error("When using the $not operator, the value needs to be an object");else if(this._calculateConditionBlock(a))return!1}else if(!this._calculateConditionField(t,a))return!1}return!0}refreshFieldDependencies(){for(const e of this.blocks)e.refreshFieldDependencies()}refreshDependantFields(e,t){const a=[];if(this.condition)for(let t of this.conditionFieldNames){const n=t.endsWith("?");n&&(t=t.substring(0,t.length-1));const i=e.get(t);i?a.push(i):n||console.warn("Condition field not found: "+t)}this.conditionFields=a,this.dependantFields=t||[],this.dependenciesInitialized=!0}setCondition(e){e?"object"==typeof e?this.condition=e:(console.error("Condition must be an object if set",e),this.condition=null):this.condition=null,this.conditionFieldNames=[],this.condition&&this._scanConditions(this.condition)}_scanConditions(e){for(let t in e)if(e.hasOwnProperty(t)){const a=e[t];if(Array.isArray(a))for(const e of a)this._scanConditions(e);else t.startsWith("$")||(t.includes(".")&&(t=t.split(".")[0]),this.conditionFieldNames.includes(t)||this.conditionFieldNames.push(t))}}forEachField(e){if(e(this),this.blocks)for(const t of this.blocks)t.forEachField(e)}setInfo(e){this.info=e}setPreload(e){this.preload=e}setLoadingManagerRule(e){this.loadingManagerRule=e}setLinkableTypes(e){this.linkableTypes=e}setDefaultValue(e){this.defaultValue=e,void 0!==this._internalValue&&null!==this._internalValue||(this._internalValue=e)}setMinValue(e){this.minValue=e}setMaxValue(e){this.maxValue=e}setOptions(e){this.options=e}setDatatype(e){this.datatype=e}setLanguage(e){this.language=e}setLength(e){this.length=e}setWidget(e){this.widget=e}setBlocks(e){this.blocks=e}setConnections(e){this.connections=e}setCollapsed(e){this.collapsed=!!e}setPresets(e){this.presets=e||[]}setLabelType(e){this.labelType=e||"info"}createSnapshot(e=!1){h.assert(this.id,"Field has no ID. Cannot create snapshot");const t=[];for(const a of this.blocks)t.push(a.createSnapshot(e));const a=[];for(const e of this.connections)a.push(e.createSnapshot());return new O(this.id,"field",{name:this.name,displayName:this.displayName,type:this.type,value:this._internalValue,preload:this.preload,info:this.info,loadingManagerRule:this.loadingManagerRule,item:this.item,itemRepo:this.itemRepo,condition:this.condition,conditionFields:this.conditionFields,conditionFieldNames:this.conditionFieldNames,dependantFields:this.dependantFields,linkableTypes:this.linkableTypes,collapsed:this.collapsed,presets:this.presets,datatype:this.datatype,defaultValue:this.defaultValue,minValue:this.minValue,maxValue:this.maxValue,options:this.options,language:this.language,widget:this.widget,length:this.length,labelType:this.labelType,blocks:t,connections:a})}restoreFromSnapshot(e){e.id===this.id?(this.name=e.data.name,this.displayName=e.data.displayName,this.type=e.data.type,this._internalValue=e.data.value,this.info=e.data.info,this.preload=e.data.preload,this.loadingManagerRule=e.data.loadingManagerRule,this.item=e.data.item,this.ownerItem=e.data.item,this.itemRepo=e.data.itemRepo,this.condition=e.data.condition,this.conditionFields=e.data.conditionFields,this.conditionFieldNames=e.data.conditionFieldNames,this.dependantFields=e.data.dependantFields,this.linkableTypes=e.data.linkableTypes,this.collapsed=e.data.collapsed,this.presets=e.data.presets,this.datatype=e.data.datatype,this.defaultValue=e.data.defaultValue,this.minValue=e.data.minValue,this.maxValue=e.data.maxValue,this.options=e.data.options,this.language=e.data.language,this.widget=e.data.widget,this.length=e.data.length,this.labelType=e.data.labelType,this.blocks=[],this.connections=[],this._rollbackArray(this.blocks,e.data.blocks,((e,t)=>g.instance.proxyBlock(new ae(e,t),this.ownerItem))),this._rollbackArray(this.connections,e.data.connections,((e,t)=>g.instance.proxyConnection(new U(e.data,t),this.ownerItem)))):console.error("Snapshot ID does not match! Cannot rollback!",this,e)}rollbackFromSnapshot(e){this.value=e.data.value,this._rollbackArray(this.blocks,e.data.blocks,((e,t)=>g.instance.proxyBlock(new ae(e,t),this.ownerItem))),this._rollbackArray(this.connections,e.data.connections,((e,t)=>g.instance.proxyConnection(new U(e.data,t),this.ownerItem)))}}class J extends ${id;name=void 0;displayName=void 0;value;type=void 0;datatype=void 0;linkableTypes=[];order=0;constructor(e=void 0,t=void 0,a=void 0){super(a),this.value=t,this.id=h.createItemOrBlockID(),this.name=e,this.displayName=e,this._updateDisplayName()}getId(){return this.id}setName(e){this.name=e,this._updateDisplayName()}setType(e){this.type=e}setOrder(e){this.order=e}clone(e=new Map){const t=new J;return t.ownerItem=this.ownerItem,t.value=e.get(this.value)??this.value,t.type=this.type,t.order=this.order,t.setName(this.name),t}clearDefinition(){this.type=void 0}setDefinition(e){const t=e.type.toLowerCase();switch(t){case"boolean":case"bool":this.type="Attribute",this.datatype="Boolean",this.value=void 0!==this.value?this._toBoolean(this.value):this._toBoolean(e.defaultValue);break;case"float":this.type="Attribute",this.datatype="Float",this.value=void 0!==this.value?Number(this.value):Number(e.defaultValue);break;case"int":this.type="Attribute",this.datatype="Integer",this.value=void 0!==this.value?parseInt(this.value):parseInt(e.defaultValue);break;case"string":this.type="Attribute",this.datatype="String",this.value=void 0!==this.value&&null!==this.value?this.value.toString():e.defaultValue?e.defaultValue.toString():"";break;case"vec2":this.type="Attribute",this.datatype="Vector2d";break;case"vec3":this.type="Attribute",this.datatype="Vector3d";break;case"vec4":this.type="Attribute",this.datatype="Vector4d";break;case"mat3":this.type="Attribute",this.datatype="Mat3";break;case"mat4":this.type="Attribute",this.datatype="Mat4";break;case"color":this.type="Attribute",this.datatype="Color";break;case"image":this.type="Link",this.linkableTypes=["Image"];break;default:console.error("Unknown script field type: "+t),this.type="Attribute",this.datatype="String",this.value=this.value?this.value.toString():e.defaultValue?e.defaultValue.toString():""}}_toBoolean(e){return null!=e&&(!0===e||!1===e?e:"false"!==e.toString().toLowerCase())}_updateDisplayName(){this.name?this.displayName=h.toUserFriendlyName(this.name):this.displayName=""}createSnapshot(){return new O(this.id,"customfield",{id:this.id,value:this.value})}rollbackFromSnapshot(e){this.value=e.data.value}}class K extends M{links;instanceId;isDirty=!1;fieldInstances;userFieldInstances;customFieldInstances;packageContent;packageType;public=!1;readOnly=!1;isPackaged=!1;isGenerated=!1;packageItem;isPreparedItem=!0;resultingAcl;userData={};constructor(e){if(super(e),this.instanceId=h.createItemOrBlockID(),this.links=[],Array.isArray(e.links))for(const t of e.links)this.links.push({to:t.to,usage:t.usage,stopRecursion:t.stopRecursion,item:t.item});this.fieldInstances=[],this.userFieldInstances=[],this.customFieldInstances=g.instance.proxyCustomFieldsArray([],this),this.public=!!e.public,this.packageContent=e.packageContent,this.packageType=e.packageType,this.packageItem=e.packageItem,this.readOnly=!!e.readOnly,this.isPackaged=!!e.isPackaged,this.isGenerated=!!e.isGenerated,this.resultingAcl=JSON.parse(JSON.stringify(e.resultingAcl||[]))}createCustomFieldInstances(e){function t(e,t){for(const a of e)if(a.name===t)return a;return null}for(const a of this.customFieldInstances)t(e,a.name)||a.clearDefinition();let a=0;for(const n of e){let e=t(this.customFieldInstances,n.name);e||(e=new J(n.name,n.defaultValue,this),this.addCustomField(e)),e.setOrder(a++),e.setDefinition(n)}this.customFieldInstances.sort((function(e,t){return e.order-t.order}))}addCustomField(e){this.customFieldInstances.push(g.instance.proxyCustomField(e,this))}markDirty(){this.isDirty||(this.isDirty=!0,u.$emit("itemRepo:itemBecameDirty",this._id))}makeIdsUnique(){const e=new Map;for(const t of this.fieldInstances)t.makeIdsUnique(e,!0);this.packageContent&&this.packageContent.makeIdsUnique()}clone(e=!1){let t=new K(this);const a=new Map;for(const n of this.fieldInstances){const i=n.clone(this,!0);e&&i.makeIdsUnique(a,!0),t.fieldInstances.push(i)}if(e)for(const e of t.fieldInstances)e.transformNodeIds(a);return t}findBlock(e){for(const t of this.fieldInstances){const a=t.findBlock(e);if(a)return a}return null}refreshFieldDependencies(){te.refreshFieldDependencies(this.fieldInstances);for(const e of this.fieldInstances)e.refreshFieldDependencies()}forEachItem(e){if(e(this),this.links)for(const t of this.links)t.item&&t.item.forEachItem(e)}forEachFieldInstance(e){if(this.fieldInstances)for(const t of this.fieldInstances)t.forEachField(e)}toString(){return`PreparedItem(${JSON.stringify({_id:this._id,name:this.name,type:this.type})})`}}function X(e,t,a){if(e.admin||e.superadmin)return!0;if(!Array.isArray(t))return!0;for(const n of t)if(n.can.includes(a)){if(!n.user&&!n.group)return!0;if(n.user&&n.user===e._id)return!0;if(n.group)for(const t of e.groups){if("object"==typeof t&&t._id===n.group)return!0;if(t===n.group)return!0}}}class Q{fields;constructor(e){if(!Array.isArray(e))throw"Template fields need to be an array!";this.fields=e}clone(){const e=[];for(const t of this.fields)e.push(t.clone());return new Q(e)}specialize(e){for(const t of this.fields)void 0!==e[t.name]&&(t.defaultValue=e[t.name]);return this}instantiate(e){if(e)return this.fields;{const e=[];for(const t of this.fields)e.push(t.clone());return e}}}class ee{templates=new Map;templatesByField=new Map;static _instance;static get instance(){return this._instance||(this._instance=new this)}_existsTemplate(e,t){for(const a of e)if(a.typeName===t)return!0;return!1}addTemplates(e,t,a){const n=`${e}_${t}`,i=this.templatesByField.get(n)||[];for(const e of a){const t=`${n}_${e.typeName}`;this.templates.set(t,e),this._existsTemplate(i,e.typeName)||i.push(e)}this.templatesByField.set(n,i)}getTemplate(e,t,a){const n=`${e}_${t}_${a}`;return this.templates.get(n)}getTemplates(e,t){const a=`${e}_${t}`;return this.templatesByField.get(a)||[]}}class te{itemRepo;itemFetcher;constructor(e){this.itemRepo=e,this.itemFetcher=function(e){return e}}setItemFetcher(e){this.itemFetcher=e}setFieldsFromDatatypes(e){const t=C(e.type,!0);e.fields=t?.fields||[],e.fieldSets=t?.fieldSets||[]}async prepare(e){return e instanceof K?(console.warn("Trying to prepare an already prepared item: ",e),e):this.itemRepo.undoManager.ignore((async()=>{const t=new K(e);return this.setFieldsFromDatatypes(t),t.fieldInstances=await this.createFieldInstances(t,t.fields,t.attributes,"","attributes",!1),t.userFieldInstances=await this.createFieldInstances(t,t.userFields,t.userAttributes,"","userAttributes",!1),t.customFieldInstances=await this.createCustomFieldInstances(t,t.userAttributes,"_"),t.allowConversation=!!t.allowConversation,t.packageContent&&(t.packageContent.name=t.name,await this.itemRepo.traverseItems((e=>{e.readOnly=!0,e.isPackaged=!0,e.packageItem=t}),t.packageContent)),t.packageItem?(t.readOnly=!0,t.isPackaged=!0):(t.isPackaged=!1,t.resultingAcl&&t.resultingAcl.length>0?t.readOnly=!X(await this.itemRepo.apiClient.me(!0),t.resultingAcl,"write"):t.readOnly=!0),t}))}async createCustomFieldInstances(e,t,a=""){if(!e)throw new w("createCustomFieldInstances(): Item cannot be null!");if(!t)throw new w("createCustomFieldInstances(): attributes cannot be null!");const n=[];for(const i in t)if(!a.length||i.startsWith(a)){const r=i.substring(a.length);let s=new J(r,t[i],e);s.setType("Attribute"),n.push(g.instance.proxyCustomField(s,e))}if(e.links)for(const t of e.links)if(!a.length||t.usage.startsWith(a)){const i=t.usage.substring(a.length);let r,{id:s,linkItem:o,stopRecursion:l}=await this.fetchLinkValue(e,t.usage);o?r=o:l&&(r=s);let u=new J(i,r,e);u.setType("Link"),n.push(g.instance.proxyCustomField(u,e))}return n}async createFieldInstances(e,t,a,n,i,r=!1){if(!e)throw new w("createFieldInstances(): Item cannot be null!");if(!t)throw new w("createFieldInstances(): Fields cannot be null!");const s=[],o=n.length?`${n}->`:n;for(let a=0;a<t.length;a++){const n=t[a];if("FieldSet"===n.type){const i=this.getFieldSet(e,n.name);i?(t.splice(a,1,...structuredClone(i.fields)),a+=i.fields.length-1):console.error("Fieldset not found: "+n.name)}}for(const n of t)switch(n.type){case"Separator":{const t=new Z("Separator",n.label,"Separator",null,e,this.itemRepo);t.setInfo(n.info),t.setCondition(n.if),t.setCollapsed(n.collapsed),t.setPresets(n.presets),s.push(t);break}case"Label":{const t=new Z("Label","","Label",n.text,e,this.itemRepo);t.setLabelType(n.labelType),t.setCondition(n.if),s.push(t);break}case"Link":{let t;if(!r){let{id:a,linkItem:i,stopRecursion:r}=await this.fetchLinkValue(e,n.usageAs);i?t=i:r&&(t=a)}let a=new Z(n.usageAs,n.displayName,n.type,t,e,this.itemRepo);a.setInfo(n.info),a.setCondition(n.if),a.setLinkableTypes(n.linkableTypes),void 0!==n.preload&&a.setPreload(n.preload),void 0!==n.loadingManager&&a.setLoadingManagerRule(n.loadingManager),s.push(g.instance.proxyItemField(a,e));break}case"Tree":{const t=`${o}${n.name}`,r=[];for(const s of n.childTypes){const n=new Q(await this.createFieldInstances(e,s.fields,a,t,i,!0));r.push({typeName:s.typeName,displayName:s.displayName||s.typeName,template:n,inputs:[],outputs:[]})}r.sort((function(e,t){return e.displayName.localeCompare(t.displayName)})),ee.instance.addTemplates(e.type,n.name,r);const l=new ae(void 0,void 0,"","Root",void 0,e),u=await this.readBlocks(e,l,n.name,t,a,!0,!0,"Tree");l.blocks=g.instance.proxyBlockArray(u,l,e);let c=new Z(n.name,n.displayName,n.type,null,e,this.itemRepo);c.setInfo(n.info),c.setCondition(n.if),c.setBlocks([l]),s.push(c);break}case"List":{const t=`${o}${n.name}`,r=new Q(await this.createFieldInstances(e,n.fields,a,t,i,!0)),l=[{typeName:"Entry",displayName:n.elementName,template:r,inputs:[],outputs:[]}];ee.instance.addTemplates(e.type,n.name,l);let u=new Z(n.name,n.displayName,n.type,null,e,this.itemRepo);const c=await this.readBlocks(e,void 0,n.name,t,a,!0,!0,"List"),d=g.instance.proxyListArray(c,u,e);u.setInfo(n.info),u.setCondition(n.if),u.setBlocks(d),s.push(u);break}case"NodeGraph":{const t=`${o}${n.name}`,r=[];for(const s of n.childTypes){const n=new Q(await this.createFieldInstances(e,s.fields,a,t,i,!0));r.push({typeName:s.typeName,displayName:s.displayName||s.typeName,template:n,inputs:s.inputs||[],outputs:s.outputs||[]})}r.sort((function(e,t){return e.displayName.localeCompare(t.displayName)})),ee.instance.addTemplates(e.type,n.name,r);let l=await this.readBlocks(e,void 0,n.name,t,a,!1,!1,"NodeGraph"),u=this.readConnections(e,t,a),c=new Z(n.name,n.displayName,n.type,null,e,this.itemRepo);c.setInfo(n.info),c.setCondition(n.if),c.setBlocks(g.instance.proxyGraphBlockArray(l,e)),c.setConnections(g.instance.proxyConnectionArray(u,e)),s.push(c);break}case"Attribute":{let t;r||(t=e[i]?e[i][n.name]:void 0,void 0===t&&(t=n.defaultValue));let a=new Z(n.name,n.displayName,n.type,t,e,this.itemRepo);a.setInfo(n.info),a.setCondition(n.if),a.setDefaultValue(n.defaultValue),a.setMinValue(n.minValue),a.setMaxValue(n.maxValue),a.setOptions(n.options),a.setDatatype(n.datatype),a.setLanguage(n.language),a.setWidget(n.widget),a.setLength(n.length),s.push(g.instance.proxyItemField(a,e));break}}return s}getFieldSet(e,t){if(Array.isArray(e.fieldSets))for(const a of e.fieldSets)if(a.name===t)return a;return null}async fetchLinkValue(e,t){if(!e)throw new w("fetchLinkValue(): Item cannot be null!");for(const a of e.links)if(a.usage===t)return{id:a.to,linkItem:a.item?await this.itemFetcher(a.item):null,stopRecursion:a.stopRecursion};return{id:null,linkItem:null}}async readBlocks(e,t,a,n,i,r,s,o){if(!e)throw new w("readBlocks(): Item cannot be null!");const l=[];let u=0;for(;;){const c=`${n}[${u}]`;if(!this.existsBlockNamespace(e,i,c))break;{const n=`${c}#id`,u=e.attributes[n],d=`${c}#type`;let p,h,f=e.attributes[d];switch(o){case"NodeGraph":{const t=`${c}#posx`,a=`${c}#posy`;p=e.attributes[t]||0,h=e.attributes[a]||0;break}case"List":r=!1,f="Entry"}const m=ee.instance.getTemplate(e.packageType||e.type,a,f);if(m){const n=m.typeName,d=m.displayName,f=new ae(u,t,n,n,d,e),y=await this.createFields(f,e,m.template,c,"NodeGraph"===o,i);if(f.setFields(y),"NodeGraph"===o&&(f.setPosition(p,h),f.setInputs(m.inputs),f.setOutputs(m.outputs)),r){const t=await this.readBlocks(e,f,a,c,i,r,s,o);f.blocks=g.instance.proxyBlockArray(t,f,e)}if(s){const t=await this.readScripts(e,f,c,i);f.scripts=g.instance.proxyScriptArray(t,f,e)}"NodeGraph"===o?l.push(g.instance.proxyGraphBlock(f,e)):l.push(g.instance.proxyBlock(f,e))}else console.error(`Block template not found: ${a}_${f}`)}u++}return l}async readScripts(e,t,a,n){if(!e)throw new w("readScripts(): Item cannot be null!");const i=[];let r=0;for(;;){const s=`${a}#scripts[${r}]`;if(!this.existsScriptNamespace(e,n,s))break;{const a=n[`${s}#id`],r=`${s}#item`,o=`${s}->`,l=o.length;let{linkItem:u}=await this.fetchLinkValue(e,r);const c=new W(a,t,e,u);i.push(c);for(const t in n)if(n.hasOwnProperty(t)&&t.startsWith(o)){const a=n[t],i=t.substring(l),r=new j(c,i,a,e);c.addField(r)}}r++}return i}existsScriptNamespace(e,t,a){if(!e)throw new w("existsScriptNamespace(): Item cannot be null!");return"Script"===t[`${a}#usage`]}readConnections(e,t,a){const n=[];let i=0;for(;;){const r=a[`${t}#connection[${i++}]`];if(!r)break;n.push(new U(r,e))}return n}existsBlockNamespace(e,t,a){if(!e)throw new w("existsBlockNamespace(): Item cannot be null!");const n=t[`${a}#usage`];if(n)return"Block"===n;for(const e in t)if(t.hasOwnProperty(e)&&e.startsWith(a))return!0;for(const t of e.links)if(t.usage.startsWith(a))return!0;return!1}async createFields(e,t,a,n,i,r,s=!1){let o=a.instantiate(s),l=[];for(const a of o)if(a.name){const s=`${n}->${a.name}`;switch(a.type){case"Link":if(n){let{id:e,linkItem:n,stopRecursion:i}=await this.fetchLinkValue(t,s);a.value=n||(i?e:null)}else a.value=a.defaultValue;break;case"List":{const e=await this.readBlocks(t,void 0,a.name,s,r,!0,!0,"List"),n=g.instance.proxyListArray(e,a,t);a.setBlocks(n);break}case"Attribute":n?(a.value=t.attributes[s],void 0===a.value&&(a.value=a.defaultValue)):a.value=a.defaultValue}i?l.push(g.instance.proxyGraphBlockField(a,e,t)):l.push(g.instance.proxyBlockField(a,e,t))}return l}static refreshFieldDependencies(e){const t=new Map,a=new Map;for(const a of e)t.set(a.name,a);for(const n of e)if(Array.isArray(n.conditionFieldNames))for(const e of n.conditionFieldNames){const i=t.get(e);if(i){const e=a.get(i);e?e.push(n):a.set(i,[n])}}for(const n of e)n.refreshDependantFields(t,a.get(n))}}class ae extends ${id="";parent=void 0;type=void 0;name="";displayName="";fields=[];blocks=[];isSelected=!1;isExpanded=!0;scripts=[];inputs=[];outputs=[];posX=0;posY=0;constructor(e=void 0,t=void 0,a=void 0,n=void 0,i=void 0,r=void 0){super(r),e instanceof O?this.restoreFromSnapshot(e,t):(this.id=e||h.createItemOrBlockID(),this.parent=t,this.type=a,this.name=n||this.type||"",this.displayName=i||this.name)}getId(){return this.id}getPositionInParent(){if(this.parent){let e=0;for(const t of this.parent.blocks){if(t.id===this.id)return e;e++}}return-1}refreshFieldDependencies(){te.refreshFieldDependencies(this.fields);for(const e of this.fields)e.refreshFieldDependencies();for(const e of this.blocks)e.refreshFieldDependencies()}resetFieldValues(e=!1){for(const e of this.fields)e.resetValue();if(e)for(const t of this.blocks)t.resetFieldValues(e)}makeIdsUnique(e=new Map,t=!1){if(e.has(this.id)||t){const t=h.createItemOrBlockID();e.set(this.id,t),this.id=t}else e.set(this.id,this.id);for(const a of this.fields)a.makeIdsUnique(e,t);for(const a of this.blocks)a.makeIdsUnique(e,t);for(const a of this.scripts)a.makeIdsUnique(e,t);return e}transformNodeIds(e){for(const t of this.fields)t.transformNodeIds(e);for(const t of this.blocks)t.transformNodeIds(e);for(const t of this.scripts)t.transformNodeIds(e)}clone(e,t=!0,a={},n=!1){const i=new ae;n&&(i.id=this.id),i.ownerItem=this.ownerItem,i.parent=this.parent,i.type=this.type,i.name=this.name,i.displayName=this.displayName,i.isSelected=!1,i.isExpanded=!0,i.inputs=this.inputs,i.outputs=this.outputs,i.posX=0,i.posY=0;for(const t of this.fields){let r=t.clone(e,n);void 0!==a[t.name]&&(r.value=a[t.name]),e&&(r=g.instance.proxyBlockField(r,i,e)),i.fields.push(r)}if(e&&(i.scripts=g.instance.proxyScriptArray(i.scripts,i,e)),t)for(const e of this.scripts){const t=e.clone();i.scripts.push(t)}const r=i.blocks;e&&(i.blocks=g.instance.proxyBlockArray(r,i,e));for(const a of this.blocks){let s=a.clone(e,t,{},n);s.parent=i,e&&(s=g.instance.proxyBlock(s,e)),r.push(s)}return i}getDescendantBlocks(e=[]){const t=this.blocks;return e.push(...t),t.forEach((t=>t.getDescendantBlocks(e))),e}setFields(e){this.fields=e}setInputs(e){this.inputs=e}setOutputs(e){this.outputs=e}setPosition(e,t){this.posX=e,this.posY=t}setSelected(e){this.isSelected=e}setExpanded(e){this.isExpanded=e}getRoot(){return this.parent?this.parent.getRoot():this}forEachField(e){if(this.fields)for(const t of this.fields)t.forEachField(e);if(this.blocks)for(const t of this.blocks)t.forEachField(e)}findField(e){for(const t of this.fields)if(t.name===e)return t;return null}findBlock(e){if(this.id===e)return this;for(const t of this.blocks){const a=t.findBlock(e);if(a)return a}return null}removeBlock(e){this.blocks.removeObject(e)}addBlock(e,t){this.blocks.includes(e)||(void 0===t?this.blocks.push(e):this.blocks.splice(t,0,e))}moveBlock(e,t){e.parent.blocks.moveObjectToArray(e,e.parent.blocks,t)}moveToPosition(e){this.parent.moveBlock(this,e)}moveBlockToParent(e,t){this.parent.blocks.moveObjectToArray(this,e.blocks,t),this.parent=e}moveToParent(e,t){if(this.findBlock(e))return void console.error("Cannot move block to a parent that is a child.");const a=this.getRoot();if(!a)return void console.error("Cannot find root block!");const n=a.findBlock(e);n?this.parent!==n?this.moveBlockToParent(n,t):console.warn(`Node is already in parent ${e}`):console.error(`Cannot find the new parent block: ${e}`)}getField(e){for(const t of this.fields)if(t.name===e)return t;return null}hasTag(e){const t=this.getField("Tags");return!(!t||!Array.isArray(t.value))&&t.value.includes(e)}hasOneTag(e){const t=this.getField("Tags");if(t&&Array.isArray(t.value))for(const a of e)if(t.value.includes(a))return!0;return!1}getNameFieldValue(){const e=this.getField("Name");return e?e.value:null}getActiveFieldValue(){const e=this.getField("Active");return!e||e.value}createSnapshot(e=!1){const t=[];for(const a of this.fields)a.createSnapshot&&t.push(a.createSnapshot(e));const a=[];if(!e)for(const t of this.blocks)a.push(t.createSnapshot(e));const n=[];for(const e of this.scripts)n.push(e.createSnapshot());return new O(this.id,"block",{id:this.id,ownerItem:this.ownerItem,type:this.type,name:this.name,displayName:this.displayName,fields:t,blocks:a,isExpanded:this.isExpanded,scripts:n,inputs:this.inputs,outputs:this.outputs,posX:this.posX,posY:this.posY})}restoreFromSnapshot(e,t){this.id=e.data.id,this.parent=t,this.type=e.data.type,this.ownerItem=e.data.ownerItem,this.name=e.data.name,this.displayName=e.data.displayName,this.isSelected=!1,this.isExpanded=e.data.isExpanded,this.inputs=e.data.inputs,this.outputs=e.data.outputs,this.posX=e.data.posX,this.posY=e.data.posY;const a=[];this._rollbackArray(a,e.data.fields,(e=>g.instance.proxyBlockField(new Z(e),this,this.ownerItem))),this.fields=a;const n=[];this._rollbackArray(n,e.data.blocks,((e,t)=>g.instance.proxyBlock(new ae(e,t),this.ownerItem))),this.blocks=g.instance.proxyBlockArray(n,this,this.ownerItem);const i=[];this._rollbackArray(i,e.data.scripts,((e,t)=>new W(e,t,this.ownerItem))),this.scripts=g.instance.proxyScriptArray(i,this,this.ownerItem)}rollbackFromSnapshot(e,t=!1){this._rollbackArray(this.fields,e.data.fields,(e=>g.instance.proxyBlockField(new Z(e),this,this.ownerItem))),this._rollbackArray(this.scripts,e.data.scripts,(e=>new W(e,this,this.ownerItem))),t||this._rollbackArray(this.blocks,e.data.blocks,((e,t)=>g.instance.proxyBlock(new ae(e,t),this.ownerItem)))}_getFieldByName(e,t){for(const a of t)if(a.id===e)return a;return null}}
12
12
  /*! pako 2.1.0 https://github.com/nodeca/pako @license (MIT AND Zlib) */function ne(e){let t=e.length;for(;--t>=0;)e[t]=0}const ie=256,re=286,se=30,oe=15,le=new Uint8Array([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0]),ue=new Uint8Array([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13]),ce=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7]),de=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),pe=new Array(576);ne(pe);const he=new Array(60);ne(he);const fe=new Array(512);ne(fe);const me=new Array(256);ne(me);const ye=new Array(29);ne(ye);const ge=new Array(se);function be(e,t,a,n,i){this.static_tree=e,this.extra_bits=t,this.extra_base=a,this.elems=n,this.max_length=i,this.has_stree=e&&e.length}let ve,_e,we;function Ae(e,t){this.dyn_tree=e,this.max_code=0,this.stat_desc=t}ne(ge);const ke=e=>e<256?fe[e]:fe[256+(e>>>7)],Se=(e,t)=>{e.pending_buf[e.pending++]=255&t,e.pending_buf[e.pending++]=t>>>8&255},Ne=(e,t,a)=>{e.bi_valid>16-a?(e.bi_buf|=t<<e.bi_valid&65535,Se(e,e.bi_buf),e.bi_buf=t>>16-e.bi_valid,e.bi_valid+=a-16):(e.bi_buf|=t<<e.bi_valid&65535,e.bi_valid+=a)},Te=(e,t,a)=>{Ne(e,a[2*t],a[2*t+1])},Me=(e,t)=>{let a=0;do{a|=1&e,e>>>=1,a<<=1}while(--t>0);return a>>>1},xe=(e,t,a)=>{const n=new Array(16);let i,r,s=0;for(i=1;i<=oe;i++)s=s+a[i-1]<<1,n[i]=s;for(r=0;r<=t;r++){let t=e[2*r+1];0!==t&&(e[2*r]=Me(n[t]++,t))}},Ce=e=>{let t;for(t=0;t<re;t++)e.dyn_ltree[2*t]=0;for(t=0;t<se;t++)e.dyn_dtree[2*t]=0;for(t=0;t<19;t++)e.bl_tree[2*t]=0;e.dyn_ltree[512]=1,e.opt_len=e.static_len=0,e.sym_next=e.matches=0},Ie=e=>{e.bi_valid>8?Se(e,e.bi_buf):e.bi_valid>0&&(e.pending_buf[e.pending++]=e.bi_buf),e.bi_buf=0,e.bi_valid=0},Ve=(e,t,a,n)=>{const i=2*t,r=2*a;return e[i]<e[r]||e[i]===e[r]&&n[t]<=n[a]},Ee=(e,t,a)=>{const n=e.heap[a];let i=a<<1;for(;i<=e.heap_len&&(i<e.heap_len&&Ve(t,e.heap[i+1],e.heap[i],e.depth)&&i++,!Ve(t,n,e.heap[i],e.depth));)e.heap[a]=e.heap[i],a=i,i<<=1;e.heap[a]=n},Fe=(e,t,a)=>{let n,i,r,s,o=0;if(0!==e.sym_next)do{n=255&e.pending_buf[e.sym_buf+o++],n+=(255&e.pending_buf[e.sym_buf+o++])<<8,i=e.pending_buf[e.sym_buf+o++],0===n?Te(e,i,t):(r=me[i],Te(e,r+ie+1,t),s=le[r],0!==s&&(i-=ye[r],Ne(e,i,s)),n--,r=ke(n),Te(e,r,a),s=ue[r],0!==s&&(n-=ge[r],Ne(e,n,s)))}while(o<e.sym_next);Te(e,256,t)},De=(e,t)=>{const a=t.dyn_tree,n=t.stat_desc.static_tree,i=t.stat_desc.has_stree,r=t.stat_desc.elems;let s,o,l,u=-1;for(e.heap_len=0,e.heap_max=573,s=0;s<r;s++)0!==a[2*s]?(e.heap[++e.heap_len]=u=s,e.depth[s]=0):a[2*s+1]=0;for(;e.heap_len<2;)l=e.heap[++e.heap_len]=u<2?++u:0,a[2*l]=1,e.depth[l]=0,e.opt_len--,i&&(e.static_len-=n[2*l+1]);for(t.max_code=u,s=e.heap_len>>1;s>=1;s--)Ee(e,a,s);l=r;do{s=e.heap[1],e.heap[1]=e.heap[e.heap_len--],Ee(e,a,1),o=e.heap[1],e.heap[--e.heap_max]=s,e.heap[--e.heap_max]=o,a[2*l]=a[2*s]+a[2*o],e.depth[l]=(e.depth[s]>=e.depth[o]?e.depth[s]:e.depth[o])+1,a[2*s+1]=a[2*o+1]=l,e.heap[1]=l++,Ee(e,a,1)}while(e.heap_len>=2);e.heap[--e.heap_max]=e.heap[1],((e,t)=>{const a=t.dyn_tree,n=t.max_code,i=t.stat_desc.static_tree,r=t.stat_desc.has_stree,s=t.stat_desc.extra_bits,o=t.stat_desc.extra_base,l=t.stat_desc.max_length;let u,c,d,p,h,f,m=0;for(p=0;p<=oe;p++)e.bl_count[p]=0;for(a[2*e.heap[e.heap_max]+1]=0,u=e.heap_max+1;u<573;u++)c=e.heap[u],p=a[2*a[2*c+1]+1]+1,p>l&&(p=l,m++),a[2*c+1]=p,c>n||(e.bl_count[p]++,h=0,c>=o&&(h=s[c-o]),f=a[2*c],e.opt_len+=f*(p+h),r&&(e.static_len+=f*(i[2*c+1]+h)));if(0!==m){do{for(p=l-1;0===e.bl_count[p];)p--;e.bl_count[p]--,e.bl_count[p+1]+=2,e.bl_count[l]--,m-=2}while(m>0);for(p=l;0!==p;p--)for(c=e.bl_count[p];0!==c;)d=e.heap[--u],d>n||(a[2*d+1]!==p&&(e.opt_len+=(p-a[2*d+1])*a[2*d],a[2*d+1]=p),c--)}})(e,t),xe(a,u,e.bl_count)},Re=(e,t,a)=>{let n,i,r=-1,s=t[1],o=0,l=7,u=4;for(0===s&&(l=138,u=3),t[2*(a+1)+1]=65535,n=0;n<=a;n++)i=s,s=t[2*(n+1)+1],++o<l&&i===s||(o<u?e.bl_tree[2*i]+=o:0!==i?(i!==r&&e.bl_tree[2*i]++,e.bl_tree[32]++):o<=10?e.bl_tree[34]++:e.bl_tree[36]++,o=0,r=i,0===s?(l=138,u=3):i===s?(l=6,u=3):(l=7,u=4))},Le=(e,t,a)=>{let n,i,r=-1,s=t[1],o=0,l=7,u=4;for(0===s&&(l=138,u=3),n=0;n<=a;n++)if(i=s,s=t[2*(n+1)+1],!(++o<l&&i===s)){if(o<u)do{Te(e,i,e.bl_tree)}while(0!=--o);else 0!==i?(i!==r&&(Te(e,i,e.bl_tree),o--),Te(e,16,e.bl_tree),Ne(e,o-3,2)):o<=10?(Te(e,17,e.bl_tree),Ne(e,o-3,3)):(Te(e,18,e.bl_tree),Ne(e,o-11,7));o=0,r=i,0===s?(l=138,u=3):i===s?(l=6,u=3):(l=7,u=4)}};let Pe=!1;const Be=(e,t,a,n)=>{Ne(e,0+(n?1:0),3),Ie(e),Se(e,a),Se(e,~a),a&&e.pending_buf.set(e.window.subarray(t,t+a),e.pending),e.pending+=a};var Oe=e=>{Pe||((()=>{let e,t,a,n,i;const r=new Array(16);for(a=0,n=0;n<28;n++)for(ye[n]=a,e=0;e<1<<le[n];e++)me[a++]=n;for(me[a-1]=n,i=0,n=0;n<16;n++)for(ge[n]=i,e=0;e<1<<ue[n];e++)fe[i++]=n;for(i>>=7;n<se;n++)for(ge[n]=i<<7,e=0;e<1<<ue[n]-7;e++)fe[256+i++]=n;for(t=0;t<=oe;t++)r[t]=0;for(e=0;e<=143;)pe[2*e+1]=8,e++,r[8]++;for(;e<=255;)pe[2*e+1]=9,e++,r[9]++;for(;e<=279;)pe[2*e+1]=7,e++,r[7]++;for(;e<=287;)pe[2*e+1]=8,e++,r[8]++;for(xe(pe,287,r),e=0;e<se;e++)he[2*e+1]=5,he[2*e]=Me(e,5);ve=new be(pe,le,257,re,oe),_e=new be(he,ue,0,se,oe),we=new be(new Array(0),ce,0,19,7)})(),Pe=!0),e.l_desc=new Ae(e.dyn_ltree,ve),e.d_desc=new Ae(e.dyn_dtree,_e),e.bl_desc=new Ae(e.bl_tree,we),e.bi_buf=0,e.bi_valid=0,Ce(e)},$e=(e,t,a,n)=>{let i,r,s=0;e.level>0?(2===e.strm.data_type&&(e.strm.data_type=(e=>{let t,a=4093624447;for(t=0;t<=31;t++,a>>>=1)if(1&a&&0!==e.dyn_ltree[2*t])return 0;if(0!==e.dyn_ltree[18]||0!==e.dyn_ltree[20]||0!==e.dyn_ltree[26])return 1;for(t=32;t<ie;t++)if(0!==e.dyn_ltree[2*t])return 1;return 0})(e)),De(e,e.l_desc),De(e,e.d_desc),s=(e=>{let t;for(Re(e,e.dyn_ltree,e.l_desc.max_code),Re(e,e.dyn_dtree,e.d_desc.max_code),De(e,e.bl_desc),t=18;t>=3&&0===e.bl_tree[2*de[t]+1];t--);return e.opt_len+=3*(t+1)+5+5+4,t})(e),i=e.opt_len+3+7>>>3,r=e.static_len+3+7>>>3,r<=i&&(i=r)):i=r=a+5,a+4<=i&&-1!==t?Be(e,t,a,n):4===e.strategy||r===i?(Ne(e,2+(n?1:0),3),Fe(e,pe,he)):(Ne(e,4+(n?1:0),3),((e,t,a,n)=>{let i;for(Ne(e,t-257,5),Ne(e,a-1,5),Ne(e,n-4,4),i=0;i<n;i++)Ne(e,e.bl_tree[2*de[i]+1],3);Le(e,e.dyn_ltree,t-1),Le(e,e.dyn_dtree,a-1)})(e,e.l_desc.max_code+1,e.d_desc.max_code+1,s+1),Fe(e,e.dyn_ltree,e.dyn_dtree)),Ce(e),n&&Ie(e)},Ue={_tr_init:Oe,_tr_stored_block:Be,_tr_flush_block:$e,_tr_tally:(e,t,a)=>(e.pending_buf[e.sym_buf+e.sym_next++]=t,e.pending_buf[e.sym_buf+e.sym_next++]=t>>8,e.pending_buf[e.sym_buf+e.sym_next++]=a,0===t?e.dyn_ltree[2*a]++:(e.matches++,t--,e.dyn_ltree[2*(me[a]+ie+1)]++,e.dyn_dtree[2*ke(t)]++),e.sym_next===e.sym_end),_tr_align:e=>{Ne(e,2,3),Te(e,256,pe),(e=>{16===e.bi_valid?(Se(e,e.bi_buf),e.bi_buf=0,e.bi_valid=0):e.bi_valid>=8&&(e.pending_buf[e.pending++]=255&e.bi_buf,e.bi_buf>>=8,e.bi_valid-=8)})(e)}};var je=(e,t,a,n)=>{let i=65535&e,r=e>>>16&65535,s=0;for(;0!==a;){s=a>2e3?2e3:a,a-=s;do{i=i+t[n++]|0,r=r+i|0}while(--s);i%=65521,r%=65521}return i|r<<16};const ze=new Uint32Array((()=>{let e,t=[];for(var a=0;a<256;a++){e=a;for(var n=0;n<8;n++)e=1&e?3988292384^e>>>1:e>>>1;t[a]=e}return t})());var We=(e,t,a,n)=>{const i=ze,r=n+a;e^=-1;for(let a=n;a<r;a++)e=e>>>8^i[255&(e^t[a])];return~e},Ye={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"},He={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_MEM_ERROR:-4,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8};const{_tr_init:Ge,_tr_stored_block:qe,_tr_flush_block:Ze,_tr_tally:Je,_tr_align:Ke}=Ue,{Z_NO_FLUSH:Xe,Z_PARTIAL_FLUSH:Qe,Z_FULL_FLUSH:et,Z_FINISH:tt,Z_BLOCK:at,Z_OK:nt,Z_STREAM_END:it,Z_STREAM_ERROR:rt,Z_DATA_ERROR:st,Z_BUF_ERROR:ot,Z_DEFAULT_COMPRESSION:lt,Z_FILTERED:ut,Z_HUFFMAN_ONLY:ct,Z_RLE:dt,Z_FIXED:pt,Z_DEFAULT_STRATEGY:ht,Z_UNKNOWN:ft,Z_DEFLATED:mt}=He,yt=258,gt=262,bt=42,vt=113,_t=666,wt=(e,t)=>(e.msg=Ye[t],t),At=e=>2*e-(e>4?9:0),kt=e=>{let t=e.length;for(;--t>=0;)e[t]=0},St=e=>{let t,a,n,i=e.w_size;t=e.hash_size,n=t;do{a=e.head[--n],e.head[n]=a>=i?a-i:0}while(--t);t=i,n=t;do{a=e.prev[--n],e.prev[n]=a>=i?a-i:0}while(--t)};let Nt=(e,t,a)=>(t<<e.hash_shift^a)&e.hash_mask;const Tt=e=>{const t=e.state;let a=t.pending;a>e.avail_out&&(a=e.avail_out),0!==a&&(e.output.set(t.pending_buf.subarray(t.pending_out,t.pending_out+a),e.next_out),e.next_out+=a,t.pending_out+=a,e.total_out+=a,e.avail_out-=a,t.pending-=a,0===t.pending&&(t.pending_out=0))},Mt=(e,t)=>{Ze(e,e.block_start>=0?e.block_start:-1,e.strstart-e.block_start,t),e.block_start=e.strstart,Tt(e.strm)},xt=(e,t)=>{e.pending_buf[e.pending++]=t},Ct=(e,t)=>{e.pending_buf[e.pending++]=t>>>8&255,e.pending_buf[e.pending++]=255&t},It=(e,t,a,n)=>{let i=e.avail_in;return i>n&&(i=n),0===i?0:(e.avail_in-=i,t.set(e.input.subarray(e.next_in,e.next_in+i),a),1===e.state.wrap?e.adler=je(e.adler,t,i,a):2===e.state.wrap&&(e.adler=We(e.adler,t,i,a)),e.next_in+=i,e.total_in+=i,i)},Vt=(e,t)=>{let a,n,i=e.max_chain_length,r=e.strstart,s=e.prev_length,o=e.nice_match;const l=e.strstart>e.w_size-gt?e.strstart-(e.w_size-gt):0,u=e.window,c=e.w_mask,d=e.prev,p=e.strstart+yt;let h=u[r+s-1],f=u[r+s];e.prev_length>=e.good_match&&(i>>=2),o>e.lookahead&&(o=e.lookahead);do{if(a=t,u[a+s]===f&&u[a+s-1]===h&&u[a]===u[r]&&u[++a]===u[r+1]){r+=2,a++;do{}while(u[++r]===u[++a]&&u[++r]===u[++a]&&u[++r]===u[++a]&&u[++r]===u[++a]&&u[++r]===u[++a]&&u[++r]===u[++a]&&u[++r]===u[++a]&&u[++r]===u[++a]&&r<p);if(n=yt-(p-r),r=p-yt,n>s){if(e.match_start=t,s=n,n>=o)break;h=u[r+s-1],f=u[r+s]}}}while((t=d[t&c])>l&&0!=--i);return s<=e.lookahead?s:e.lookahead},Et=e=>{const t=e.w_size;let a,n,i;do{if(n=e.window_size-e.lookahead-e.strstart,e.strstart>=t+(t-gt)&&(e.window.set(e.window.subarray(t,t+t-n),0),e.match_start-=t,e.strstart-=t,e.block_start-=t,e.insert>e.strstart&&(e.insert=e.strstart),St(e),n+=t),0===e.strm.avail_in)break;if(a=It(e.strm,e.window,e.strstart+e.lookahead,n),e.lookahead+=a,e.lookahead+e.insert>=3)for(i=e.strstart-e.insert,e.ins_h=e.window[i],e.ins_h=Nt(e,e.ins_h,e.window[i+1]);e.insert&&(e.ins_h=Nt(e,e.ins_h,e.window[i+3-1]),e.prev[i&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=i,i++,e.insert--,!(e.lookahead+e.insert<3)););}while(e.lookahead<gt&&0!==e.strm.avail_in)},Ft=(e,t)=>{let a,n,i,r=e.pending_buf_size-5>e.w_size?e.w_size:e.pending_buf_size-5,s=0,o=e.strm.avail_in;do{if(a=65535,i=e.bi_valid+42>>3,e.strm.avail_out<i)break;if(i=e.strm.avail_out-i,n=e.strstart-e.block_start,a>n+e.strm.avail_in&&(a=n+e.strm.avail_in),a>i&&(a=i),a<r&&(0===a&&t!==tt||t===Xe||a!==n+e.strm.avail_in))break;s=t===tt&&a===n+e.strm.avail_in?1:0,qe(e,0,0,s),e.pending_buf[e.pending-4]=a,e.pending_buf[e.pending-3]=a>>8,e.pending_buf[e.pending-2]=~a,e.pending_buf[e.pending-1]=~a>>8,Tt(e.strm),n&&(n>a&&(n=a),e.strm.output.set(e.window.subarray(e.block_start,e.block_start+n),e.strm.next_out),e.strm.next_out+=n,e.strm.avail_out-=n,e.strm.total_out+=n,e.block_start+=n,a-=n),a&&(It(e.strm,e.strm.output,e.strm.next_out,a),e.strm.next_out+=a,e.strm.avail_out-=a,e.strm.total_out+=a)}while(0===s);return o-=e.strm.avail_in,o&&(o>=e.w_size?(e.matches=2,e.window.set(e.strm.input.subarray(e.strm.next_in-e.w_size,e.strm.next_in),0),e.strstart=e.w_size,e.insert=e.strstart):(e.window_size-e.strstart<=o&&(e.strstart-=e.w_size,e.window.set(e.window.subarray(e.w_size,e.w_size+e.strstart),0),e.matches<2&&e.matches++,e.insert>e.strstart&&(e.insert=e.strstart)),e.window.set(e.strm.input.subarray(e.strm.next_in-o,e.strm.next_in),e.strstart),e.strstart+=o,e.insert+=o>e.w_size-e.insert?e.w_size-e.insert:o),e.block_start=e.strstart),e.high_water<e.strstart&&(e.high_water=e.strstart),s?4:t!==Xe&&t!==tt&&0===e.strm.avail_in&&e.strstart===e.block_start?2:(i=e.window_size-e.strstart,e.strm.avail_in>i&&e.block_start>=e.w_size&&(e.block_start-=e.w_size,e.strstart-=e.w_size,e.window.set(e.window.subarray(e.w_size,e.w_size+e.strstart),0),e.matches<2&&e.matches++,i+=e.w_size,e.insert>e.strstart&&(e.insert=e.strstart)),i>e.strm.avail_in&&(i=e.strm.avail_in),i&&(It(e.strm,e.window,e.strstart,i),e.strstart+=i,e.insert+=i>e.w_size-e.insert?e.w_size-e.insert:i),e.high_water<e.strstart&&(e.high_water=e.strstart),i=e.bi_valid+42>>3,i=e.pending_buf_size-i>65535?65535:e.pending_buf_size-i,r=i>e.w_size?e.w_size:i,n=e.strstart-e.block_start,(n>=r||(n||t===tt)&&t!==Xe&&0===e.strm.avail_in&&n<=i)&&(a=n>i?i:n,s=t===tt&&0===e.strm.avail_in&&a===n?1:0,qe(e,e.block_start,a,s),e.block_start+=a,Tt(e.strm)),s?3:1)},Dt=(e,t)=>{let a,n;for(;;){if(e.lookahead<gt){if(Et(e),e.lookahead<gt&&t===Xe)return 1;if(0===e.lookahead)break}if(a=0,e.lookahead>=3&&(e.ins_h=Nt(e,e.ins_h,e.window[e.strstart+3-1]),a=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),0!==a&&e.strstart-a<=e.w_size-gt&&(e.match_length=Vt(e,a)),e.match_length>=3)if(n=Je(e,e.strstart-e.match_start,e.match_length-3),e.lookahead-=e.match_length,e.match_length<=e.max_lazy_match&&e.lookahead>=3){e.match_length--;do{e.strstart++,e.ins_h=Nt(e,e.ins_h,e.window[e.strstart+3-1]),a=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart}while(0!=--e.match_length);e.strstart++}else e.strstart+=e.match_length,e.match_length=0,e.ins_h=e.window[e.strstart],e.ins_h=Nt(e,e.ins_h,e.window[e.strstart+1]);else n=Je(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++;if(n&&(Mt(e,!1),0===e.strm.avail_out))return 1}return e.insert=e.strstart<2?e.strstart:2,t===tt?(Mt(e,!0),0===e.strm.avail_out?3:4):e.sym_next&&(Mt(e,!1),0===e.strm.avail_out)?1:2},Rt=(e,t)=>{let a,n,i;for(;;){if(e.lookahead<gt){if(Et(e),e.lookahead<gt&&t===Xe)return 1;if(0===e.lookahead)break}if(a=0,e.lookahead>=3&&(e.ins_h=Nt(e,e.ins_h,e.window[e.strstart+3-1]),a=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),e.prev_length=e.match_length,e.prev_match=e.match_start,e.match_length=2,0!==a&&e.prev_length<e.max_lazy_match&&e.strstart-a<=e.w_size-gt&&(e.match_length=Vt(e,a),e.match_length<=5&&(e.strategy===ut||3===e.match_length&&e.strstart-e.match_start>4096)&&(e.match_length=2)),e.prev_length>=3&&e.match_length<=e.prev_length){i=e.strstart+e.lookahead-3,n=Je(e,e.strstart-1-e.prev_match,e.prev_length-3),e.lookahead-=e.prev_length-1,e.prev_length-=2;do{++e.strstart<=i&&(e.ins_h=Nt(e,e.ins_h,e.window[e.strstart+3-1]),a=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart)}while(0!=--e.prev_length);if(e.match_available=0,e.match_length=2,e.strstart++,n&&(Mt(e,!1),0===e.strm.avail_out))return 1}else if(e.match_available){if(n=Je(e,0,e.window[e.strstart-1]),n&&Mt(e,!1),e.strstart++,e.lookahead--,0===e.strm.avail_out)return 1}else e.match_available=1,e.strstart++,e.lookahead--}return e.match_available&&(n=Je(e,0,e.window[e.strstart-1]),e.match_available=0),e.insert=e.strstart<2?e.strstart:2,t===tt?(Mt(e,!0),0===e.strm.avail_out?3:4):e.sym_next&&(Mt(e,!1),0===e.strm.avail_out)?1:2};function Lt(e,t,a,n,i){this.good_length=e,this.max_lazy=t,this.nice_length=a,this.max_chain=n,this.func=i}const Pt=[new Lt(0,0,0,0,Ft),new Lt(4,4,8,4,Dt),new Lt(4,5,16,8,Dt),new Lt(4,6,32,32,Dt),new Lt(4,4,16,16,Rt),new Lt(8,16,32,32,Rt),new Lt(8,16,128,128,Rt),new Lt(8,32,128,256,Rt),new Lt(32,128,258,1024,Rt),new Lt(32,258,258,4096,Rt)];function Bt(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=mt,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new Uint16Array(1146),this.dyn_dtree=new Uint16Array(122),this.bl_tree=new Uint16Array(78),kt(this.dyn_ltree),kt(this.dyn_dtree),kt(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new Uint16Array(16),this.heap=new Uint16Array(573),kt(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new Uint16Array(573),kt(this.depth),this.sym_buf=0,this.lit_bufsize=0,this.sym_next=0,this.sym_end=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}const Ot=e=>{if(!e)return 1;const t=e.state;return!t||t.strm!==e||t.status!==bt&&57!==t.status&&69!==t.status&&73!==t.status&&91!==t.status&&103!==t.status&&t.status!==vt&&t.status!==_t?1:0},$t=e=>{if(Ot(e))return wt(e,rt);e.total_in=e.total_out=0,e.data_type=ft;const t=e.state;return t.pending=0,t.pending_out=0,t.wrap<0&&(t.wrap=-t.wrap),t.status=2===t.wrap?57:t.wrap?bt:vt,e.adler=2===t.wrap?0:1,t.last_flush=-2,Ge(t),nt},Ut=e=>{const t=$t(e);var a;return t===nt&&((a=e.state).window_size=2*a.w_size,kt(a.head),a.max_lazy_match=Pt[a.level].max_lazy,a.good_match=Pt[a.level].good_length,a.nice_match=Pt[a.level].nice_length,a.max_chain_length=Pt[a.level].max_chain,a.strstart=0,a.block_start=0,a.lookahead=0,a.insert=0,a.match_length=a.prev_length=2,a.match_available=0,a.ins_h=0),t},jt=(e,t,a,n,i,r)=>{if(!e)return rt;let s=1;if(t===lt&&(t=6),n<0?(s=0,n=-n):n>15&&(s=2,n-=16),i<1||i>9||a!==mt||n<8||n>15||t<0||t>9||r<0||r>pt||8===n&&1!==s)return wt(e,rt);8===n&&(n=9);const o=new Bt;return e.state=o,o.strm=e,o.status=bt,o.wrap=s,o.gzhead=null,o.w_bits=n,o.w_size=1<<o.w_bits,o.w_mask=o.w_size-1,o.hash_bits=i+7,o.hash_size=1<<o.hash_bits,o.hash_mask=o.hash_size-1,o.hash_shift=~~((o.hash_bits+3-1)/3),o.window=new Uint8Array(2*o.w_size),o.head=new Uint16Array(o.hash_size),o.prev=new Uint16Array(o.w_size),o.lit_bufsize=1<<i+6,o.pending_buf_size=4*o.lit_bufsize,o.pending_buf=new Uint8Array(o.pending_buf_size),o.sym_buf=o.lit_bufsize,o.sym_end=3*(o.lit_bufsize-1),o.level=t,o.strategy=r,o.method=a,Ut(e)};var zt=(e,t)=>{if(Ot(e)||t>at||t<0)return e?wt(e,rt):rt;const a=e.state;if(!e.output||0!==e.avail_in&&!e.input||a.status===_t&&t!==tt)return wt(e,0===e.avail_out?ot:rt);const n=a.last_flush;if(a.last_flush=t,0!==a.pending){if(Tt(e),0===e.avail_out)return a.last_flush=-1,nt}else if(0===e.avail_in&&At(t)<=At(n)&&t!==tt)return wt(e,ot);if(a.status===_t&&0!==e.avail_in)return wt(e,ot);if(a.status===bt&&0===a.wrap&&(a.status=vt),a.status===bt){let t=mt+(a.w_bits-8<<4)<<8,n=-1;if(n=a.strategy>=ct||a.level<2?0:a.level<6?1:6===a.level?2:3,t|=n<<6,0!==a.strstart&&(t|=32),t+=31-t%31,Ct(a,t),0!==a.strstart&&(Ct(a,e.adler>>>16),Ct(a,65535&e.adler)),e.adler=1,a.status=vt,Tt(e),0!==a.pending)return a.last_flush=-1,nt}if(57===a.status)if(e.adler=0,xt(a,31),xt(a,139),xt(a,8),a.gzhead)xt(a,(a.gzhead.text?1:0)+(a.gzhead.hcrc?2:0)+(a.gzhead.extra?4:0)+(a.gzhead.name?8:0)+(a.gzhead.comment?16:0)),xt(a,255&a.gzhead.time),xt(a,a.gzhead.time>>8&255),xt(a,a.gzhead.time>>16&255),xt(a,a.gzhead.time>>24&255),xt(a,9===a.level?2:a.strategy>=ct||a.level<2?4:0),xt(a,255&a.gzhead.os),a.gzhead.extra&&a.gzhead.extra.length&&(xt(a,255&a.gzhead.extra.length),xt(a,a.gzhead.extra.length>>8&255)),a.gzhead.hcrc&&(e.adler=We(e.adler,a.pending_buf,a.pending,0)),a.gzindex=0,a.status=69;else if(xt(a,0),xt(a,0),xt(a,0),xt(a,0),xt(a,0),xt(a,9===a.level?2:a.strategy>=ct||a.level<2?4:0),xt(a,3),a.status=vt,Tt(e),0!==a.pending)return a.last_flush=-1,nt;if(69===a.status){if(a.gzhead.extra){let t=a.pending,n=(65535&a.gzhead.extra.length)-a.gzindex;for(;a.pending+n>a.pending_buf_size;){let i=a.pending_buf_size-a.pending;if(a.pending_buf.set(a.gzhead.extra.subarray(a.gzindex,a.gzindex+i),a.pending),a.pending=a.pending_buf_size,a.gzhead.hcrc&&a.pending>t&&(e.adler=We(e.adler,a.pending_buf,a.pending-t,t)),a.gzindex+=i,Tt(e),0!==a.pending)return a.last_flush=-1,nt;t=0,n-=i}let i=new Uint8Array(a.gzhead.extra);a.pending_buf.set(i.subarray(a.gzindex,a.gzindex+n),a.pending),a.pending+=n,a.gzhead.hcrc&&a.pending>t&&(e.adler=We(e.adler,a.pending_buf,a.pending-t,t)),a.gzindex=0}a.status=73}if(73===a.status){if(a.gzhead.name){let t,n=a.pending;do{if(a.pending===a.pending_buf_size){if(a.gzhead.hcrc&&a.pending>n&&(e.adler=We(e.adler,a.pending_buf,a.pending-n,n)),Tt(e),0!==a.pending)return a.last_flush=-1,nt;n=0}t=a.gzindex<a.gzhead.name.length?255&a.gzhead.name.charCodeAt(a.gzindex++):0,xt(a,t)}while(0!==t);a.gzhead.hcrc&&a.pending>n&&(e.adler=We(e.adler,a.pending_buf,a.pending-n,n)),a.gzindex=0}a.status=91}if(91===a.status){if(a.gzhead.comment){let t,n=a.pending;do{if(a.pending===a.pending_buf_size){if(a.gzhead.hcrc&&a.pending>n&&(e.adler=We(e.adler,a.pending_buf,a.pending-n,n)),Tt(e),0!==a.pending)return a.last_flush=-1,nt;n=0}t=a.gzindex<a.gzhead.comment.length?255&a.gzhead.comment.charCodeAt(a.gzindex++):0,xt(a,t)}while(0!==t);a.gzhead.hcrc&&a.pending>n&&(e.adler=We(e.adler,a.pending_buf,a.pending-n,n))}a.status=103}if(103===a.status){if(a.gzhead.hcrc){if(a.pending+2>a.pending_buf_size&&(Tt(e),0!==a.pending))return a.last_flush=-1,nt;xt(a,255&e.adler),xt(a,e.adler>>8&255),e.adler=0}if(a.status=vt,Tt(e),0!==a.pending)return a.last_flush=-1,nt}if(0!==e.avail_in||0!==a.lookahead||t!==Xe&&a.status!==_t){let n=0===a.level?Ft(a,t):a.strategy===ct?((e,t)=>{let a;for(;;){if(0===e.lookahead&&(Et(e),0===e.lookahead)){if(t===Xe)return 1;break}if(e.match_length=0,a=Je(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++,a&&(Mt(e,!1),0===e.strm.avail_out))return 1}return e.insert=0,t===tt?(Mt(e,!0),0===e.strm.avail_out?3:4):e.sym_next&&(Mt(e,!1),0===e.strm.avail_out)?1:2})(a,t):a.strategy===dt?((e,t)=>{let a,n,i,r;const s=e.window;for(;;){if(e.lookahead<=yt){if(Et(e),e.lookahead<=yt&&t===Xe)return 1;if(0===e.lookahead)break}if(e.match_length=0,e.lookahead>=3&&e.strstart>0&&(i=e.strstart-1,n=s[i],n===s[++i]&&n===s[++i]&&n===s[++i])){r=e.strstart+yt;do{}while(n===s[++i]&&n===s[++i]&&n===s[++i]&&n===s[++i]&&n===s[++i]&&n===s[++i]&&n===s[++i]&&n===s[++i]&&i<r);e.match_length=yt-(r-i),e.match_length>e.lookahead&&(e.match_length=e.lookahead)}if(e.match_length>=3?(a=Je(e,1,e.match_length-3),e.lookahead-=e.match_length,e.strstart+=e.match_length,e.match_length=0):(a=Je(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++),a&&(Mt(e,!1),0===e.strm.avail_out))return 1}return e.insert=0,t===tt?(Mt(e,!0),0===e.strm.avail_out?3:4):e.sym_next&&(Mt(e,!1),0===e.strm.avail_out)?1:2})(a,t):Pt[a.level].func(a,t);if(3!==n&&4!==n||(a.status=_t),1===n||3===n)return 0===e.avail_out&&(a.last_flush=-1),nt;if(2===n&&(t===Qe?Ke(a):t!==at&&(qe(a,0,0,!1),t===et&&(kt(a.head),0===a.lookahead&&(a.strstart=0,a.block_start=0,a.insert=0))),Tt(e),0===e.avail_out))return a.last_flush=-1,nt}return t!==tt?nt:a.wrap<=0?it:(2===a.wrap?(xt(a,255&e.adler),xt(a,e.adler>>8&255),xt(a,e.adler>>16&255),xt(a,e.adler>>24&255),xt(a,255&e.total_in),xt(a,e.total_in>>8&255),xt(a,e.total_in>>16&255),xt(a,e.total_in>>24&255)):(Ct(a,e.adler>>>16),Ct(a,65535&e.adler)),Tt(e),a.wrap>0&&(a.wrap=-a.wrap),0!==a.pending?nt:it)},Wt={deflateInit:(e,t)=>jt(e,t,mt,15,8,ht),deflateInit2:jt,deflateReset:Ut,deflateResetKeep:$t,deflateSetHeader:(e,t)=>Ot(e)||2!==e.state.wrap?rt:(e.state.gzhead=t,nt),deflate:zt,deflateEnd:e=>{if(Ot(e))return rt;const t=e.state.status;return e.state=null,t===vt?wt(e,st):nt},deflateSetDictionary:(e,t)=>{let a=t.length;if(Ot(e))return rt;const n=e.state,i=n.wrap;if(2===i||1===i&&n.status!==bt||n.lookahead)return rt;if(1===i&&(e.adler=je(e.adler,t,a,0)),n.wrap=0,a>=n.w_size){0===i&&(kt(n.head),n.strstart=0,n.block_start=0,n.insert=0);let e=new Uint8Array(n.w_size);e.set(t.subarray(a-n.w_size,a),0),t=e,a=n.w_size}const r=e.avail_in,s=e.next_in,o=e.input;for(e.avail_in=a,e.next_in=0,e.input=t,Et(n);n.lookahead>=3;){let e=n.strstart,t=n.lookahead-2;do{n.ins_h=Nt(n,n.ins_h,n.window[e+3-1]),n.prev[e&n.w_mask]=n.head[n.ins_h],n.head[n.ins_h]=e,e++}while(--t);n.strstart=e,n.lookahead=2,Et(n)}return n.strstart+=n.lookahead,n.block_start=n.strstart,n.insert=n.lookahead,n.lookahead=0,n.match_length=n.prev_length=2,n.match_available=0,e.next_in=s,e.input=o,e.avail_in=r,n.wrap=i,nt},deflateInfo:"pako deflate (from Nodeca project)"};const Yt=(e,t)=>Object.prototype.hasOwnProperty.call(e,t);var Ht=function(e){const t=Array.prototype.slice.call(arguments,1);for(;t.length;){const a=t.shift();if(a){if("object"!=typeof a)throw new TypeError(a+"must be non-object");for(const t in a)Yt(a,t)&&(e[t]=a[t])}}return e},Gt=e=>{let t=0;for(let a=0,n=e.length;a<n;a++)t+=e[a].length;const a=new Uint8Array(t);for(let t=0,n=0,i=e.length;t<i;t++){let i=e[t];a.set(i,n),n+=i.length}return a};let qt=!0;try{String.fromCharCode.apply(null,new Uint8Array(1))}catch(e){qt=!1}const Zt=new Uint8Array(256);for(let e=0;e<256;e++)Zt[e]=e>=252?6:e>=248?5:e>=240?4:e>=224?3:e>=192?2:1;Zt[254]=Zt[254]=1;var Jt=e=>{if("function"==typeof TextEncoder&&TextEncoder.prototype.encode)return(new TextEncoder).encode(e);let t,a,n,i,r,s=e.length,o=0;for(i=0;i<s;i++)a=e.charCodeAt(i),55296==(64512&a)&&i+1<s&&(n=e.charCodeAt(i+1),56320==(64512&n)&&(a=65536+(a-55296<<10)+(n-56320),i++)),o+=a<128?1:a<2048?2:a<65536?3:4;for(t=new Uint8Array(o),r=0,i=0;r<o;i++)a=e.charCodeAt(i),55296==(64512&a)&&i+1<s&&(n=e.charCodeAt(i+1),56320==(64512&n)&&(a=65536+(a-55296<<10)+(n-56320),i++)),a<128?t[r++]=a:a<2048?(t[r++]=192|a>>>6,t[r++]=128|63&a):a<65536?(t[r++]=224|a>>>12,t[r++]=128|a>>>6&63,t[r++]=128|63&a):(t[r++]=240|a>>>18,t[r++]=128|a>>>12&63,t[r++]=128|a>>>6&63,t[r++]=128|63&a);return t},Kt=(e,t)=>{const a=t||e.length;if("function"==typeof TextDecoder&&TextDecoder.prototype.decode)return(new TextDecoder).decode(e.subarray(0,t));let n,i;const r=new Array(2*a);for(i=0,n=0;n<a;){let t=e[n++];if(t<128){r[i++]=t;continue}let s=Zt[t];if(s>4)r[i++]=65533,n+=s-1;else{for(t&=2===s?31:3===s?15:7;s>1&&n<a;)t=t<<6|63&e[n++],s--;s>1?r[i++]=65533:t<65536?r[i++]=t:(t-=65536,r[i++]=55296|t>>10&1023,r[i++]=56320|1023&t)}}return((e,t)=>{if(t<65534&&e.subarray&&qt)return String.fromCharCode.apply(null,e.length===t?e:e.subarray(0,t));let a="";for(let n=0;n<t;n++)a+=String.fromCharCode(e[n]);return a})(r,i)},Xt=(e,t)=>{(t=t||e.length)>e.length&&(t=e.length);let a=t-1;for(;a>=0&&128==(192&e[a]);)a--;return a<0||0===a?t:a+Zt[e[a]]>t?a:t};var Qt=function(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0};const ea=Object.prototype.toString,{Z_NO_FLUSH:ta,Z_SYNC_FLUSH:aa,Z_FULL_FLUSH:na,Z_FINISH:ia,Z_OK:ra,Z_STREAM_END:sa,Z_DEFAULT_COMPRESSION:oa,Z_DEFAULT_STRATEGY:la,Z_DEFLATED:ua}=He;function ca(e){this.options=Ht({level:oa,method:ua,chunkSize:16384,windowBits:15,memLevel:8,strategy:la},e||{});let t=this.options;t.raw&&t.windowBits>0?t.windowBits=-t.windowBits:t.gzip&&t.windowBits>0&&t.windowBits<16&&(t.windowBits+=16),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new Qt,this.strm.avail_out=0;let a=Wt.deflateInit2(this.strm,t.level,t.method,t.windowBits,t.memLevel,t.strategy);if(a!==ra)throw new Error(Ye[a]);if(t.header&&Wt.deflateSetHeader(this.strm,t.header),t.dictionary){let e;if(e="string"==typeof t.dictionary?Jt(t.dictionary):"[object ArrayBuffer]"===ea.call(t.dictionary)?new Uint8Array(t.dictionary):t.dictionary,a=Wt.deflateSetDictionary(this.strm,e),a!==ra)throw new Error(Ye[a]);this._dict_set=!0}}function da(e,t){const a=new ca(t);if(a.push(e,!0),a.err)throw a.msg||Ye[a.err];return a.result}ca.prototype.push=function(e,t){const a=this.strm,n=this.options.chunkSize;let i,r;if(this.ended)return!1;for(r=t===~~t?t:!0===t?ia:ta,"string"==typeof e?a.input=Jt(e):"[object ArrayBuffer]"===ea.call(e)?a.input=new Uint8Array(e):a.input=e,a.next_in=0,a.avail_in=a.input.length;;)if(0===a.avail_out&&(a.output=new Uint8Array(n),a.next_out=0,a.avail_out=n),(r===aa||r===na)&&a.avail_out<=6)this.onData(a.output.subarray(0,a.next_out)),a.avail_out=0;else{if(i=Wt.deflate(a,r),i===sa)return a.next_out>0&&this.onData(a.output.subarray(0,a.next_out)),i=Wt.deflateEnd(this.strm),this.onEnd(i),this.ended=!0,i===ra;if(0!==a.avail_out){if(r>0&&a.next_out>0)this.onData(a.output.subarray(0,a.next_out)),a.avail_out=0;else if(0===a.avail_in)break}else this.onData(a.output)}return!0},ca.prototype.onData=function(e){this.chunks.push(e)},ca.prototype.onEnd=function(e){e===ra&&(this.result=Gt(this.chunks)),this.chunks=[],this.err=e,this.msg=this.strm.msg};var pa=function(e,t){return(t=t||{}).raw=!0,da(e,t)},ha=function(e,t){return(t=t||{}).gzip=!0,da(e,t)},fa={Deflate:ca,deflate:da,deflateRaw:pa,gzip:ha};const ma=16209;var ya=function(e,t){let a,n,i,r,s,o,l,u,c,d,p,h,f,m,y,g,b,v,_,w,A,k,S,N;const T=e.state;a=e.next_in,S=e.input,n=a+(e.avail_in-5),i=e.next_out,N=e.output,r=i-(t-e.avail_out),s=i+(e.avail_out-257),o=T.dmax,l=T.wsize,u=T.whave,c=T.wnext,d=T.window,p=T.hold,h=T.bits,f=T.lencode,m=T.distcode,y=(1<<T.lenbits)-1,g=(1<<T.distbits)-1;e:do{h<15&&(p+=S[a++]<<h,h+=8,p+=S[a++]<<h,h+=8),b=f[p&y];t:for(;;){if(v=b>>>24,p>>>=v,h-=v,v=b>>>16&255,0===v)N[i++]=65535&b;else{if(!(16&v)){if(64&v){if(32&v){T.mode=16191;break e}e.msg="invalid literal/length code",T.mode=ma;break e}b=f[(65535&b)+(p&(1<<v)-1)];continue t}for(_=65535&b,v&=15,v&&(h<v&&(p+=S[a++]<<h,h+=8),_+=p&(1<<v)-1,p>>>=v,h-=v),h<15&&(p+=S[a++]<<h,h+=8,p+=S[a++]<<h,h+=8),b=m[p&g];;){if(v=b>>>24,p>>>=v,h-=v,v=b>>>16&255,16&v){if(w=65535&b,v&=15,h<v&&(p+=S[a++]<<h,h+=8,h<v&&(p+=S[a++]<<h,h+=8)),w+=p&(1<<v)-1,w>o){e.msg="invalid distance too far back",T.mode=ma;break e}if(p>>>=v,h-=v,v=i-r,w>v){if(v=w-v,v>u&&T.sane){e.msg="invalid distance too far back",T.mode=ma;break e}if(A=0,k=d,0===c){if(A+=l-v,v<_){_-=v;do{N[i++]=d[A++]}while(--v);A=i-w,k=N}}else if(c<v){if(A+=l+c-v,v-=c,v<_){_-=v;do{N[i++]=d[A++]}while(--v);if(A=0,c<_){v=c,_-=v;do{N[i++]=d[A++]}while(--v);A=i-w,k=N}}}else if(A+=c-v,v<_){_-=v;do{N[i++]=d[A++]}while(--v);A=i-w,k=N}for(;_>2;)N[i++]=k[A++],N[i++]=k[A++],N[i++]=k[A++],_-=3;_&&(N[i++]=k[A++],_>1&&(N[i++]=k[A++]))}else{A=i-w;do{N[i++]=N[A++],N[i++]=N[A++],N[i++]=N[A++],_-=3}while(_>2);_&&(N[i++]=N[A++],_>1&&(N[i++]=N[A++]))}break}if(64&v){e.msg="invalid distance code",T.mode=ma;break e}b=m[(65535&b)+(p&(1<<v)-1)]}}break}}while(a<n&&i<s);_=h>>3,a-=_,h-=_<<3,p&=(1<<h)-1,e.next_in=a,e.next_out=i,e.avail_in=a<n?n-a+5:5-(a-n),e.avail_out=i<s?s-i+257:257-(i-s),T.hold=p,T.bits=h};const ga=15,ba=new Uint16Array([3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0]),va=new Uint8Array([16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,72,78]),_a=new Uint16Array([1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0]),wa=new Uint8Array([16,16,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64]);var Aa=(e,t,a,n,i,r,s,o)=>{const l=o.bits;let u,c,d,p,h,f,m=0,y=0,g=0,b=0,v=0,_=0,w=0,A=0,k=0,S=0,N=null;const T=new Uint16Array(16),M=new Uint16Array(16);let x,C,I,V=null;for(m=0;m<=ga;m++)T[m]=0;for(y=0;y<n;y++)T[t[a+y]]++;for(v=l,b=ga;b>=1&&0===T[b];b--);if(v>b&&(v=b),0===b)return i[r++]=20971520,i[r++]=20971520,o.bits=1,0;for(g=1;g<b&&0===T[g];g++);for(v<g&&(v=g),A=1,m=1;m<=ga;m++)if(A<<=1,A-=T[m],A<0)return-1;if(A>0&&(0===e||1!==b))return-1;for(M[1]=0,m=1;m<ga;m++)M[m+1]=M[m]+T[m];for(y=0;y<n;y++)0!==t[a+y]&&(s[M[t[a+y]]++]=y);if(0===e?(N=V=s,f=20):1===e?(N=ba,V=va,f=257):(N=_a,V=wa,f=0),S=0,y=0,m=g,h=r,_=v,w=0,d=-1,k=1<<v,p=k-1,1===e&&k>852||2===e&&k>592)return 1;for(;;){x=m-w,s[y]+1<f?(C=0,I=s[y]):s[y]>=f?(C=V[s[y]-f],I=N[s[y]-f]):(C=96,I=0),u=1<<m-w,c=1<<_,g=c;do{c-=u,i[h+(S>>w)+c]=x<<24|C<<16|I}while(0!==c);for(u=1<<m-1;S&u;)u>>=1;if(0!==u?(S&=u-1,S+=u):S=0,y++,0==--T[m]){if(m===b)break;m=t[a+s[y]]}if(m>v&&(S&p)!==d){for(0===w&&(w=v),h+=g,_=m-w,A=1<<_;_+w<b&&(A-=T[_+w],!(A<=0));)_++,A<<=1;if(k+=1<<_,1===e&&k>852||2===e&&k>592)return 1;d=S&p,i[d]=v<<24|_<<16|h-r}}return 0!==S&&(i[h+S]=m-w<<24|64<<16),o.bits=v,0};const{Z_FINISH:ka,Z_BLOCK:Sa,Z_TREES:Na,Z_OK:Ta,Z_STREAM_END:Ma,Z_NEED_DICT:xa,Z_STREAM_ERROR:Ca,Z_DATA_ERROR:Ia,Z_MEM_ERROR:Va,Z_BUF_ERROR:Ea,Z_DEFLATED:Fa}=He,Da=16180,Ra=16190,La=16191,Pa=16192,Ba=16194,Oa=16199,$a=16200,Ua=16206,ja=16209,za=e=>(e>>>24&255)+(e>>>8&65280)+((65280&e)<<8)+((255&e)<<24);function Wa(){this.strm=null,this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new Uint16Array(320),this.work=new Uint16Array(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}const Ya=e=>{if(!e)return 1;const t=e.state;return!t||t.strm!==e||t.mode<Da||t.mode>16211?1:0},Ha=e=>{if(Ya(e))return Ca;const t=e.state;return e.total_in=e.total_out=t.total=0,e.msg="",t.wrap&&(e.adler=1&t.wrap),t.mode=Da,t.last=0,t.havedict=0,t.flags=-1,t.dmax=32768,t.head=null,t.hold=0,t.bits=0,t.lencode=t.lendyn=new Int32Array(852),t.distcode=t.distdyn=new Int32Array(592),t.sane=1,t.back=-1,Ta},Ga=e=>{if(Ya(e))return Ca;const t=e.state;return t.wsize=0,t.whave=0,t.wnext=0,Ha(e)},qa=(e,t)=>{let a;if(Ya(e))return Ca;const n=e.state;return t<0?(a=0,t=-t):(a=5+(t>>4),t<48&&(t&=15)),t&&(t<8||t>15)?Ca:(null!==n.window&&n.wbits!==t&&(n.window=null),n.wrap=a,n.wbits=t,Ga(e))},Za=(e,t)=>{if(!e)return Ca;const a=new Wa;e.state=a,a.strm=e,a.window=null,a.mode=Da;const n=qa(e,t);return n!==Ta&&(e.state=null),n};let Ja,Ka,Xa=!0;const Qa=e=>{if(Xa){Ja=new Int32Array(512),Ka=new Int32Array(32);let t=0;for(;t<144;)e.lens[t++]=8;for(;t<256;)e.lens[t++]=9;for(;t<280;)e.lens[t++]=7;for(;t<288;)e.lens[t++]=8;for(Aa(1,e.lens,0,288,Ja,0,e.work,{bits:9}),t=0;t<32;)e.lens[t++]=5;Aa(2,e.lens,0,32,Ka,0,e.work,{bits:5}),Xa=!1}e.lencode=Ja,e.lenbits=9,e.distcode=Ka,e.distbits=5},en=(e,t,a,n)=>{let i;const r=e.state;return null===r.window&&(r.wsize=1<<r.wbits,r.wnext=0,r.whave=0,r.window=new Uint8Array(r.wsize)),n>=r.wsize?(r.window.set(t.subarray(a-r.wsize,a),0),r.wnext=0,r.whave=r.wsize):(i=r.wsize-r.wnext,i>n&&(i=n),r.window.set(t.subarray(a-n,a-n+i),r.wnext),(n-=i)?(r.window.set(t.subarray(a-n,a),0),r.wnext=n,r.whave=r.wsize):(r.wnext+=i,r.wnext===r.wsize&&(r.wnext=0),r.whave<r.wsize&&(r.whave+=i))),0};var tn=(e,t)=>{let a,n,i,r,s,o,l,u,c,d,p,h,f,m,y,g,b,v,_,w,A,k,S=0;const N=new Uint8Array(4);let T,M;const x=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]);if(Ya(e)||!e.output||!e.input&&0!==e.avail_in)return Ca;a=e.state,a.mode===La&&(a.mode=Pa),s=e.next_out,i=e.output,l=e.avail_out,r=e.next_in,n=e.input,o=e.avail_in,u=a.hold,c=a.bits,d=o,p=l,k=Ta;e:for(;;)switch(a.mode){case Da:if(0===a.wrap){a.mode=Pa;break}for(;c<16;){if(0===o)break e;o--,u+=n[r++]<<c,c+=8}if(2&a.wrap&&35615===u){0===a.wbits&&(a.wbits=15),a.check=0,N[0]=255&u,N[1]=u>>>8&255,a.check=We(a.check,N,2,0),u=0,c=0,a.mode=16181;break}if(a.head&&(a.head.done=!1),!(1&a.wrap)||(((255&u)<<8)+(u>>8))%31){e.msg="incorrect header check",a.mode=ja;break}if((15&u)!==Fa){e.msg="unknown compression method",a.mode=ja;break}if(u>>>=4,c-=4,A=8+(15&u),0===a.wbits&&(a.wbits=A),A>15||A>a.wbits){e.msg="invalid window size",a.mode=ja;break}a.dmax=1<<a.wbits,a.flags=0,e.adler=a.check=1,a.mode=512&u?16189:La,u=0,c=0;break;case 16181:for(;c<16;){if(0===o)break e;o--,u+=n[r++]<<c,c+=8}if(a.flags=u,(255&a.flags)!==Fa){e.msg="unknown compression method",a.mode=ja;break}if(57344&a.flags){e.msg="unknown header flags set",a.mode=ja;break}a.head&&(a.head.text=u>>8&1),512&a.flags&&4&a.wrap&&(N[0]=255&u,N[1]=u>>>8&255,a.check=We(a.check,N,2,0)),u=0,c=0,a.mode=16182;case 16182:for(;c<32;){if(0===o)break e;o--,u+=n[r++]<<c,c+=8}a.head&&(a.head.time=u),512&a.flags&&4&a.wrap&&(N[0]=255&u,N[1]=u>>>8&255,N[2]=u>>>16&255,N[3]=u>>>24&255,a.check=We(a.check,N,4,0)),u=0,c=0,a.mode=16183;case 16183:for(;c<16;){if(0===o)break e;o--,u+=n[r++]<<c,c+=8}a.head&&(a.head.xflags=255&u,a.head.os=u>>8),512&a.flags&&4&a.wrap&&(N[0]=255&u,N[1]=u>>>8&255,a.check=We(a.check,N,2,0)),u=0,c=0,a.mode=16184;case 16184:if(1024&a.flags){for(;c<16;){if(0===o)break e;o--,u+=n[r++]<<c,c+=8}a.length=u,a.head&&(a.head.extra_len=u),512&a.flags&&4&a.wrap&&(N[0]=255&u,N[1]=u>>>8&255,a.check=We(a.check,N,2,0)),u=0,c=0}else a.head&&(a.head.extra=null);a.mode=16185;case 16185:if(1024&a.flags&&(h=a.length,h>o&&(h=o),h&&(a.head&&(A=a.head.extra_len-a.length,a.head.extra||(a.head.extra=new Uint8Array(a.head.extra_len)),a.head.extra.set(n.subarray(r,r+h),A)),512&a.flags&&4&a.wrap&&(a.check=We(a.check,n,h,r)),o-=h,r+=h,a.length-=h),a.length))break e;a.length=0,a.mode=16186;case 16186:if(2048&a.flags){if(0===o)break e;h=0;do{A=n[r+h++],a.head&&A&&a.length<65536&&(a.head.name+=String.fromCharCode(A))}while(A&&h<o);if(512&a.flags&&4&a.wrap&&(a.check=We(a.check,n,h,r)),o-=h,r+=h,A)break e}else a.head&&(a.head.name=null);a.length=0,a.mode=16187;case 16187:if(4096&a.flags){if(0===o)break e;h=0;do{A=n[r+h++],a.head&&A&&a.length<65536&&(a.head.comment+=String.fromCharCode(A))}while(A&&h<o);if(512&a.flags&&4&a.wrap&&(a.check=We(a.check,n,h,r)),o-=h,r+=h,A)break e}else a.head&&(a.head.comment=null);a.mode=16188;case 16188:if(512&a.flags){for(;c<16;){if(0===o)break e;o--,u+=n[r++]<<c,c+=8}if(4&a.wrap&&u!==(65535&a.check)){e.msg="header crc mismatch",a.mode=ja;break}u=0,c=0}a.head&&(a.head.hcrc=a.flags>>9&1,a.head.done=!0),e.adler=a.check=0,a.mode=La;break;case 16189:for(;c<32;){if(0===o)break e;o--,u+=n[r++]<<c,c+=8}e.adler=a.check=za(u),u=0,c=0,a.mode=Ra;case Ra:if(0===a.havedict)return e.next_out=s,e.avail_out=l,e.next_in=r,e.avail_in=o,a.hold=u,a.bits=c,xa;e.adler=a.check=1,a.mode=La;case La:if(t===Sa||t===Na)break e;case Pa:if(a.last){u>>>=7&c,c-=7&c,a.mode=Ua;break}for(;c<3;){if(0===o)break e;o--,u+=n[r++]<<c,c+=8}switch(a.last=1&u,u>>>=1,c-=1,3&u){case 0:a.mode=16193;break;case 1:if(Qa(a),a.mode=Oa,t===Na){u>>>=2,c-=2;break e}break;case 2:a.mode=16196;break;case 3:e.msg="invalid block type",a.mode=ja}u>>>=2,c-=2;break;case 16193:for(u>>>=7&c,c-=7&c;c<32;){if(0===o)break e;o--,u+=n[r++]<<c,c+=8}if((65535&u)!=(u>>>16^65535)){e.msg="invalid stored block lengths",a.mode=ja;break}if(a.length=65535&u,u=0,c=0,a.mode=Ba,t===Na)break e;case Ba:a.mode=16195;case 16195:if(h=a.length,h){if(h>o&&(h=o),h>l&&(h=l),0===h)break e;i.set(n.subarray(r,r+h),s),o-=h,r+=h,l-=h,s+=h,a.length-=h;break}a.mode=La;break;case 16196:for(;c<14;){if(0===o)break e;o--,u+=n[r++]<<c,c+=8}if(a.nlen=257+(31&u),u>>>=5,c-=5,a.ndist=1+(31&u),u>>>=5,c-=5,a.ncode=4+(15&u),u>>>=4,c-=4,a.nlen>286||a.ndist>30){e.msg="too many length or distance symbols",a.mode=ja;break}a.have=0,a.mode=16197;case 16197:for(;a.have<a.ncode;){for(;c<3;){if(0===o)break e;o--,u+=n[r++]<<c,c+=8}a.lens[x[a.have++]]=7&u,u>>>=3,c-=3}for(;a.have<19;)a.lens[x[a.have++]]=0;if(a.lencode=a.lendyn,a.lenbits=7,T={bits:a.lenbits},k=Aa(0,a.lens,0,19,a.lencode,0,a.work,T),a.lenbits=T.bits,k){e.msg="invalid code lengths set",a.mode=ja;break}a.have=0,a.mode=16198;case 16198:for(;a.have<a.nlen+a.ndist;){for(;S=a.lencode[u&(1<<a.lenbits)-1],y=S>>>24,g=S>>>16&255,b=65535&S,!(y<=c);){if(0===o)break e;o--,u+=n[r++]<<c,c+=8}if(b<16)u>>>=y,c-=y,a.lens[a.have++]=b;else{if(16===b){for(M=y+2;c<M;){if(0===o)break e;o--,u+=n[r++]<<c,c+=8}if(u>>>=y,c-=y,0===a.have){e.msg="invalid bit length repeat",a.mode=ja;break}A=a.lens[a.have-1],h=3+(3&u),u>>>=2,c-=2}else if(17===b){for(M=y+3;c<M;){if(0===o)break e;o--,u+=n[r++]<<c,c+=8}u>>>=y,c-=y,A=0,h=3+(7&u),u>>>=3,c-=3}else{for(M=y+7;c<M;){if(0===o)break e;o--,u+=n[r++]<<c,c+=8}u>>>=y,c-=y,A=0,h=11+(127&u),u>>>=7,c-=7}if(a.have+h>a.nlen+a.ndist){e.msg="invalid bit length repeat",a.mode=ja;break}for(;h--;)a.lens[a.have++]=A}}if(a.mode===ja)break;if(0===a.lens[256]){e.msg="invalid code -- missing end-of-block",a.mode=ja;break}if(a.lenbits=9,T={bits:a.lenbits},k=Aa(1,a.lens,0,a.nlen,a.lencode,0,a.work,T),a.lenbits=T.bits,k){e.msg="invalid literal/lengths set",a.mode=ja;break}if(a.distbits=6,a.distcode=a.distdyn,T={bits:a.distbits},k=Aa(2,a.lens,a.nlen,a.ndist,a.distcode,0,a.work,T),a.distbits=T.bits,k){e.msg="invalid distances set",a.mode=ja;break}if(a.mode=Oa,t===Na)break e;case Oa:a.mode=$a;case $a:if(o>=6&&l>=258){e.next_out=s,e.avail_out=l,e.next_in=r,e.avail_in=o,a.hold=u,a.bits=c,ya(e,p),s=e.next_out,i=e.output,l=e.avail_out,r=e.next_in,n=e.input,o=e.avail_in,u=a.hold,c=a.bits,a.mode===La&&(a.back=-1);break}for(a.back=0;S=a.lencode[u&(1<<a.lenbits)-1],y=S>>>24,g=S>>>16&255,b=65535&S,!(y<=c);){if(0===o)break e;o--,u+=n[r++]<<c,c+=8}if(g&&!(240&g)){for(v=y,_=g,w=b;S=a.lencode[w+((u&(1<<v+_)-1)>>v)],y=S>>>24,g=S>>>16&255,b=65535&S,!(v+y<=c);){if(0===o)break e;o--,u+=n[r++]<<c,c+=8}u>>>=v,c-=v,a.back+=v}if(u>>>=y,c-=y,a.back+=y,a.length=b,0===g){a.mode=16205;break}if(32&g){a.back=-1,a.mode=La;break}if(64&g){e.msg="invalid literal/length code",a.mode=ja;break}a.extra=15&g,a.mode=16201;case 16201:if(a.extra){for(M=a.extra;c<M;){if(0===o)break e;o--,u+=n[r++]<<c,c+=8}a.length+=u&(1<<a.extra)-1,u>>>=a.extra,c-=a.extra,a.back+=a.extra}a.was=a.length,a.mode=16202;case 16202:for(;S=a.distcode[u&(1<<a.distbits)-1],y=S>>>24,g=S>>>16&255,b=65535&S,!(y<=c);){if(0===o)break e;o--,u+=n[r++]<<c,c+=8}if(!(240&g)){for(v=y,_=g,w=b;S=a.distcode[w+((u&(1<<v+_)-1)>>v)],y=S>>>24,g=S>>>16&255,b=65535&S,!(v+y<=c);){if(0===o)break e;o--,u+=n[r++]<<c,c+=8}u>>>=v,c-=v,a.back+=v}if(u>>>=y,c-=y,a.back+=y,64&g){e.msg="invalid distance code",a.mode=ja;break}a.offset=b,a.extra=15&g,a.mode=16203;case 16203:if(a.extra){for(M=a.extra;c<M;){if(0===o)break e;o--,u+=n[r++]<<c,c+=8}a.offset+=u&(1<<a.extra)-1,u>>>=a.extra,c-=a.extra,a.back+=a.extra}if(a.offset>a.dmax){e.msg="invalid distance too far back",a.mode=ja;break}a.mode=16204;case 16204:if(0===l)break e;if(h=p-l,a.offset>h){if(h=a.offset-h,h>a.whave&&a.sane){e.msg="invalid distance too far back",a.mode=ja;break}h>a.wnext?(h-=a.wnext,f=a.wsize-h):f=a.wnext-h,h>a.length&&(h=a.length),m=a.window}else m=i,f=s-a.offset,h=a.length;h>l&&(h=l),l-=h,a.length-=h;do{i[s++]=m[f++]}while(--h);0===a.length&&(a.mode=$a);break;case 16205:if(0===l)break e;i[s++]=a.length,l--,a.mode=$a;break;case Ua:if(a.wrap){for(;c<32;){if(0===o)break e;o--,u|=n[r++]<<c,c+=8}if(p-=l,e.total_out+=p,a.total+=p,4&a.wrap&&p&&(e.adler=a.check=a.flags?We(a.check,i,p,s-p):je(a.check,i,p,s-p)),p=l,4&a.wrap&&(a.flags?u:za(u))!==a.check){e.msg="incorrect data check",a.mode=ja;break}u=0,c=0}a.mode=16207;case 16207:if(a.wrap&&a.flags){for(;c<32;){if(0===o)break e;o--,u+=n[r++]<<c,c+=8}if(4&a.wrap&&u!==(4294967295&a.total)){e.msg="incorrect length check",a.mode=ja;break}u=0,c=0}a.mode=16208;case 16208:k=Ma;break e;case ja:k=Ia;break e;case 16210:return Va;default:return Ca}return e.next_out=s,e.avail_out=l,e.next_in=r,e.avail_in=o,a.hold=u,a.bits=c,(a.wsize||p!==e.avail_out&&a.mode<ja&&(a.mode<Ua||t!==ka))&&en(e,e.output,e.next_out,p-e.avail_out),d-=e.avail_in,p-=e.avail_out,e.total_in+=d,e.total_out+=p,a.total+=p,4&a.wrap&&p&&(e.adler=a.check=a.flags?We(a.check,i,p,e.next_out-p):je(a.check,i,p,e.next_out-p)),e.data_type=a.bits+(a.last?64:0)+(a.mode===La?128:0)+(a.mode===Oa||a.mode===Ba?256:0),(0===d&&0===p||t===ka)&&k===Ta&&(k=Ea),k},an={inflateReset:Ga,inflateReset2:qa,inflateResetKeep:Ha,inflateInit:e=>Za(e,15),inflateInit2:Za,inflate:tn,inflateEnd:e=>{if(Ya(e))return Ca;let t=e.state;return t.window&&(t.window=null),e.state=null,Ta},inflateGetHeader:(e,t)=>{if(Ya(e))return Ca;const a=e.state;return 2&a.wrap?(a.head=t,t.done=!1,Ta):Ca},inflateSetDictionary:(e,t)=>{const a=t.length;let n,i,r;return Ya(e)?Ca:(n=e.state,0!==n.wrap&&n.mode!==Ra?Ca:n.mode===Ra&&(i=1,i=je(i,t,a,0),i!==n.check)?Ia:(r=en(e,t,a,a),r?(n.mode=16210,Va):(n.havedict=1,Ta)))},inflateInfo:"pako inflate (from Nodeca project)"};var nn=function(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name="",this.comment="",this.hcrc=0,this.done=!1};const rn=Object.prototype.toString,{Z_NO_FLUSH:sn,Z_FINISH:on,Z_OK:ln,Z_STREAM_END:un,Z_NEED_DICT:cn,Z_STREAM_ERROR:dn,Z_DATA_ERROR:pn,Z_MEM_ERROR:hn}=He;function fn(e){this.options=Ht({chunkSize:65536,windowBits:15,to:""},e||{});const t=this.options;t.raw&&t.windowBits>=0&&t.windowBits<16&&(t.windowBits=-t.windowBits,0===t.windowBits&&(t.windowBits=-15)),!(t.windowBits>=0&&t.windowBits<16)||e&&e.windowBits||(t.windowBits+=32),t.windowBits>15&&t.windowBits<48&&(15&t.windowBits||(t.windowBits|=15)),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new Qt,this.strm.avail_out=0;let a=an.inflateInit2(this.strm,t.windowBits);if(a!==ln)throw new Error(Ye[a]);if(this.header=new nn,an.inflateGetHeader(this.strm,this.header),t.dictionary&&("string"==typeof t.dictionary?t.dictionary=Jt(t.dictionary):"[object ArrayBuffer]"===rn.call(t.dictionary)&&(t.dictionary=new Uint8Array(t.dictionary)),t.raw&&(a=an.inflateSetDictionary(this.strm,t.dictionary),a!==ln)))throw new Error(Ye[a])}function mn(e,t){const a=new fn(t);if(a.push(e),a.err)throw a.msg||Ye[a.err];return a.result}fn.prototype.push=function(e,t){const a=this.strm,n=this.options.chunkSize,i=this.options.dictionary;let r,s,o;if(this.ended)return!1;for(s=t===~~t?t:!0===t?on:sn,"[object ArrayBuffer]"===rn.call(e)?a.input=new Uint8Array(e):a.input=e,a.next_in=0,a.avail_in=a.input.length;;){for(0===a.avail_out&&(a.output=new Uint8Array(n),a.next_out=0,a.avail_out=n),r=an.inflate(a,s),r===cn&&i&&(r=an.inflateSetDictionary(a,i),r===ln?r=an.inflate(a,s):r===pn&&(r=cn));a.avail_in>0&&r===un&&a.state.wrap>0&&0!==e[a.next_in];)an.inflateReset(a),r=an.inflate(a,s);switch(r){case dn:case pn:case cn:case hn:return this.onEnd(r),this.ended=!0,!1}if(o=a.avail_out,a.next_out&&(0===a.avail_out||r===un))if("string"===this.options.to){let e=Xt(a.output,a.next_out),t=a.next_out-e,i=Kt(a.output,e);a.next_out=t,a.avail_out=n-t,t&&a.output.set(a.output.subarray(e,e+t),0),this.onData(i)}else this.onData(a.output.length===a.next_out?a.output:a.output.subarray(0,a.next_out));if(r!==ln||0!==o){if(r===un)return r=an.inflateEnd(this.strm),this.onEnd(r),this.ended=!0,!0;if(0===a.avail_in)break}}return!0},fn.prototype.onData=function(e){this.chunks.push(e)},fn.prototype.onEnd=function(e){e===ln&&("string"===this.options.to?this.result=this.chunks.join(""):this.result=Gt(this.chunks)),this.chunks=[],this.err=e,this.msg=this.strm.msg};var yn=function(e,t){return(t=t||{}).raw=!0,mn(e,t)},gn={Inflate:fn,inflate:mn,inflateRaw:yn,ungzip:mn};const{Deflate:bn,deflate:vn,deflateRaw:_n,gzip:wn}=fa,{Inflate:An,inflate:kn,inflateRaw:Sn,ungzip:Nn}=gn;var Tn={Deflate:bn,deflate:vn,deflateRaw:_n,gzip:wn,Inflate:An,inflate:kn,inflateRaw:Sn,ungzip:Nn,constants:He},Mn="undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{},xn=[],Cn=[],In="undefined"!=typeof Uint8Array?Uint8Array:Array,Vn=!1;function En(){Vn=!0;for(var e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",t=0;t<64;++t)xn[t]=e[t],Cn[e.charCodeAt(t)]=t;Cn["-".charCodeAt(0)]=62,Cn["_".charCodeAt(0)]=63}function Fn(e,t,a){for(var n,i,r=[],s=t;s<a;s+=3)n=(e[s]<<16)+(e[s+1]<<8)+e[s+2],r.push(xn[(i=n)>>18&63]+xn[i>>12&63]+xn[i>>6&63]+xn[63&i]);return r.join("")}function Dn(e){var t;Vn||En();for(var a=e.length,n=a%3,i="",r=[],s=16383,o=0,l=a-n;o<l;o+=s)r.push(Fn(e,o,o+s>l?l:o+s));return 1===n?(t=e[a-1],i+=xn[t>>2],i+=xn[t<<4&63],i+="=="):2===n&&(t=(e[a-2]<<8)+e[a-1],i+=xn[t>>10],i+=xn[t>>4&63],i+=xn[t<<2&63],i+="="),r.push(i),r.join("")}function Rn(e,t,a,n,i){var r,s,o=8*i-n-1,l=(1<<o)-1,u=l>>1,c=-7,d=a?i-1:0,p=a?-1:1,h=e[t+d];for(d+=p,r=h&(1<<-c)-1,h>>=-c,c+=o;c>0;r=256*r+e[t+d],d+=p,c-=8);for(s=r&(1<<-c)-1,r>>=-c,c+=n;c>0;s=256*s+e[t+d],d+=p,c-=8);if(0===r)r=1-u;else{if(r===l)return s?NaN:1/0*(h?-1:1);s+=Math.pow(2,n),r-=u}return(h?-1:1)*s*Math.pow(2,r-n)}function Ln(e,t,a,n,i,r){var s,o,l,u=8*r-i-1,c=(1<<u)-1,d=c>>1,p=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,h=n?0:r-1,f=n?1:-1,m=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(o=isNaN(t)?1:0,s=c):(s=Math.floor(Math.log(t)/Math.LN2),t*(l=Math.pow(2,-s))<1&&(s--,l*=2),(t+=s+d>=1?p/l:p*Math.pow(2,1-d))*l>=2&&(s++,l/=2),s+d>=c?(o=0,s=c):s+d>=1?(o=(t*l-1)*Math.pow(2,i),s+=d):(o=t*Math.pow(2,d-1)*Math.pow(2,i),s=0));i>=8;e[a+h]=255&o,h+=f,o/=256,i-=8);for(s=s<<i|o,u+=i;u>0;e[a+h]=255&s,h+=f,s/=256,u-=8);e[a+h-f]|=128*m}var Pn={}.toString,Bn=Array.isArray||function(e){return"[object Array]"==Pn.call(e)};function On(){return Un.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function $n(e,t){if(On()<t)throw new RangeError("Invalid typed array length");return Un.TYPED_ARRAY_SUPPORT?(e=new Uint8Array(t)).__proto__=Un.prototype:(null===e&&(e=new Un(t)),e.length=t),e}function Un(e,t,a){if(!(Un.TYPED_ARRAY_SUPPORT||this instanceof Un))return new Un(e,t,a);if("number"==typeof e){if("string"==typeof t)throw new Error("If encoding is specified then the first argument must be a string");return Wn(this,e)}return jn(this,e,t,a)}function jn(e,t,a,n){if("number"==typeof t)throw new TypeError('"value" argument must not be a number');return"undefined"!=typeof ArrayBuffer&&t instanceof ArrayBuffer?function(e,t,a,n){if(t.byteLength,a<0||t.byteLength<a)throw new RangeError("'offset' is out of bounds");if(t.byteLength<a+(n||0))throw new RangeError("'length' is out of bounds");t=void 0===a&&void 0===n?new Uint8Array(t):void 0===n?new Uint8Array(t,a):new Uint8Array(t,a,n);Un.TYPED_ARRAY_SUPPORT?(e=t).__proto__=Un.prototype:e=Yn(e,t);return e}(e,t,a,n):"string"==typeof t?function(e,t,a){"string"==typeof a&&""!==a||(a="utf8");if(!Un.isEncoding(a))throw new TypeError('"encoding" must be a valid string encoding');var n=0|qn(t,a);e=$n(e,n);var i=e.write(t,a);i!==n&&(e=e.slice(0,i));return e}(e,t,a):function(e,t){if(Gn(t)){var a=0|Hn(t.length);return 0===(e=$n(e,a)).length||t.copy(e,0,0,a),e}if(t){if("undefined"!=typeof ArrayBuffer&&t.buffer instanceof ArrayBuffer||"length"in t)return"number"!=typeof t.length||(n=t.length)!=n?$n(e,0):Yn(e,t);if("Buffer"===t.type&&Bn(t.data))return Yn(e,t.data)}var n;throw new TypeError("First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.")}(e,t)}function zn(e){if("number"!=typeof e)throw new TypeError('"size" argument must be a number');if(e<0)throw new RangeError('"size" argument must not be negative')}function Wn(e,t){if(zn(t),e=$n(e,t<0?0:0|Hn(t)),!Un.TYPED_ARRAY_SUPPORT)for(var a=0;a<t;++a)e[a]=0;return e}function Yn(e,t){var a=t.length<0?0:0|Hn(t.length);e=$n(e,a);for(var n=0;n<a;n+=1)e[n]=255&t[n];return e}function Hn(e){if(e>=On())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+On().toString(16)+" bytes");return 0|e}function Gn(e){return!(null==e||!e._isBuffer)}function qn(e,t){if(Gn(e))return e.length;if("undefined"!=typeof ArrayBuffer&&"function"==typeof ArrayBuffer.isView&&(ArrayBuffer.isView(e)||e instanceof ArrayBuffer))return e.byteLength;"string"!=typeof e&&(e=""+e);var a=e.length;if(0===a)return 0;for(var n=!1;;)switch(t){case"ascii":case"latin1":case"binary":return a;case"utf8":case"utf-8":case void 0:return wi(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*a;case"hex":return a>>>1;case"base64":return Ai(e).length;default:if(n)return wi(e).length;t=(""+t).toLowerCase(),n=!0}}function Zn(e,t,a){var n=!1;if((void 0===t||t<0)&&(t=0),t>this.length)return"";if((void 0===a||a>this.length)&&(a=this.length),a<=0)return"";if((a>>>=0)<=(t>>>=0))return"";for(e||(e="utf8");;)switch(e){case"hex":return ci(this,t,a);case"utf8":case"utf-8":return si(this,t,a);case"ascii":return li(this,t,a);case"latin1":case"binary":return ui(this,t,a);case"base64":return ri(this,t,a);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return di(this,t,a);default:if(n)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),n=!0}}function Jn(e,t,a){var n=e[t];e[t]=e[a],e[a]=n}function Kn(e,t,a,n,i){if(0===e.length)return-1;if("string"==typeof a?(n=a,a=0):a>2147483647?a=2147483647:a<-2147483648&&(a=-2147483648),a=+a,isNaN(a)&&(a=i?0:e.length-1),a<0&&(a=e.length+a),a>=e.length){if(i)return-1;a=e.length-1}else if(a<0){if(!i)return-1;a=0}if("string"==typeof t&&(t=Un.from(t,n)),Gn(t))return 0===t.length?-1:Xn(e,t,a,n,i);if("number"==typeof t)return t&=255,Un.TYPED_ARRAY_SUPPORT&&"function"==typeof Uint8Array.prototype.indexOf?i?Uint8Array.prototype.indexOf.call(e,t,a):Uint8Array.prototype.lastIndexOf.call(e,t,a):Xn(e,[t],a,n,i);throw new TypeError("val must be string, number or Buffer")}function Xn(e,t,a,n,i){var r,s=1,o=e.length,l=t.length;if(void 0!==n&&("ucs2"===(n=String(n).toLowerCase())||"ucs-2"===n||"utf16le"===n||"utf-16le"===n)){if(e.length<2||t.length<2)return-1;s=2,o/=2,l/=2,a/=2}function u(e,t){return 1===s?e[t]:e.readUInt16BE(t*s)}if(i){var c=-1;for(r=a;r<o;r++)if(u(e,r)===u(t,-1===c?0:r-c)){if(-1===c&&(c=r),r-c+1===l)return c*s}else-1!==c&&(r-=r-c),c=-1}else for(a+l>o&&(a=o-l),r=a;r>=0;r--){for(var d=!0,p=0;p<l;p++)if(u(e,r+p)!==u(t,p)){d=!1;break}if(d)return r}return-1}function Qn(e,t,a,n){a=Number(a)||0;var i=e.length-a;n?(n=Number(n))>i&&(n=i):n=i;var r=t.length;if(r%2!=0)throw new TypeError("Invalid hex string");n>r/2&&(n=r/2);for(var s=0;s<n;++s){var o=parseInt(t.substr(2*s,2),16);if(isNaN(o))return s;e[a+s]=o}return s}function ei(e,t,a,n){return ki(wi(t,e.length-a),e,a,n)}function ti(e,t,a,n){return ki(function(e){for(var t=[],a=0;a<e.length;++a)t.push(255&e.charCodeAt(a));return t}(t),e,a,n)}function ai(e,t,a,n){return ti(e,t,a,n)}function ni(e,t,a,n){return ki(Ai(t),e,a,n)}function ii(e,t,a,n){return ki(function(e,t){for(var a,n,i,r=[],s=0;s<e.length&&!((t-=2)<0);++s)n=(a=e.charCodeAt(s))>>8,i=a%256,r.push(i),r.push(n);return r}(t,e.length-a),e,a,n)}function ri(e,t,a){return 0===t&&a===e.length?Dn(e):Dn(e.slice(t,a))}function si(e,t,a){a=Math.min(e.length,a);for(var n=[],i=t;i<a;){var r,s,o,l,u=e[i],c=null,d=u>239?4:u>223?3:u>191?2:1;if(i+d<=a)switch(d){case 1:u<128&&(c=u);break;case 2:128==(192&(r=e[i+1]))&&(l=(31&u)<<6|63&r)>127&&(c=l);break;case 3:r=e[i+1],s=e[i+2],128==(192&r)&&128==(192&s)&&(l=(15&u)<<12|(63&r)<<6|63&s)>2047&&(l<55296||l>57343)&&(c=l);break;case 4:r=e[i+1],s=e[i+2],o=e[i+3],128==(192&r)&&128==(192&s)&&128==(192&o)&&(l=(15&u)<<18|(63&r)<<12|(63&s)<<6|63&o)>65535&&l<1114112&&(c=l)}null===c?(c=65533,d=1):c>65535&&(c-=65536,n.push(c>>>10&1023|55296),c=56320|1023&c),n.push(c),i+=d}return function(e){var t=e.length;if(t<=oi)return String.fromCharCode.apply(String,e);var a="",n=0;for(;n<t;)a+=String.fromCharCode.apply(String,e.slice(n,n+=oi));return a}(n)}Un.TYPED_ARRAY_SUPPORT=void 0===Mn.TYPED_ARRAY_SUPPORT||Mn.TYPED_ARRAY_SUPPORT,On(),Un.poolSize=8192,Un._augment=function(e){return e.__proto__=Un.prototype,e},Un.from=function(e,t,a){return jn(null,e,t,a)},Un.TYPED_ARRAY_SUPPORT&&(Un.prototype.__proto__=Uint8Array.prototype,Un.__proto__=Uint8Array),Un.alloc=function(e,t,a){return function(e,t,a,n){return zn(t),t<=0?$n(e,t):void 0!==a?"string"==typeof n?$n(e,t).fill(a,n):$n(e,t).fill(a):$n(e,t)}(null,e,t,a)},Un.allocUnsafe=function(e){return Wn(null,e)},Un.allocUnsafeSlow=function(e){return Wn(null,e)},Un.isBuffer=function(e){return null!=e&&(!!e._isBuffer||Si(e)||function(e){return"function"==typeof e.readFloatLE&&"function"==typeof e.slice&&Si(e.slice(0,0))}(e))},Un.compare=function(e,t){if(!Gn(e)||!Gn(t))throw new TypeError("Arguments must be Buffers");if(e===t)return 0;for(var a=e.length,n=t.length,i=0,r=Math.min(a,n);i<r;++i)if(e[i]!==t[i]){a=e[i],n=t[i];break}return a<n?-1:n<a?1:0},Un.isEncoding=function(e){switch(String(e).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}},Un.concat=function(e,t){if(!Bn(e))throw new TypeError('"list" argument must be an Array of Buffers');if(0===e.length)return Un.alloc(0);var a;if(void 0===t)for(t=0,a=0;a<e.length;++a)t+=e[a].length;var n=Un.allocUnsafe(t),i=0;for(a=0;a<e.length;++a){var r=e[a];if(!Gn(r))throw new TypeError('"list" argument must be an Array of Buffers');r.copy(n,i),i+=r.length}return n},Un.byteLength=qn,Un.prototype._isBuffer=!0,Un.prototype.swap16=function(){var e=this.length;if(e%2!=0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var t=0;t<e;t+=2)Jn(this,t,t+1);return this},Un.prototype.swap32=function(){var e=this.length;if(e%4!=0)throw new RangeError("Buffer size must be a multiple of 32-bits");for(var t=0;t<e;t+=4)Jn(this,t,t+3),Jn(this,t+1,t+2);return this},Un.prototype.swap64=function(){var e=this.length;if(e%8!=0)throw new RangeError("Buffer size must be a multiple of 64-bits");for(var t=0;t<e;t+=8)Jn(this,t,t+7),Jn(this,t+1,t+6),Jn(this,t+2,t+5),Jn(this,t+3,t+4);return this},Un.prototype.toString=function(){var e=0|this.length;return 0===e?"":0===arguments.length?si(this,0,e):Zn.apply(this,arguments)},Un.prototype.equals=function(e){if(!Gn(e))throw new TypeError("Argument must be a Buffer");return this===e||0===Un.compare(this,e)},Un.prototype.inspect=function(){var e="";return this.length>0&&(e=this.toString("hex",0,50).match(/.{2}/g).join(" "),this.length>50&&(e+=" ... ")),"<Buffer "+e+">"},Un.prototype.compare=function(e,t,a,n,i){if(!Gn(e))throw new TypeError("Argument must be a Buffer");if(void 0===t&&(t=0),void 0===a&&(a=e?e.length:0),void 0===n&&(n=0),void 0===i&&(i=this.length),t<0||a>e.length||n<0||i>this.length)throw new RangeError("out of range index");if(n>=i&&t>=a)return 0;if(n>=i)return-1;if(t>=a)return 1;if(this===e)return 0;for(var r=(i>>>=0)-(n>>>=0),s=(a>>>=0)-(t>>>=0),o=Math.min(r,s),l=this.slice(n,i),u=e.slice(t,a),c=0;c<o;++c)if(l[c]!==u[c]){r=l[c],s=u[c];break}return r<s?-1:s<r?1:0},Un.prototype.includes=function(e,t,a){return-1!==this.indexOf(e,t,a)},Un.prototype.indexOf=function(e,t,a){return Kn(this,e,t,a,!0)},Un.prototype.lastIndexOf=function(e,t,a){return Kn(this,e,t,a,!1)},Un.prototype.write=function(e,t,a,n){if(void 0===t)n="utf8",a=this.length,t=0;else if(void 0===a&&"string"==typeof t)n=t,a=this.length,t=0;else{if(!isFinite(t))throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");t|=0,isFinite(a)?(a|=0,void 0===n&&(n="utf8")):(n=a,a=void 0)}var i=this.length-t;if((void 0===a||a>i)&&(a=i),e.length>0&&(a<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");n||(n="utf8");for(var r=!1;;)switch(n){case"hex":return Qn(this,e,t,a);case"utf8":case"utf-8":return ei(this,e,t,a);case"ascii":return ti(this,e,t,a);case"latin1":case"binary":return ai(this,e,t,a);case"base64":return ni(this,e,t,a);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return ii(this,e,t,a);default:if(r)throw new TypeError("Unknown encoding: "+n);n=(""+n).toLowerCase(),r=!0}},Un.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var oi=4096;function li(e,t,a){var n="";a=Math.min(e.length,a);for(var i=t;i<a;++i)n+=String.fromCharCode(127&e[i]);return n}function ui(e,t,a){var n="";a=Math.min(e.length,a);for(var i=t;i<a;++i)n+=String.fromCharCode(e[i]);return n}function ci(e,t,a){var n=e.length;(!t||t<0)&&(t=0),(!a||a<0||a>n)&&(a=n);for(var i="",r=t;r<a;++r)i+=_i(e[r]);return i}function di(e,t,a){for(var n=e.slice(t,a),i="",r=0;r<n.length;r+=2)i+=String.fromCharCode(n[r]+256*n[r+1]);return i}function pi(e,t,a){if(e%1!=0||e<0)throw new RangeError("offset is not uint");if(e+t>a)throw new RangeError("Trying to access beyond buffer length")}function hi(e,t,a,n,i,r){if(!Gn(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>i||t<r)throw new RangeError('"value" argument is out of bounds');if(a+n>e.length)throw new RangeError("Index out of range")}function fi(e,t,a,n){t<0&&(t=65535+t+1);for(var i=0,r=Math.min(e.length-a,2);i<r;++i)e[a+i]=(t&255<<8*(n?i:1-i))>>>8*(n?i:1-i)}function mi(e,t,a,n){t<0&&(t=4294967295+t+1);for(var i=0,r=Math.min(e.length-a,4);i<r;++i)e[a+i]=t>>>8*(n?i:3-i)&255}function yi(e,t,a,n,i,r){if(a+n>e.length)throw new RangeError("Index out of range");if(a<0)throw new RangeError("Index out of range")}function gi(e,t,a,n,i){return i||yi(e,0,a,4),Ln(e,t,a,n,23,4),a+4}function bi(e,t,a,n,i){return i||yi(e,0,a,8),Ln(e,t,a,n,52,8),a+8}Un.prototype.slice=function(e,t){var a,n=this.length;if((e=~~e)<0?(e+=n)<0&&(e=0):e>n&&(e=n),(t=void 0===t?n:~~t)<0?(t+=n)<0&&(t=0):t>n&&(t=n),t<e&&(t=e),Un.TYPED_ARRAY_SUPPORT)(a=this.subarray(e,t)).__proto__=Un.prototype;else{var i=t-e;a=new Un(i,void 0);for(var r=0;r<i;++r)a[r]=this[r+e]}return a},Un.prototype.readUIntLE=function(e,t,a){e|=0,t|=0,a||pi(e,t,this.length);for(var n=this[e],i=1,r=0;++r<t&&(i*=256);)n+=this[e+r]*i;return n},Un.prototype.readUIntBE=function(e,t,a){e|=0,t|=0,a||pi(e,t,this.length);for(var n=this[e+--t],i=1;t>0&&(i*=256);)n+=this[e+--t]*i;return n},Un.prototype.readUInt8=function(e,t){return t||pi(e,1,this.length),this[e]},Un.prototype.readUInt16LE=function(e,t){return t||pi(e,2,this.length),this[e]|this[e+1]<<8},Un.prototype.readUInt16BE=function(e,t){return t||pi(e,2,this.length),this[e]<<8|this[e+1]},Un.prototype.readUInt32LE=function(e,t){return t||pi(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+16777216*this[e+3]},Un.prototype.readUInt32BE=function(e,t){return t||pi(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},Un.prototype.readIntLE=function(e,t,a){e|=0,t|=0,a||pi(e,t,this.length);for(var n=this[e],i=1,r=0;++r<t&&(i*=256);)n+=this[e+r]*i;return n>=(i*=128)&&(n-=Math.pow(2,8*t)),n},Un.prototype.readIntBE=function(e,t,a){e|=0,t|=0,a||pi(e,t,this.length);for(var n=t,i=1,r=this[e+--n];n>0&&(i*=256);)r+=this[e+--n]*i;return r>=(i*=128)&&(r-=Math.pow(2,8*t)),r},Un.prototype.readInt8=function(e,t){return t||pi(e,1,this.length),128&this[e]?-1*(255-this[e]+1):this[e]},Un.prototype.readInt16LE=function(e,t){t||pi(e,2,this.length);var a=this[e]|this[e+1]<<8;return 32768&a?4294901760|a:a},Un.prototype.readInt16BE=function(e,t){t||pi(e,2,this.length);var a=this[e+1]|this[e]<<8;return 32768&a?4294901760|a:a},Un.prototype.readInt32LE=function(e,t){return t||pi(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},Un.prototype.readInt32BE=function(e,t){return t||pi(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},Un.prototype.readFloatLE=function(e,t){return t||pi(e,4,this.length),Rn(this,e,!0,23,4)},Un.prototype.readFloatBE=function(e,t){return t||pi(e,4,this.length),Rn(this,e,!1,23,4)},Un.prototype.readDoubleLE=function(e,t){return t||pi(e,8,this.length),Rn(this,e,!0,52,8)},Un.prototype.readDoubleBE=function(e,t){return t||pi(e,8,this.length),Rn(this,e,!1,52,8)},Un.prototype.writeUIntLE=function(e,t,a,n){(e=+e,t|=0,a|=0,n)||hi(this,e,t,a,Math.pow(2,8*a)-1,0);var i=1,r=0;for(this[t]=255&e;++r<a&&(i*=256);)this[t+r]=e/i&255;return t+a},Un.prototype.writeUIntBE=function(e,t,a,n){(e=+e,t|=0,a|=0,n)||hi(this,e,t,a,Math.pow(2,8*a)-1,0);var i=a-1,r=1;for(this[t+i]=255&e;--i>=0&&(r*=256);)this[t+i]=e/r&255;return t+a},Un.prototype.writeUInt8=function(e,t,a){return e=+e,t|=0,a||hi(this,e,t,1,255,0),Un.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),this[t]=255&e,t+1},Un.prototype.writeUInt16LE=function(e,t,a){return e=+e,t|=0,a||hi(this,e,t,2,65535,0),Un.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):fi(this,e,t,!0),t+2},Un.prototype.writeUInt16BE=function(e,t,a){return e=+e,t|=0,a||hi(this,e,t,2,65535,0),Un.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):fi(this,e,t,!1),t+2},Un.prototype.writeUInt32LE=function(e,t,a){return e=+e,t|=0,a||hi(this,e,t,4,4294967295,0),Un.TYPED_ARRAY_SUPPORT?(this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=255&e):mi(this,e,t,!0),t+4},Un.prototype.writeUInt32BE=function(e,t,a){return e=+e,t|=0,a||hi(this,e,t,4,4294967295,0),Un.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):mi(this,e,t,!1),t+4},Un.prototype.writeIntLE=function(e,t,a,n){if(e=+e,t|=0,!n){var i=Math.pow(2,8*a-1);hi(this,e,t,a,i-1,-i)}var r=0,s=1,o=0;for(this[t]=255&e;++r<a&&(s*=256);)e<0&&0===o&&0!==this[t+r-1]&&(o=1),this[t+r]=(e/s|0)-o&255;return t+a},Un.prototype.writeIntBE=function(e,t,a,n){if(e=+e,t|=0,!n){var i=Math.pow(2,8*a-1);hi(this,e,t,a,i-1,-i)}var r=a-1,s=1,o=0;for(this[t+r]=255&e;--r>=0&&(s*=256);)e<0&&0===o&&0!==this[t+r+1]&&(o=1),this[t+r]=(e/s|0)-o&255;return t+a},Un.prototype.writeInt8=function(e,t,a){return e=+e,t|=0,a||hi(this,e,t,1,127,-128),Un.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),e<0&&(e=255+e+1),this[t]=255&e,t+1},Un.prototype.writeInt16LE=function(e,t,a){return e=+e,t|=0,a||hi(this,e,t,2,32767,-32768),Un.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):fi(this,e,t,!0),t+2},Un.prototype.writeInt16BE=function(e,t,a){return e=+e,t|=0,a||hi(this,e,t,2,32767,-32768),Un.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):fi(this,e,t,!1),t+2},Un.prototype.writeInt32LE=function(e,t,a){return e=+e,t|=0,a||hi(this,e,t,4,2147483647,-2147483648),Un.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24):mi(this,e,t,!0),t+4},Un.prototype.writeInt32BE=function(e,t,a){return e=+e,t|=0,a||hi(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),Un.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):mi(this,e,t,!1),t+4},Un.prototype.writeFloatLE=function(e,t,a){return gi(this,e,t,!0,a)},Un.prototype.writeFloatBE=function(e,t,a){return gi(this,e,t,!1,a)},Un.prototype.writeDoubleLE=function(e,t,a){return bi(this,e,t,!0,a)},Un.prototype.writeDoubleBE=function(e,t,a){return bi(this,e,t,!1,a)},Un.prototype.copy=function(e,t,a,n){if(a||(a=0),n||0===n||(n=this.length),t>=e.length&&(t=e.length),t||(t=0),n>0&&n<a&&(n=a),n===a)return 0;if(0===e.length||0===this.length)return 0;if(t<0)throw new RangeError("targetStart out of bounds");if(a<0||a>=this.length)throw new RangeError("sourceStart out of bounds");if(n<0)throw new RangeError("sourceEnd out of bounds");n>this.length&&(n=this.length),e.length-t<n-a&&(n=e.length-t+a);var i,r=n-a;if(this===e&&a<t&&t<n)for(i=r-1;i>=0;--i)e[i+t]=this[i+a];else if(r<1e3||!Un.TYPED_ARRAY_SUPPORT)for(i=0;i<r;++i)e[i+t]=this[i+a];else Uint8Array.prototype.set.call(e,this.subarray(a,a+r),t);return r},Un.prototype.fill=function(e,t,a,n){if("string"==typeof e){if("string"==typeof t?(n=t,t=0,a=this.length):"string"==typeof a&&(n=a,a=this.length),1===e.length){var i=e.charCodeAt(0);i<256&&(e=i)}if(void 0!==n&&"string"!=typeof n)throw new TypeError("encoding must be a string");if("string"==typeof n&&!Un.isEncoding(n))throw new TypeError("Unknown encoding: "+n)}else"number"==typeof e&&(e&=255);if(t<0||this.length<t||this.length<a)throw new RangeError("Out of range index");if(a<=t)return this;var r;if(t>>>=0,a=void 0===a?this.length:a>>>0,e||(e=0),"number"==typeof e)for(r=t;r<a;++r)this[r]=e;else{var s=Gn(e)?e:wi(new Un(e,n).toString()),o=s.length;for(r=0;r<a-t;++r)this[r+t]=s[r%o]}return this};var vi=/[^+\/0-9A-Za-z-_]/g;function _i(e){return e<16?"0"+e.toString(16):e.toString(16)}function wi(e,t){var a;t=t||1/0;for(var n=e.length,i=null,r=[],s=0;s<n;++s){if((a=e.charCodeAt(s))>55295&&a<57344){if(!i){if(a>56319){(t-=3)>-1&&r.push(239,191,189);continue}if(s+1===n){(t-=3)>-1&&r.push(239,191,189);continue}i=a;continue}if(a<56320){(t-=3)>-1&&r.push(239,191,189),i=a;continue}a=65536+(i-55296<<10|a-56320)}else i&&(t-=3)>-1&&r.push(239,191,189);if(i=null,a<128){if((t-=1)<0)break;r.push(a)}else if(a<2048){if((t-=2)<0)break;r.push(a>>6|192,63&a|128)}else if(a<65536){if((t-=3)<0)break;r.push(a>>12|224,a>>6&63|128,63&a|128)}else{if(!(a<1114112))throw new Error("Invalid code point");if((t-=4)<0)break;r.push(a>>18|240,a>>12&63|128,a>>6&63|128,63&a|128)}}return r}function Ai(e){return function(e){var t,a,n,i,r,s;Vn||En();var o=e.length;if(o%4>0)throw new Error("Invalid string. Length must be a multiple of 4");r="="===e[o-2]?2:"="===e[o-1]?1:0,s=new In(3*o/4-r),n=r>0?o-4:o;var l=0;for(t=0,a=0;t<n;t+=4,a+=3)i=Cn[e.charCodeAt(t)]<<18|Cn[e.charCodeAt(t+1)]<<12|Cn[e.charCodeAt(t+2)]<<6|Cn[e.charCodeAt(t+3)],s[l++]=i>>16&255,s[l++]=i>>8&255,s[l++]=255&i;return 2===r?(i=Cn[e.charCodeAt(t)]<<2|Cn[e.charCodeAt(t+1)]>>4,s[l++]=255&i):1===r&&(i=Cn[e.charCodeAt(t)]<<10|Cn[e.charCodeAt(t+1)]<<4|Cn[e.charCodeAt(t+2)]>>2,s[l++]=i>>8&255,s[l++]=255&i),s}(function(e){if((e=function(e){return e.trim?e.trim():e.replace(/^\s+|\s+$/g,"")}(e).replace(vi,"")).length<2)return"";for(;e.length%4!=0;)e+="=";return e}(e))}function ki(e,t,a,n){for(var i=0;i<n&&!(i+a>=t.length||i>=e.length);++i)t[i+a]=e[i];return i}function Si(e){return!!e.constructor&&"function"==typeof e.constructor.isBuffer&&e.constructor.isBuffer(e)}const Ni={files:{},items:{},folders:{}};function Ti(e){return Ni.files[e]}function Mi(){return Ni.folders}function xi(e){return Ni.folders[e]}function Ci(e,t){for(const a of Object.values(Ni.folders))if(a.name===e&&a.parent===t)return a}function Ii(e,t){for(const a of Object.values(Ni.items))if(a.name===e&&a.folder._id===t)return a}function Vi(){return Ni.items}function Ei(e){return Ni.items[e]}function Fi(e,t){Ni.items[e]=t.rootItem;for(const[e,a]of Object.entries(t.metadata)){if(t.files[e]&&(Ni.files[e]={blob:new Blob([t.files[e]],{type:a.mimeType}),hash:a.hash,itemName:a.name,itemType:a.type,mimeType:a.mimeType}),a.attachments)for(const n of a.attachments){const a=Ri(e,n.name,n.queryParam,n.index);Ni.files[a]={blob:new Blob([t.files[a]],{type:n.mimeType}),hash:n.hash,itemName:n.name,itemType:n.type,mimeType:n.mimeType}}Ni.items[e]=a}for(const a of Object.values(t.folders))a._id=e+":"+a._id,a.parent=e+":"+a.parent,Ni.folders[a._id]=a}async function Di(e,t){const a=Un.from(await e.arrayBuffer());let n=0;n+=8;const i=a.readInt32LE(8);n+=4;const r=new TextDecoder,s=a.subarray(n,n+i);n+=i;const o=JSON.parse(r.decode(s));o.root=t+"/"+o.root;let l=0;const u=Tn.ungzip(a.subarray(n)),c=Un.from(u),d=c.subarray(l,l+o.metadataSize);l+=o.metadataSize;const p=JSON.parse(r.decode(d)),h={};Object.entries(p).forEach((([e,a])=>{const n=t+"/"+e;a._id=n,h[n]=a,a.folder._id=t+":"+a.folder._id;for(const e of a.links)e.to=t+"/"+e.to}));const f=c.subarray(l,l+o.foldersSize);l+=o.foldersSize;const m=JSON.parse(r.decode(f)),y={};for(const[,e]of Object.entries(h))if(e.filesize&&(y[e._id]={start:l+(e.packageFileOffset||0),end:l+(e.packageFileOffset||0)+e.filesize}),e.attachments)for(const t of e.attachments)y[Ri(e._id,t.name,t.queryParam,t.index)]={start:l+(t.packageFileOffset||0),end:l+(t.packageFileOffset||0)+t.filesize};const g={};for(const[e,t]of Object.entries(y)){const a=c.subarray(t.start,t.end);g[e]=a}const b=h[o.root],v=[],_=e=>{v.push(e._id);for(const t of e.links)t.item=structuredClone(h[t.to]),_(t.item)};return _(b),{rootItem:b,metadata:h,folders:m,files:g}}function Ri(e,t,a,n){return`${e}_${t}`+(null!=a?`_${a}`:"")+(null!=n?`_${n}`:"")}function Li(e,t,a,n){return Array.isArray(e.attachments)?e.attachments.filter((e=>e.name===t&&(void 0===n||e.index===n))).reduce(((e,t)=>Math.abs(t.queryParam-(a??0))<Math.abs(e.queryParam-(a??0))?t:e),{queryParam:1/0}):null}function Pi(e,t,a,n){const i=Ei(e);if(i){const r=Li(i,t,a,n);if(!r)return null;return Ti(Ri(e,r.name,r.queryParam,r.index))}}var Bi=Object.freeze({__proto__:null,addPackageToCache:Fi,createAttachmentID:Ri,findFolder:Ci,findItem:Ii,getAttachmentFromPackageCache:Pi,getFileFromCache:Ti,getFolder:xi,getFolders:Mi,getItemFromCache:Ei,getItems:Vi,parsePackage:Di,queryAttachments:Li});class Oi{id=h.createGUID();items=[]}class $i{itemRepo;undoEvents=[];redoEvents=[];maxUndoCount=100;enabled=!0;snapshots=new Map;_undoRedoPromise=Promise.resolve();constructor(e,t=100){this.itemRepo=e,this.maxUndoCount=t,g.instance.setUndoManager(this),u.$on("undoManager:undo",(e=>this.undo(e))),u.$on("undoManager:redo",(e=>this.redo(e)))}clear(){this.undoEvents=[],this.redoEvents=[],this.snapshots.clear(),u.$emit("undoManager:undoStepsChanged",0),u.$emit("undoManager:redoStepsChanged",0)}createSnapshot(){const e=new Oi;for(const t of this.itemRepo.itemInstances.values())for(const a of t.values())e.items.push({_id:a._id,instanceId:a.instanceId,data:this._grabSnapshot(a)});return this.snapshots.set(e.id,e),e.id}rollbackFromSnapshot(e){const t=this.snapshots.get(e);if(!t)throw new w("Snapshot not found");for(const e of t.items){const t=this.itemRepo.itemInstances.get(e._id);if(t){const a=t.get(e.instanceId);a?this._rollbackFromSnapshot(a,e.data):console.error(`[SNAPSHOT] - Trying to rollback snapshot for item but did not find the instance: ${e._id} -> ${e.instanceId}`)}else console.error(`[SNAPSHOT] - Trying to rollback snapshot for item but did not find the item map: ${e._id}`)}this.snapshots.delete(e)}_grabSnapshot(e){const t=[];for(const a of e.fieldInstances)try{t.push(a.createSnapshot())}catch(e){const t=`[SNAPSHOT] - Could not grab snapshot of field ${a.name}`;throw console.error(t,e),new Error(e.toString())}const a=[];for(const t of e.customFieldInstances)try{a.push(t.createSnapshot())}catch(e){const a=`[SNAPSHOT] - Could not grab snapshot of custom field ${t.name}`;throw console.error(a,e),new Error(e.toString())}return new O(e._id,"item",{fieldInstances:t,customFieldInstances:a})}_getFieldInstance(e,t){for(const a of e.fieldInstances)if(a.getId()===t)return a;return null}_getCustomFieldInstance(e,t){for(const a of e.customFieldInstances)if(a.getId()===t)return a;return null}_rollbackFromSnapshot(e,t){for(const a of t.data.fieldInstances){const t=this._getFieldInstance(e,a.id);t?t.rollbackFromSnapshot(a):console.warn("[SNAPSHOT] - Could not find field instance in snapshot: "+a.id)}for(const a of t.data.customFieldInstances){const t=this._getCustomFieldInstance(e,a.id);t?t.rollbackFromSnapshot(a):console.warn("[SNAPSHOT] - Could not find custom field instance in snapshot: "+a.id)}}getEnabled(){return this.enabled}setEnabled(e){this.enabled=!!e}ignore(e){const t=this.enabled;let a=!1;try{t&&this.setEnabled(!1);const n=e();if(n&&n.then)return a=!0,n.finally((()=>{t&&this.setEnabled(!0)}))}finally{t&&!a&&this.setEnabled(!0)}}undo(e){return this._undoRedoPromise=this._undoRedoPromise.then((()=>this._performUndo(e))),this._undoRedoPromise}redo(e){return this._undoRedoPromise=this._undoRedoPromise.then((()=>this._performRedo(e))),this._undoRedoPromise}async _performUndo(e){if(this.enabled&&this.undoEvents.length){for(e=e||1;this.undoEvents.length>0&&e>0;){const t=this.spliceLastEventBundle(this.undoEvents).reverse();for(const e of t)await e.undo(),this.redoEvents.push(e);e--}u.$emit("undoManager:undoStepsChanged",this.getNumberOfUndoBundles()),u.$emit("undoManager:redoStepsChanged",this.getNumberOfRedoBundles())}}async _performRedo(e){if(this.enabled&&this.redoEvents.length){for(e=e||1;this.redoEvents.length>0&&e>0;){const t=this.spliceLastEventBundle(this.redoEvents).reverse();for(const e of t)await e.redo(),this.undoEvents.push(e);e--}u.$emit("undoManager:undoStepsChanged",this.getNumberOfUndoBundles()),u.$emit("undoManager:redoStepsChanged",this.getNumberOfRedoBundles())}}getUndoSteps(){return this.undoEvents.map((function(e){return{type:e.type,itemId:e.itemId,prop:e.prop}}))}getRedoSteps(){return this.redoEvents.map((e=>({type:e.type,itemId:e.itemId,prop:e.prop})))}event(e){if(this.enabled){if(this.redoEvents=[],u.$emit("undoManager:redoStepsChanged",0),this.assignBundleIndexToEvent(e),0!==this.undoEvents.length){let t=!1;for(let a=this.undoEvents.length-1;a>=0;a--){const n=this.undoEvents[a];if(!e.isWithinMergeDeltaOf(n,300))break;const i=n.merge(e,300);if(i){t=!0,this.undoEvents.splice(a,1),this.undoEvents.push(i);break}}t||(this.undoEvents.push(e),u.$emit("undoManager:undoStepsChanged",this.getNumberOfUndoBundles()))}else this.undoEvents.push(e),u.$emit("undoManager:undoStepsChanged",this.getNumberOfUndoBundles());if(this.getNumberOfUndoBundles()>this.maxUndoCount){this.spliceFirstEventBundle(this.undoEvents);for(const e of this.undoEvents)e.bundleIndex-=1;u.$emit("undoManager:undoStepsChanged",this.getNumberOfUndoBundles())}}}getNumberOfUndoBundles(){return 0===this.undoEvents.length?0:this.undoEvents.at(-1).bundleIndex+1}getNumberOfRedoBundles(){if(0===this.redoEvents.length)return 0;const e=this.getNumberOfUndoBundles()-1;return this.redoEvents.at(0).bundleIndex-e}spliceLastEventBundle(e){if(0===e.length)return[];const t=e.at(-1).bundleIndex;let a=e.length-1;for(let n=e.length-1;n>=0&&e[n].bundleIndex===t;n--)a=n;return e.splice(a)}spliceFirstEventBundle(e){if(0===e.length)return[];const t=e.at(0).bundleIndex;for(let a=1;a<e.length;a++)if(e[a].bundleIndex!==t)return e.splice(0,a);return e.splice(0)}assignBundleIndexToEvent(e){if(0===this.undoEvents.length)return void(e.bundleIndex=0);const t=this.undoEvents.at(-1),a=Math.abs(e.createdAt-t.createdAt);e.bundleIndex=a>300?t.bundleIndex+1:t.bundleIndex}}class Ui{updateItemLinksAndAttributes(e,t,a){try{const n=[],i={},r={};this.getLinksAndAttributes(e,n,i,r,t,a),e.attributes=i,e.userAttributes=r,e.links=n}catch(e){throw console.error(e),new k(e)}}getLinksAndAttributes(e,t,a,n,i,r){e.fieldInstances.length&&this.retrieveLinksAndAttributesFromFieldInstances(e.fieldInstances,t,a,i,r),e.userFieldInstances.length&&this.retrieveLinksAndAttributesFromFieldInstances(e.userFieldInstances,t,n,i,r),e.customFieldInstances.length&&(console.log(e.customFieldInstances),this.retrieveLinksAndAttributesFromFieldInstances(e.customFieldInstances,t,n,i,r,"_"))}retrieveLinksAndAttributesFromFieldInstances(e,t,a,n,i,r=""){for(const s of e)switch(s.type){case"Link":if(s.value&&t){if(i&&s.hidden)continue;n?t.push({usage:r+s.name,to:s.value._id,item:s.value}):t.push({usage:r+s.name,to:s.value._id})}break;case"Attribute":a&&(a[r+s.name]=s.value);break;case"List":s.blocks&&this.traverseListFieldInstances(s.blocks,t,a,r+s.name,n);break;case"Tree":if(s.blocks){const e=s.blocks[0];e.blocks&&this.traverseTreeFieldInstance(e.blocks,t,a,r+s.name,n)}break;case"NodeGraph":if(s.blocks&&this.traverseTreeFieldInstance(s.blocks,t,a,r+s.name,n),a&&Array.isArray(s.connections)){let e=0;for(const t of s.connections){a[`${r}${s.name}#connection[${e++}]`]={srcNode:t.srcNode,srcSlot:t.srcSlot,destNode:t.destNode,destSlot:t.destSlot}}}}}traverseTreeFieldInstance(e,t,a,n,i){let r=0;for(const s of e){const e=`${n}[${r}]`,o=e+"#type",l=e+"#id",u=e+"#posx",c=e+"#posy";a&&(a[e+"#usage"]="Block",a[o]=s.type,a[l]=s.id,void 0!==s.posX&&(a[u]=s.posX||0),void 0!==s.posY&&(a[c]=s.posY||0));for(const n of s.fields){const r=`${e}->${n.name}`;switch(n.type){case"Link":n.value&&t&&(i?t.push({usage:r,to:n.value._id,item:n.value}):t.push({usage:r,to:n.value._id}));break;case"List":n.blocks&&this.traverseListFieldInstances(n.blocks,t,a,r,i);break;case"Attribute":a&&(a[r]=n.value)}}s.scripts&&this.processScripts(s.scripts,t,a,e,i),s.blocks&&this.traverseTreeFieldInstance(s.blocks,t,a,e,i),r++}}traverseListFieldInstances(e,t,a,n,i){let r=0;for(const s of e){const e=`${n}[${r}]`;for(const n of s.fields){const r=`${e}->${n.name}`;switch(n.type){case"Link":if(n.value&&t){const e={usage:r,to:"object"==typeof n.value?n.value._id:n.value,item:null};i&&"object"===n.value&&(e.item=n.value),t.push(e)}break;case"Attribute":a&&(a[r]=n.value)}}r++}}processScripts(e,t,a,n,i){let r=0;for(const s of e){const e=`${n}#scripts[${r}]`,o=e+"#id",l=e+"#item";a&&(a[e+"#usage"]="Script",a[o]=s.id),t&&s.item.value&&(i?t.push({usage:l,to:s.item.value._id,item:s.item.value}):t.push({usage:l,to:s.item.value._id}));for(const n of s.fields){const r=`${e}->${n.name}`;if("Link"===n.type)n.value&&t&&(i?t.push({usage:r,to:n.value._id,item:n.value}):t.push({usage:r,to:n.value._id}));else a&&(a[r]=n.value)}r++}}}class ji{apiClient;activeItem=void 0;rootItemId=void 0;loadingItems=new Map;loadedItems=new Map;itemInstances=new Map;resolvedPaths=new Map;jail;apiGateway;itemCache;undoManager=new $i(this);itemPreparator=new te(this);itemChangeProcessor=new Ui;usePublicApi;constructor(e,t){this.apiClient=t,this.apiGateway=new P(t),this.itemCache=new B(this.apiGateway),this.usePublicApi=!!e,this.jail={active:!1,mountedFolders:[]},u.$on("item:rename",(e=>this.handleRename(e)))}_logGroup(e){}_logGroupEnd(){}_log(e){}getLoadedItems(){return Array.from(this.loadedItems.values())}getItemInstances(){return this.itemInstances}findLoadedItem(e){return this.loadedItems.get(e)}_handleError(e,t){throw console.error(e),new k("ItemRepo: "+t)}getUndoManager(){return this.undoManager}async createFieldsForItem(e,t,a,n=!1){return this.itemPreparator.createFields(e,a,t,"",!1,a.attributes,n)}async createScriptsForItem(e,t=[],a,n=!0){const i=[];for(const n of t){if(!n.item)continue;const t=await this.loadItem(n.item);if(!t)continue;const r=new W(void 0,e,a,t);i.push(r);for(const e of n.fields){const t=new j(r,e.name,e.value,a);r.addField(t)}}e.scripts=n?g.instance.proxyScriptArray(i,e,a):i}clear(){this.rootItemId=void 0,this.activeItem=void 0,this.loadedItems.clear(),this.resolvedPaths.clear(),this.itemInstances.clear(),this.loadingItems.clear();this.apiClient.getCollab().endCollaboration()}removeBlock(e,t){t.blocks.removeObject(e),e.parent=void 0}traverseBlockPairs(e,t,a){a(e,t);for(let n=0;n<e.blocks.length&&n<t.blocks.length;n++)this.traverseBlockPairs(e.blocks[n],t.blocks[n],a)}copyScripts(e,t,a=!1){const n=new Map;this.traverseBlockPairs(e,t,((e,t)=>n.set(e.getId(),t.getId())));const i=[];return this.traverseBlockPairs(e,t,((e,t)=>{for(const r of e.scripts){const e=r.clone(n);a&&(e.deferInitCall=!0),t.scripts.push(e),i.push(e)}})),i}updateScriptFieldReferences(e,t){const a=new Map;this.traverseBlockPairs(e,t,((e,t)=>{a.set(e.id,t.id)})),this.updateScriptFieldReferencesFromMap(a,t)}updateScriptFieldReferencesFromMap(e,t){this.traverseBlocks((t=>{for(const a of t.scripts)for(const t of a.fields)e.has(t.value)&&(t.value=e.get(t.value))}),[t])}async createNewBlock(e,t,a){const n=new ae(void 0,t,e.typeName,void 0,void 0,a),i=await this.createFieldsForItem(n,e.template,a);return n.setFields(i),n.blocks=g.instance.proxyBlockArray(n.blocks,n,a),await this.createScriptsForItem(n,void 0,a),this.addBlockToParent(n,t,a)}addBlockToParent(e,t,a){e.parent=t;const n=g.instance.proxyBlock(e,a);return t.blocks.push(n),n}async createNewListEntry(e,t,a){const n=new ae(void 0,void 0,e.typeName,void 0,void 0,a),i=await this.createFieldsForItem(n,e.template,a);return n.setFields(i),n.blocks=g.instance.proxyListArray(n.blocks,t,a),g.instance.proxyBlock(n,a)}async createNewGraphNode(e,t,a,n,i){const r=new ae(void 0,void 0,e.typeName,void 0,e.displayName,i),s=await this.itemPreparator.createFields(r,i,e.template,"",!0,i.attributes);return r.setFields(s),r.setInputs(e.inputs),r.setOutputs(e.outputs),r.setPosition(a,n),r.blocks=g.instance.proxyGraphBlockArray(r.blocks,t),this.addNodeToGraph(r,t,i),r}addNodeToGraph(e,t,a){const n=g.instance.proxyGraphBlock(e,a);t.blocks.push(n)}removeGraphNode(e,t){const a=[];for(const n of e.connections)n.srcNode!==t.id&&n.destNode!==t.id||a.push(n);for(const t of a)e.connections.removeObject(t);e.blocks.removeObject(t)}addGraphLink(e,t,a,n,i,r){e.connections.push(new U({srcNode:t,srcSlot:a,destNode:n,destSlot:i},r))}removeGraphLink(e,t,a,n,i){for(const r of e.connections)if(r.srcNode===t&&r.srcSlot===a&&r.destNode===n&&r.destSlot===i)return void e.connections.removeObject(r)}createNewScript(e,t=-1,a){t=t>=0?t:e.scripts.length;const n=new W(void 0,e,a);return e.scripts.splice(t,0,n),n}removeScript(e,t){t.scripts.removeObject(e)}findBlock(e){for(const t of this.itemInstances.values())for(const a of t.values()){const t=a.findBlock(e);if(t)return t}return null}async loadPackage(e,t){const a=await h.downloadFile(e,((e,a,n)=>{t&&t({phase:"Loading",percent:e,bytesTotal:a,bytesLoaded:n})})),n=await a.data;this.apiClient.getCollab().endCollaboration();const i=new K({_id:"root",name:"Root package",type:"Package",links:[],attributes:{},fields:[],readOnly:!0,isPackaged:!1}),r=await Di(n,i._id);Fi(i._id,structuredClone(r));const s=Object.values(r.metadata).reverse();for(const e of s)e._id===r.rootItem._id&&(i.packageContent=e,i.packageType=e.type);return await this._linkAndPrepareItems(s),i.packageContent=this.loadedItems.get(r.rootItem._id),this.activeItem=i,i}createPackageItemUrl(e){const t=Ti(e);return t?URL.createObjectURL(t.blob):null}revokePackageItemUrl(e){URL.revokeObjectURL(e)}async _loadPackageContentRecursively(e,t){t("Loading from cache",0);const a=await this.apiClient.itemCache.addItemToCache(e._id,void 0,e.hash,(function(e,a,n){t("Loading from cloud",.9*e,n,a)})),n=await(await fetch(a.objectUrl)).blob();t("Unpacking",90);const i=await Di(n,e._id);Fi(e._id,structuredClone(i));const r=Object.values(i.metadata).reverse();for(const t of r)t._id===i.rootItem._id&&(e.packageContent=t,e.packageType=t.type);return r}createNewItemInstance(e){const t=this.loadedItems.get(e);if(!t)return console.error(`Tried creating new instance of item, but it was not found: ${e}`),null;const a=t.clone(!0);return this._addItemInstance(a),a}_addLoadedItem(e){this.loadedItems.set(e._id,e),this._addItemInstance(e)}_addItemInstance(e){let t=this.itemInstances.get(e._id);t||(t=new Map,this.itemInstances.set(e._id,t)),t.set(e.instanceId,e)}async loadItemByRelativePath(e,t,a={}){try{const n=Ei(e);let i;if(n){const e=t.split("/"),a=e.pop();let r=xi(n.folder._id);for(const t of e)if(r=".."===t?xi(r.parent):Ci(t,r._id),!r)return;const s=Ii(a,r._id);i=s?._id}else i=await this.resolveRelativePath(t,e);return this.loadItem(i,a)}catch(e){this._handleError(e,`Unable to load item by relative path: ${t}: ${e}`)}}async _loadItemFromApi(e,t={}){let a;if(this.apiGateway.start(),t.recursive)if(this.usePublicApi)a=await this.apiGateway.call("_loadItemFromApi","getItemPublicRecursive",e,!0),a.forEach((e=>e.public=!0));else try{a=await this.apiGateway.call("_loadItemFromApi","getItemAggregatedRecursive",e,{withAttachmentInfo:!0,noFields:!0})}catch{a=await this.apiGateway.call("_loadItemFromApi","getItemPublicRecursive",e,!0),a.forEach((e=>e.public=!0))}else{let t;if(this.usePublicApi)t=await this.apiGateway.call("_loadItemFromApi","getItemPublicRecursive",e),t.public=!0;else try{t=await this.apiGateway.call("_loadItemFromApi","getItemAggregated",e,{noFields:!0})}catch{t=await this.apiGateway.call("_loadItemFromApi","getItemPublicRecursive",e),t.public=!0}a=[t]}return this.apiGateway.end(),a}_relinkItems(e,t){for(const a of e){if(Array.isArray(a.links))for(const e of a.links)e.item=t.get(e.to),e.item||e.stopRecursion||console.warn(`Missing link in item '${a.name}' (${a._id}) to: ${e.to} with usage ${e.usage}`);a.packageContent&&(a.packageContent=t.get(a.packageContent._id))}}createItem(e,t){const a={_id:h.createGeneratedItemId(),name:`Generated ${e}`,type:e,attributes:t||{},links:[],fields:[],fieldInstances:[],userFieldInstances:[],isGenerated:!0};return this.itemPreparator.prepare(a)}getLoadedItem(e){return this.loadedItems.get(e)}async loadItem(e,t={}){let a,n,i;if(i=this.loadedItems.get(e),i)return i;if(i=this.loadingItems.get(e),i)return i;try{const r=new Promise(((e,t)=>{a=e,n=t}));return this.loadingItems.set(e,r),i=await this._loadItemInternal(e,t),a(i),!this.activeItem&&i&&(this.rootItemId=e,this.activeItem=i,t.withCollaboration,await u.$emit("itemRepo:itemLoaded",i)),i}catch(t){return this._handleError(t,`Unable to load item ${e}: ${t}`),void n(void 0)}finally{this.loadingItems.delete(e)}}async _loadItemInternal(e,t={}){const a=(e,a,n=0,i=0)=>{"function"==typeof t.progressCallback&&t.progressCallback({phase:e,percent:a,bytesTotal:n,bytesLoaded:i})};a("Fetching metadata",1);let n=await this._loadItemFromApi(e,t);if(n=n.filter((e=>!this.loadedItems.has(e._id))),0===n.length)return console.log("After loading the item, it turns out we have them all already loaded! This should not happen!"),this.loadedItems.get(e);const i=n[0]._id;for(const e of n)if("Package"===e.type){const t=await this._loadPackageContentRecursively(e,a);for(const e of t)n.push(e)}a("Preparing data",100),await this._linkAndPrepareItems(n);return this.loadedItems.get(i)}async _linkAndPrepareItems(e){const t=new Map;for(const a of e)t.set(a._id,a);const a=new Map([...this.loadedItems,...t]);this._relinkItems(e,a);const n=[],i=()=>{const e=t.values().next().value;return t.delete(e._id),this._log(`- Fetched next item ${e.name} (${e._id})`),e},r=async e=>{this._logGroup(`- Preparing item ${e.name} (${e._id})`);const t=await this.itemPreparator.prepare(e);return n.push(t),this._addLoadedItem(t),this._logGroupEnd(),t};for(this.itemPreparator.setItemFetcher((async e=>{this._logGroup(`- Requesting item ${e.name} (${e._id})`);let a=this.loadedItems.get(e._id);if(a)return this._log("- Already prepared. Returning."),this._logGroupEnd(),a;const n=t.get(e._id);return n?(t.delete(e._id),this._log("- Don't have it yet. Preparing..."),a=await r(n),this._log("- Now prepared. Returning."),this._logGroupEnd(),a):(console.error("ItemFetcher: Could not find requested item: "+e._id,t,this.loadedItems),null)}));t.size>0;){let e=i();await r(e)}return this._relinkItems(n,this.loadedItems),n}async resolveRelativePath(e,t=null){if(!(t=t||this.activeItem?._id||null))return null;const a=`${t}#${e}`;let n;return n=this.resolvedPaths.has(a)?this.resolvedPaths.get(a):this.usePublicApi?await this.apiClient.publicResolveRelativeItem(t,e):await this.apiClient.resolveRelativeItem(t,e),this.resolvedPaths.set(a,n),n}async traverseItems(e,t=void 0){if("function"!=typeof e)return;const a=this,n=new Map;await async function t(i){if(!i)return;if(n.has(i._id))return;n.set(i._id,!0);const r=e(i);if(r&&r.then&&await r,Array.isArray(i.links))for(const e of i.links)if(e.item)await t(e.item);else if(e.to)try{const n=await a.loadItem(e.to);await t(n)}catch{console.warn(`Could not load additional item ${e.to} so cannot traverse it. Probably dead link!`)}}(t||this.activeItem)}async traverseBlocks(e,t){for(const a of t){const t=e(a);t&&t.then&&await t,Array.isArray(a.blocks)&&a.blocks?.length&&await this.traverseBlocks(e,a.blocks)}}async traverseFieldInstances(e,t){const a=this;t=t||this.activeItem?.fieldInstances||[];for(const n of t){const t=e(n);t&&t.then&&await t,Array.isArray(n.blocks)&&await this.traverseBlocks((async function(t){Array.isArray(t.fields)&&t.fields?.length&&await a.traverseFieldInstances(e,t.fields)}),n.blocks)}}async _updateLinkReferences(e,t,a,n){t?await this.traverseItems((async i=>{if(Array.isArray(i.fieldInstances)&&i.fieldInstances.length){await this.traverseFieldInstances((async a=>{"Link"===a.type&&a.value&&a.value._id===e&&(n&&(a.value=null),a.value=t)}),i.fieldInstances);for(const a of i.fieldInstances)Array.isArray(a.blocks)&&await this.traverseBlocks((async a=>{if(Array.isArray(a.scripts))for(const i of a.scripts)i.item?.value?._id===e&&(n&&(i.item.value=void 0),i.item.value=t)}),a.blocks)}if(i.links)for(const r of i.links)r.to===e&&(n&&(r.to=null,r.item=null),r.to=a,r.item=t)})):console.warn(`Aborting link update: Could not load item ${a}`)}async replaceLink(e,t){if(this.getLoadedItem(e)){const a=await this.loadItem(t,{recursive:!0});await this._updateLinkReferences(e,a,t,!1)}}async forceUpdateLink(e){const t=await this.loadItem(e,{recursive:!0});await this._updateLinkReferences(e,t,e,!0)}saveItem(e){return e._id&&e.isDirty?(this.itemChangeProcessor.updateItemLinksAndAttributes(e,!1,!0),e.version||(e.version={major:0,minor:0,revision:1}),this.apiClient.updateItem({_id:e._id,name:e.name,attributes:e.attributes,userAttributes:e.userAttributes,links:e.links,tags:e.tags,contributors:e.contributors,description:e.description,shortDescription:e.shortDescription,categories:e.categories,license:e.license,version:e.version,allowConversation:e.allowConversation,visibility:e.visibility}).then((t=>(JSON.stringify(e.version)===JSON.stringify(t.version)?console.log(`Saved item ${e.name}. New version: ${e.version.major}.${e.version.minor}.${e.version.revision}`):console.log(`Saved item ${e.name}. Version ${e.version.major}.${e.version.minor}.${e.version.revision} -> ${t.version.major}.${t.version.minor}.${t.version.revision}`),t&&t.version&&(e.version=t.version),e.isDirty=!1,this.itemChangeProcessor.updateItemLinksAndAttributes(e,!0,!1),e))).catch((function(t){throw console.error(`Error saving item ${e.name}`,t,e),t}))):null}async save(){console.log("Saving changes in loaded items...");const e=[];for(const t of this.loadedItems.values()){const a=this.saveItem(t);a&&e.push(a)}if(0!==e.length){let t=0;for(const a of e)a.then((function(a){u.$emit("itemRepo:itemSaved",{item:a,progress:++t,total:e.length})}));return Promise.all(e).then((function(){console.log("Saved successfully"),u.$emit("itemRepo:itemsSaved")})).catch((function(e){console.error("Error saving:",e)}))}console.log("No changes detected.")}async existsUnsavedChanges(){if(!this.activeItem)return!1;for(const e of this.loadedItems.values())if(e._id&&e.isDirty)return!0;return!1}handleRename({id:e,newName:t}){for(const a of this.itemInstances.values())for(const n of a.values())n._id===e&&(n.name=t)}isItemKnown(e){return this.loadedItems.has(e)||this.itemInstances.has(e)||this.loadingItems.has(e)}invalidateId(e){this.loadedItems.delete(e),this.itemInstances.delete(e),this.loadingItems.delete(e)}}var zi,Wi={exports:{}};
13
13
  /*!
14
14
  localForage -- Offline Storage, Improved