var un=Object.defineProperty;var hn=(i,e,r)=>e in i?un(i,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):i[e]=r;var ii=(i,e,r)=>(hn(i,typeof e!="symbol"?e+"":e,r),r);(function(){const e=document.createElement("link").relList;if(e&&e.supports&&e.supports("modulepreload"))return;for(const o of document.querySelectorAll('link[rel="modulepreload"]'))s(o);new MutationObserver(o=>{for(const a of o)if(a.type==="childList")for(const l of a.addedNodes)l.tagName==="LINK"&&l.rel==="modulepreload"&&s(l)}).observe(document,{childList:!0,subtree:!0});function r(o){const a={};return o.integrity&&(a.integrity=o.integrity),o.referrerPolicy&&(a.referrerPolicy=o.referrerPolicy),o.crossOrigin==="use-credentials"?a.credentials="include":o.crossOrigin==="anonymous"?a.credentials="omit":a.credentials="same-origin",a}function s(o){if(o.ep)return;o.ep=!0;const a=r(o);fetch(o.href,a)}})();const index$2="",common="",popup$2="",SnackbarSfc="",elevation="",loading$3="",button$1="",icon$1="",snackbar="",coreSfc="",cell="",CellSfc="",ripple="",formDetails="",hoverOverlay="",_switch="",SwitchSfc="",style="";function makeMap(i,e){const r=Object.create(null),s=i.split(",");for(let o=0;o!!r[o.toLowerCase()]:o=>!!r[o]}function normalizeStyle(i){if(isArray$9(i)){const e={};for(let r=0;r{if(r){const s=r.split(propertyDelimiterRE);s.length>1&&(e[s[0].trim()]=s[1].trim())}}),e}function normalizeClass(i){let e="";if(isString$2(i))e=i;else if(isArray$9(i))for(let r=0;risString$2(i)?i:i==null?"":isArray$9(i)||isObject$5(i)&&(i.toString===objectToString$3||!isFunction$6(i.toString))?JSON.stringify(i,replacer,2):String(i),replacer=(i,e)=>e&&e.__v_isRef?replacer(i,e.value):isMap$3(e)?{[`Map(${e.size})`]:[...e.entries()].reduce((r,[s,o])=>(r[`${s} =>`]=o,r),{})}:isSet$3(e)?{[`Set(${e.size})`]:[...e.values()]}:isObject$5(e)&&!isArray$9(e)&&!isPlainObject$3(e)?String(e):e,EMPTY_OBJ={},EMPTY_ARR=[],NOOP=()=>{},NO=()=>!1,onRE=/^on[^a-z]/,isOn=i=>onRE.test(i),isModelListener=i=>i.startsWith("onUpdate:"),extend$3=Object.assign,remove$7=(i,e)=>{const r=i.indexOf(e);r>-1&&i.splice(r,1)},hasOwnProperty$f=Object.prototype.hasOwnProperty,hasOwn$2=(i,e)=>hasOwnProperty$f.call(i,e),isArray$9=Array.isArray,isMap$3=i=>toTypeString(i)==="[object Map]",isSet$3=i=>toTypeString(i)==="[object Set]",isFunction$6=i=>typeof i=="function",isString$2=i=>typeof i=="string",isSymbol$1=i=>typeof i=="symbol",isObject$5=i=>i!==null&&typeof i=="object",isPromise$1=i=>isObject$5(i)&&isFunction$6(i.then)&&isFunction$6(i.catch),objectToString$3=Object.prototype.toString,toTypeString=i=>objectToString$3.call(i),toRawType=i=>toTypeString(i).slice(8,-1),isPlainObject$3=i=>toTypeString(i)==="[object Object]",isIntegerKey=i=>isString$2(i)&&i!=="NaN"&&i[0]!=="-"&&""+parseInt(i,10)===i,isReservedProp=makeMap(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),cacheStringFunction=i=>{const e=Object.create(null);return r=>e[r]||(e[r]=i(r))},camelizeRE$1=/-(\w)/g,camelize$2=cacheStringFunction(i=>i.replace(camelizeRE$1,(e,r)=>r?r.toUpperCase():"")),hyphenateRE=/\B([A-Z])/g,hyphenate=cacheStringFunction(i=>i.replace(hyphenateRE,"-$1").toLowerCase()),capitalize=cacheStringFunction(i=>i.charAt(0).toUpperCase()+i.slice(1)),toHandlerKey=cacheStringFunction(i=>i?`on${capitalize(i)}`:""),hasChanged=(i,e)=>!Object.is(i,e),invokeArrayFns=(i,e)=>{for(let r=0;r{Object.defineProperty(i,e,{configurable:!0,enumerable:!1,value:r})},looseToNumber=i=>{const e=parseFloat(i);return isNaN(e)?i:e},toNumber$1=i=>{const e=isString$2(i)?Number(i):NaN;return isNaN(e)?i:e};let _globalThis;const getGlobalThis=()=>_globalThis||(_globalThis=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});let activeEffectScope;class EffectScope{constructor(e=!1){this.detached=e,this._active=!0,this.effects=[],this.cleanups=[],this.parent=activeEffectScope,!e&&activeEffectScope&&(this.index=(activeEffectScope.scopes||(activeEffectScope.scopes=[])).push(this)-1)}get active(){return this._active}run(e){if(this._active){const r=activeEffectScope;try{return activeEffectScope=this,e()}finally{activeEffectScope=r}}}on(){activeEffectScope=this}off(){activeEffectScope=this.parent}stop(e){if(this._active){let r,s;for(r=0,s=this.effects.length;r{const e=new Set(i);return e.w=0,e.n=0,e},wasTracked=i=>(i.w&trackOpBit)>0,newTracked=i=>(i.n&trackOpBit)>0,initDepMarkers=({deps:i})=>{if(i.length)for(let e=0;e{const{deps:e}=i;if(e.length){let r=0;for(let s=0;s{(g==="length"||g>=u)&&c.push(m)})}else switch(r!==void 0&&c.push(l.get(r)),e){case"add":isArray$9(i)?isIntegerKey(r)&&c.push(l.get("length")):(c.push(l.get(ITERATE_KEY)),isMap$3(i)&&c.push(l.get(MAP_KEY_ITERATE_KEY)));break;case"delete":isArray$9(i)||(c.push(l.get(ITERATE_KEY)),isMap$3(i)&&c.push(l.get(MAP_KEY_ITERATE_KEY)));break;case"set":isMap$3(i)&&c.push(l.get(ITERATE_KEY));break}if(c.length===1)c[0]&&triggerEffects(c[0]);else{const u=[];for(const m of c)m&&u.push(...m);triggerEffects(createDep(u))}}function triggerEffects(i,e){const r=isArray$9(i)?i:[...i];for(const s of r)s.computed&&triggerEffect(s);for(const s of r)s.computed||triggerEffect(s)}function triggerEffect(i,e){(i!==activeEffect||i.allowRecurse)&&(i.scheduler?i.scheduler():i.run())}function getDepFromReactive(i,e){var r;return(r=targetMap.get(i))===null||r===void 0?void 0:r.get(e)}const isNonTrackableKeys=makeMap("__proto__,__v_isRef,__isVue"),builtInSymbols=new Set(Object.getOwnPropertyNames(Symbol).filter(i=>i!=="arguments"&&i!=="caller").map(i=>Symbol[i]).filter(isSymbol$1)),get$1=createGetter(),shallowGet=createGetter(!1,!0),readonlyGet=createGetter(!0),arrayInstrumentations=createArrayInstrumentations();function createArrayInstrumentations(){const i={};return["includes","indexOf","lastIndexOf"].forEach(e=>{i[e]=function(...r){const s=toRaw(this);for(let a=0,l=this.length;a{i[e]=function(...r){pauseTracking();const s=toRaw(this)[e].apply(this,r);return resetTracking(),s}}),i}function hasOwnProperty$e(i){const e=toRaw(this);return track(e,"has",i),e.hasOwnProperty(i)}function createGetter(i=!1,e=!1){return function(s,o,a){if(o==="__v_isReactive")return!i;if(o==="__v_isReadonly")return i;if(o==="__v_isShallow")return e;if(o==="__v_raw"&&a===(i?e?shallowReadonlyMap:readonlyMap:e?shallowReactiveMap:reactiveMap).get(s))return s;const l=isArray$9(s);if(!i){if(l&&hasOwn$2(arrayInstrumentations,o))return Reflect.get(arrayInstrumentations,o,a);if(o==="hasOwnProperty")return hasOwnProperty$e}const c=Reflect.get(s,o,a);return(isSymbol$1(o)?builtInSymbols.has(o):isNonTrackableKeys(o))||(i||track(s,"get",o),e)?c:isRef(c)?l&&isIntegerKey(o)?c:c.value:isObject$5(c)?i?readonly(c):reactive(c):c}}const set$1=createSetter(),shallowSet=createSetter(!0);function createSetter(i=!1){return function(r,s,o,a){let l=r[s];if(isReadonly(l)&&isRef(l)&&!isRef(o))return!1;if(!i&&(!isShallow(o)&&!isReadonly(o)&&(l=toRaw(l),o=toRaw(o)),!isArray$9(r)&&isRef(l)&&!isRef(o)))return l.value=o,!0;const c=isArray$9(r)&&isIntegerKey(s)?Number(s)i,getProto$1=i=>Reflect.getPrototypeOf(i);function get$2(i,e,r=!1,s=!1){i=i.__v_raw;const o=toRaw(i),a=toRaw(e);r||(e!==a&&track(o,"get",e),track(o,"get",a));const{has:l}=getProto$1(o),c=s?toShallow:r?toReadonly:toReactive;if(l.call(o,e))return c(i.get(e));if(l.call(o,a))return c(i.get(a));i!==o&&i.get(e)}function has$4(i,e=!1){const r=this.__v_raw,s=toRaw(r),o=toRaw(i);return e||(i!==o&&track(s,"has",i),track(s,"has",o)),i===o?r.has(i):r.has(i)||r.has(o)}function size(i,e=!1){return i=i.__v_raw,!e&&track(toRaw(i),"iterate",ITERATE_KEY),Reflect.get(i,"size",i)}function add(i){i=toRaw(i);const e=toRaw(this);return getProto$1(e).has.call(e,i)||(e.add(i),trigger(e,"add",i,i)),this}function set(i,e){e=toRaw(e);const r=toRaw(this),{has:s,get:o}=getProto$1(r);let a=s.call(r,i);a||(i=toRaw(i),a=s.call(r,i));const l=o.call(r,i);return r.set(i,e),a?hasChanged(e,l)&&trigger(r,"set",i,e):trigger(r,"add",i,e),this}function deleteEntry(i){const e=toRaw(this),{has:r,get:s}=getProto$1(e);let o=r.call(e,i);o||(i=toRaw(i),o=r.call(e,i)),s&&s.call(e,i);const a=e.delete(i);return o&&trigger(e,"delete",i,void 0),a}function clear(){const i=toRaw(this),e=i.size!==0,r=i.clear();return e&&trigger(i,"clear",void 0,void 0),r}function createForEach(i,e){return function(s,o){const a=this,l=a.__v_raw,c=toRaw(l),u=e?toShallow:i?toReadonly:toReactive;return!i&&track(c,"iterate",ITERATE_KEY),l.forEach((m,g)=>s.call(o,u(m),u(g),a))}}function createIterableMethod(i,e,r){return function(...s){const o=this.__v_raw,a=toRaw(o),l=isMap$3(a),c=i==="entries"||i===Symbol.iterator&&l,u=i==="keys"&&l,m=o[i](...s),g=r?toShallow:e?toReadonly:toReactive;return!e&&track(a,"iterate",u?MAP_KEY_ITERATE_KEY:ITERATE_KEY),{next(){const{value:d,done:y}=m.next();return y?{value:d,done:y}:{value:c?[g(d[0]),g(d[1])]:g(d),done:y}},[Symbol.iterator](){return this}}}}function createReadonlyMethod(i){return function(...e){return i==="delete"?!1:this}}function createInstrumentations(){const i={get(a){return get$2(this,a)},get size(){return size(this)},has:has$4,add,set,delete:deleteEntry,clear,forEach:createForEach(!1,!1)},e={get(a){return get$2(this,a,!1,!0)},get size(){return size(this)},has:has$4,add,set,delete:deleteEntry,clear,forEach:createForEach(!1,!0)},r={get(a){return get$2(this,a,!0)},get size(){return size(this,!0)},has(a){return has$4.call(this,a,!0)},add:createReadonlyMethod("add"),set:createReadonlyMethod("set"),delete:createReadonlyMethod("delete"),clear:createReadonlyMethod("clear"),forEach:createForEach(!0,!1)},s={get(a){return get$2(this,a,!0,!0)},get size(){return size(this,!0)},has(a){return has$4.call(this,a,!0)},add:createReadonlyMethod("add"),set:createReadonlyMethod("set"),delete:createReadonlyMethod("delete"),clear:createReadonlyMethod("clear"),forEach:createForEach(!0,!0)};return["keys","values","entries",Symbol.iterator].forEach(a=>{i[a]=createIterableMethod(a,!1,!1),r[a]=createIterableMethod(a,!0,!1),e[a]=createIterableMethod(a,!1,!0),s[a]=createIterableMethod(a,!0,!0)}),[i,r,e,s]}const[mutableInstrumentations,readonlyInstrumentations,shallowInstrumentations,shallowReadonlyInstrumentations]=createInstrumentations();function createInstrumentationGetter(i,e){const r=e?i?shallowReadonlyInstrumentations:shallowInstrumentations:i?readonlyInstrumentations:mutableInstrumentations;return(s,o,a)=>o==="__v_isReactive"?!i:o==="__v_isReadonly"?i:o==="__v_raw"?s:Reflect.get(hasOwn$2(r,o)&&o in s?r:s,o,a)}const mutableCollectionHandlers={get:createInstrumentationGetter(!1,!1)},shallowCollectionHandlers={get:createInstrumentationGetter(!1,!0)},readonlyCollectionHandlers={get:createInstrumentationGetter(!0,!1)},reactiveMap=new WeakMap,shallowReactiveMap=new WeakMap,readonlyMap=new WeakMap,shallowReadonlyMap=new WeakMap;function targetTypeMap(i){switch(i){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function getTargetType(i){return i.__v_skip||!Object.isExtensible(i)?0:targetTypeMap(toRawType(i))}function reactive(i){return isReadonly(i)?i:createReactiveObject(i,!1,mutableHandlers,mutableCollectionHandlers,reactiveMap)}function shallowReactive(i){return createReactiveObject(i,!1,shallowReactiveHandlers,shallowCollectionHandlers,shallowReactiveMap)}function readonly(i){return createReactiveObject(i,!0,readonlyHandlers,readonlyCollectionHandlers,readonlyMap)}function createReactiveObject(i,e,r,s,o){if(!isObject$5(i)||i.__v_raw&&!(e&&i.__v_isReactive))return i;const a=o.get(i);if(a)return a;const l=getTargetType(i);if(l===0)return i;const c=new Proxy(i,l===2?s:r);return o.set(i,c),c}function isReactive(i){return isReadonly(i)?isReactive(i.__v_raw):!!(i&&i.__v_isReactive)}function isReadonly(i){return!!(i&&i.__v_isReadonly)}function isShallow(i){return!!(i&&i.__v_isShallow)}function isProxy(i){return isReactive(i)||isReadonly(i)}function toRaw(i){const e=i&&i.__v_raw;return e?toRaw(e):i}function markRaw(i){return def(i,"__v_skip",!0),i}const toReactive=i=>isObject$5(i)?reactive(i):i,toReadonly=i=>isObject$5(i)?readonly(i):i;function trackRefValue(i){shouldTrack&&activeEffect&&(i=toRaw(i),trackEffects(i.dep||(i.dep=createDep())))}function triggerRefValue(i,e){i=toRaw(i);const r=i.dep;r&&triggerEffects(r)}function isRef(i){return!!(i&&i.__v_isRef===!0)}function ref(i){return createRef(i,!1)}function shallowRef(i){return createRef(i,!0)}function createRef(i,e){return isRef(i)?i:new RefImpl(i,e)}class RefImpl{constructor(e,r){this.__v_isShallow=r,this.dep=void 0,this.__v_isRef=!0,this._rawValue=r?e:toRaw(e),this._value=r?e:toReactive(e)}get value(){return trackRefValue(this),this._value}set value(e){const r=this.__v_isShallow||isShallow(e)||isReadonly(e);e=r?e:toRaw(e),hasChanged(e,this._rawValue)&&(this._rawValue=e,this._value=r?e:toReactive(e),triggerRefValue(this))}}function unref(i){return isRef(i)?i.value:i}const shallowUnwrapHandlers={get:(i,e,r)=>unref(Reflect.get(i,e,r)),set:(i,e,r,s)=>{const o=i[e];return isRef(o)&&!isRef(r)?(o.value=r,!0):Reflect.set(i,e,r,s)}};function proxyRefs(i){return isReactive(i)?i:new Proxy(i,shallowUnwrapHandlers)}function toRefs(i){const e=isArray$9(i)?new Array(i.length):{};for(const r in i)e[r]=toRef(i,r);return e}class ObjectRefImpl{constructor(e,r,s){this._object=e,this._key=r,this._defaultValue=s,this.__v_isRef=!0}get value(){const e=this._object[this._key];return e===void 0?this._defaultValue:e}set value(e){this._object[this._key]=e}get dep(){return getDepFromReactive(toRaw(this._object),this._key)}}function toRef(i,e,r){const s=i[e];return isRef(s)?s:new ObjectRefImpl(i,e,r)}var _a$1;class ComputedRefImpl{constructor(e,r,s,o){this._setter=r,this.dep=void 0,this.__v_isRef=!0,this[_a$1]=!1,this._dirty=!0,this.effect=new ReactiveEffect(e,()=>{this._dirty||(this._dirty=!0,triggerRefValue(this))}),this.effect.computed=this,this.effect.active=this._cacheable=!o,this.__v_isReadonly=s}get value(){const e=toRaw(this);return trackRefValue(e),(e._dirty||!e._cacheable)&&(e._dirty=!1,e._value=e.effect.run()),e._value}set value(e){this._setter(e)}}_a$1="__v_isReadonly";function computed$1(i,e,r=!1){let s,o;const a=isFunction$6(i);return a?(s=i,o=NOOP):(s=i.get,o=i.set),new ComputedRefImpl(s,o,a||!o,r)}function warn(i,...e){}function callWithErrorHandling(i,e,r,s){let o;try{o=s?i(...s):i()}catch(a){handleError(a,e,r)}return o}function callWithAsyncErrorHandling(i,e,r,s){if(isFunction$6(i)){const a=callWithErrorHandling(i,e,r,s);return a&&isPromise$1(a)&&a.catch(l=>{handleError(l,e,r)}),a}const o=[];for(let a=0;a>>1;getId(queue$1[s])flushIndex&&queue$1.splice(e,1)}function queuePostFlushCb(i){isArray$9(i)?pendingPostFlushCbs.push(...i):(!activePostFlushCbs||!activePostFlushCbs.includes(i,i.allowRecurse?postFlushIndex+1:postFlushIndex))&&pendingPostFlushCbs.push(i),queueFlush()}function flushPreFlushCbs(i,e=isFlushing?flushIndex+1:0){for(;egetId(r)-getId(s)),postFlushIndex=0;postFlushIndexi.id==null?1/0:i.id,comparator=(i,e)=>{const r=getId(i)-getId(e);if(r===0){if(i.pre&&!e.pre)return-1;if(e.pre&&!i.pre)return 1}return r};function flushJobs(i){isFlushPending=!1,isFlushing=!0,queue$1.sort(comparator);const e=NOOP;try{for(flushIndex=0;flushIndexisString$2(A)?A.trim():A)),d&&(o=r.map(looseToNumber))}let c,u=s[c=toHandlerKey(e)]||s[c=toHandlerKey(camelize$2(e))];!u&&a&&(u=s[c=toHandlerKey(hyphenate(e))]),u&&callWithAsyncErrorHandling(u,i,6,o);const m=s[c+"Once"];if(m){if(!i.emitted)i.emitted={};else if(i.emitted[c])return;i.emitted[c]=!0,callWithAsyncErrorHandling(m,i,6,o)}}function normalizeEmitsOptions(i,e,r=!1){const s=e.emitsCache,o=s.get(i);if(o!==void 0)return o;const a=i.emits;let l={},c=!1;if(!isFunction$6(i)){const u=m=>{const g=normalizeEmitsOptions(m,e,!0);g&&(c=!0,extend$3(l,g))};!r&&e.mixins.length&&e.mixins.forEach(u),i.extends&&u(i.extends),i.mixins&&i.mixins.forEach(u)}return!a&&!c?(isObject$5(i)&&s.set(i,null),null):(isArray$9(a)?a.forEach(u=>l[u]=null):extend$3(l,a),isObject$5(i)&&s.set(i,l),l)}function isEmitListener(i,e){return!i||!isOn(e)?!1:(e=e.slice(2).replace(/Once$/,""),hasOwn$2(i,e[0].toLowerCase()+e.slice(1))||hasOwn$2(i,hyphenate(e))||hasOwn$2(i,e))}let currentRenderingInstance=null,currentScopeId=null;function setCurrentRenderingInstance(i){const e=currentRenderingInstance;return currentRenderingInstance=i,currentScopeId=i&&i.type.__scopeId||null,e}function pushScopeId(i){currentScopeId=i}function popScopeId(){currentScopeId=null}function withCtx(i,e=currentRenderingInstance,r){if(!e||i._n)return i;const s=(...o)=>{s._d&&setBlockTracking(-1);const a=setCurrentRenderingInstance(e);let l;try{l=i(...o)}finally{setCurrentRenderingInstance(a),s._d&&setBlockTracking(1)}return l};return s._n=!0,s._c=!0,s._d=!0,s}function markAttrsAccessed(){}function renderComponentRoot(i){const{type:e,vnode:r,proxy:s,withProxy:o,props:a,propsOptions:[l],slots:c,attrs:u,emit:m,render:g,renderCache:d,data:y,setupState:A,ctx:b,inheritAttrs:S}=i;let E,x;const C=setCurrentRenderingInstance(i);try{if(r.shapeFlag&4){const k=o||s;E=normalizeVNode(g.call(k,k,d,a,A,y,b)),x=u}else{const k=e;E=normalizeVNode(k.length>1?k(a,{attrs:u,slots:c,emit:m}):k(a,null)),x=e.props?u:getFunctionalFallthrough(u)}}catch(k){blockStack.length=0,handleError(k,i,1),E=createVNode(Comment)}let P=E;if(x&&S!==!1){const k=Object.keys(x),{shapeFlag:I}=P;k.length&&I&7&&(l&&k.some(isModelListener)&&(x=filterModelListeners(x,l)),P=cloneVNode(P,x))}return r.dirs&&(P=cloneVNode(P),P.dirs=P.dirs?P.dirs.concat(r.dirs):r.dirs),r.transition&&(P.transition=r.transition),E=P,setCurrentRenderingInstance(C),E}const getFunctionalFallthrough=i=>{let e;for(const r in i)(r==="class"||r==="style"||isOn(r))&&((e||(e={}))[r]=i[r]);return e},filterModelListeners=(i,e)=>{const r={};for(const s in i)(!isModelListener(s)||!(s.slice(9)in e))&&(r[s]=i[s]);return r};function shouldUpdateComponent(i,e,r){const{props:s,children:o,component:a}=i,{props:l,children:c,patchFlag:u}=e,m=a.emitsOptions;if(e.dirs||e.transition)return!0;if(r&&u>=0){if(u&1024)return!0;if(u&16)return s?hasPropsChanged(s,l,m):!!l;if(u&8){const g=e.dynamicProps;for(let d=0;di.__isSuspense;function queueEffectWithSuspense(i,e){e&&e.pendingBranch?isArray$9(i)?e.effects.push(...i):e.effects.push(i):queuePostFlushCb(i)}function provide(i,e){if(currentInstance){let r=currentInstance.provides;const s=currentInstance.parent&¤tInstance.parent.provides;s===r&&(r=currentInstance.provides=Object.create(s)),r[i]=e}}function inject(i,e,r=!1){const s=currentInstance||currentRenderingInstance;if(s){const o=s.parent==null?s.vnode.appContext&&s.vnode.appContext.provides:s.parent.provides;if(o&&i in o)return o[i];if(arguments.length>1)return r&&isFunction$6(e)?e.call(s.proxy):e}}function watchEffect(i,e){return doWatch(i,null,e)}const INITIAL_WATCHER_VALUE={};function watch(i,e,r){return doWatch(i,e,r)}function doWatch(i,e,{immediate:r,deep:s,flush:o,onTrack:a,onTrigger:l}=EMPTY_OBJ){const c=getCurrentScope()===(currentInstance==null?void 0:currentInstance.scope)?currentInstance:null;let u,m=!1,g=!1;if(isRef(i)?(u=()=>i.value,m=isShallow(i)):isReactive(i)?(u=()=>i,s=!0):isArray$9(i)?(g=!0,m=i.some(P=>isReactive(P)||isShallow(P)),u=()=>i.map(P=>{if(isRef(P))return P.value;if(isReactive(P))return traverse(P);if(isFunction$6(P))return callWithErrorHandling(P,c,2)})):isFunction$6(i)?e?u=()=>callWithErrorHandling(i,c,2):u=()=>{if(!(c&&c.isUnmounted))return d&&d(),callWithAsyncErrorHandling(i,c,3,[y])}:u=NOOP,e&&s){const P=u;u=()=>traverse(P())}let d,y=P=>{d=x.onStop=()=>{callWithErrorHandling(P,c,4)}},A;if(isInSSRComponentSetup)if(y=NOOP,e?r&&callWithAsyncErrorHandling(e,c,3,[u(),g?[]:void 0,y]):u(),o==="sync"){const P=useSSRContext();A=P.__watcherHandles||(P.__watcherHandles=[])}else return NOOP;let b=g?new Array(i.length).fill(INITIAL_WATCHER_VALUE):INITIAL_WATCHER_VALUE;const S=()=>{if(x.active)if(e){const P=x.run();(s||m||(g?P.some((k,I)=>hasChanged(k,b[I])):hasChanged(P,b)))&&(d&&d(),callWithAsyncErrorHandling(e,c,3,[P,b===INITIAL_WATCHER_VALUE?void 0:g&&b[0]===INITIAL_WATCHER_VALUE?[]:b,y]),b=P)}else x.run()};S.allowRecurse=!!e;let E;o==="sync"?E=S:o==="post"?E=()=>queuePostRenderEffect(S,c&&c.suspense):(S.pre=!0,c&&(S.id=c.uid),E=()=>queueJob(S));const x=new ReactiveEffect(u,E);e?r?S():b=x.run():o==="post"?queuePostRenderEffect(x.run.bind(x),c&&c.suspense):x.run();const C=()=>{x.stop(),c&&c.scope&&remove$7(c.scope.effects,x)};return A&&A.push(C),C}function instanceWatch(i,e,r){const s=this.proxy,o=isString$2(i)?i.includes(".")?createPathGetter(s,i):()=>s[i]:i.bind(s,s);let a;isFunction$6(e)?a=e:(a=e.handler,r=e);const l=currentInstance;setCurrentInstance(this);const c=doWatch(o,a.bind(s),r);return l?setCurrentInstance(l):unsetCurrentInstance(),c}function createPathGetter(i,e){const r=e.split(".");return()=>{let s=i;for(let o=0;o{traverse(r,e)});else if(isPlainObject$3(i))for(const r in i)traverse(i[r],e);return i}function useTransitionState(){const i={isMounted:!1,isLeaving:!1,isUnmounting:!1,leavingVNodes:new Map};return onMounted(()=>{i.isMounted=!0}),onBeforeUnmount(()=>{i.isUnmounting=!0}),i}const TransitionHookValidator=[Function,Array],BaseTransitionImpl={name:"BaseTransition",props:{mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:TransitionHookValidator,onEnter:TransitionHookValidator,onAfterEnter:TransitionHookValidator,onEnterCancelled:TransitionHookValidator,onBeforeLeave:TransitionHookValidator,onLeave:TransitionHookValidator,onAfterLeave:TransitionHookValidator,onLeaveCancelled:TransitionHookValidator,onBeforeAppear:TransitionHookValidator,onAppear:TransitionHookValidator,onAfterAppear:TransitionHookValidator,onAppearCancelled:TransitionHookValidator},setup(i,{slots:e}){const r=getCurrentInstance(),s=useTransitionState();let o;return()=>{const a=e.default&&getTransitionRawChildren(e.default(),!0);if(!a||!a.length)return;let l=a[0];if(a.length>1){for(const S of a)if(S.type!==Comment){l=S;break}}const c=toRaw(i),{mode:u}=c;if(s.isLeaving)return emptyPlaceholder(l);const m=getKeepAliveChild(l);if(!m)return emptyPlaceholder(l);const g=resolveTransitionHooks(m,c,s,r);setTransitionHooks(m,g);const d=r.subTree,y=d&&getKeepAliveChild(d);let A=!1;const{getTransitionKey:b}=m.type;if(b){const S=b();o===void 0?o=S:S!==o&&(o=S,A=!0)}if(y&&y.type!==Comment&&(!isSameVNodeType(m,y)||A)){const S=resolveTransitionHooks(y,c,s,r);if(setTransitionHooks(y,S),u==="out-in")return s.isLeaving=!0,S.afterLeave=()=>{s.isLeaving=!1,r.update.active!==!1&&r.update()},emptyPlaceholder(l);u==="in-out"&&m.type!==Comment&&(S.delayLeave=(E,x,C)=>{const P=getLeavingNodesForType(s,y);P[String(y.key)]=y,E._leaveCb=()=>{x(),E._leaveCb=void 0,delete g.delayedLeave},g.delayedLeave=C})}return l}}},BaseTransition=BaseTransitionImpl;function getLeavingNodesForType(i,e){const{leavingVNodes:r}=i;let s=r.get(e.type);return s||(s=Object.create(null),r.set(e.type,s)),s}function resolveTransitionHooks(i,e,r,s){const{appear:o,mode:a,persisted:l=!1,onBeforeEnter:c,onEnter:u,onAfterEnter:m,onEnterCancelled:g,onBeforeLeave:d,onLeave:y,onAfterLeave:A,onLeaveCancelled:b,onBeforeAppear:S,onAppear:E,onAfterAppear:x,onAppearCancelled:C}=e,P=String(i.key),k=getLeavingNodesForType(r,i),I=(F,D)=>{F&&callWithAsyncErrorHandling(F,s,9,D)},M=(F,D)=>{const N=D[1];I(F,D),isArray$9(F)?F.every(O=>O.length<=1)&&N():F.length<=1&&N()},T={mode:a,persisted:l,beforeEnter(F){let D=c;if(!r.isMounted)if(o)D=S||c;else return;F._leaveCb&&F._leaveCb(!0);const N=k[P];N&&isSameVNodeType(i,N)&&N.el._leaveCb&&N.el._leaveCb(),I(D,[F])},enter(F){let D=u,N=m,O=g;if(!r.isMounted)if(o)D=E||u,N=x||m,O=C||g;else return;let B=!1;const V=F._enterCb=R=>{B||(B=!0,R?I(O,[F]):I(N,[F]),T.delayedLeave&&T.delayedLeave(),F._enterCb=void 0)};D?M(D,[F,V]):V()},leave(F,D){const N=String(i.key);if(F._enterCb&&F._enterCb(!0),r.isUnmounting)return D();I(d,[F]);let O=!1;const B=F._leaveCb=V=>{O||(O=!0,D(),V?I(b,[F]):I(A,[F]),F._leaveCb=void 0,k[N]===i&&delete k[N])};k[N]=i,y?M(y,[F,B]):B()},clone(F){return resolveTransitionHooks(F,e,r,s)}};return T}function emptyPlaceholder(i){if(isKeepAlive(i))return i=cloneVNode(i),i.children=null,i}function getKeepAliveChild(i){return isKeepAlive(i)?i.children?i.children[0]:void 0:i}function setTransitionHooks(i,e){i.shapeFlag&6&&i.component?setTransitionHooks(i.component.subTree,e):i.shapeFlag&128?(i.ssContent.transition=e.clone(i.ssContent),i.ssFallback.transition=e.clone(i.ssFallback)):i.transition=e}function getTransitionRawChildren(i,e=!1,r){let s=[],o=0;for(let a=0;a1)for(let a=0;a!!i.type.__asyncLoader;function defineAsyncComponent(i){isFunction$6(i)&&(i={loader:i});const{loader:e,loadingComponent:r,errorComponent:s,delay:o=200,timeout:a,suspensible:l=!0,onError:c}=i;let u=null,m,g=0;const d=()=>(g++,u=null,y()),y=()=>{let A;return u||(A=u=e().catch(b=>{if(b=b instanceof Error?b:new Error(String(b)),c)return new Promise((S,E)=>{c(b,()=>S(d()),()=>E(b),g+1)});throw b}).then(b=>A!==u&&u?u:(b&&(b.__esModule||b[Symbol.toStringTag]==="Module")&&(b=b.default),m=b,b)))};return defineComponent({name:"AsyncComponentWrapper",__asyncLoader:y,get __asyncResolved(){return m},setup(){const A=currentInstance;if(m)return()=>createInnerComp(m,A);const b=C=>{u=null,handleError(C,A,13,!s)};if(l&&A.suspense||isInSSRComponentSetup)return y().then(C=>()=>createInnerComp(C,A)).catch(C=>(b(C),()=>s?createVNode(s,{error:C}):null));const S=ref(!1),E=ref(),x=ref(!!o);return o&&setTimeout(()=>{x.value=!1},o),a!=null&&setTimeout(()=>{if(!S.value&&!E.value){const C=new Error(`Async component timed out after ${a}ms.`);b(C),E.value=C}},a),y().then(()=>{S.value=!0,A.parent&&isKeepAlive(A.parent.vnode)&&queueJob(A.parent.update)}).catch(C=>{b(C),E.value=C}),()=>{if(S.value&&m)return createInnerComp(m,A);if(E.value&&s)return createVNode(s,{error:E.value});if(r&&!x.value)return createVNode(r)}}})}function createInnerComp(i,e){const{ref:r,props:s,children:o,ce:a}=e.vnode,l=createVNode(i,s,o);return l.ref=r,l.ce=a,delete e.vnode.ce,l}const isKeepAlive=i=>i.type.__isKeepAlive;function onActivated(i,e){registerKeepAliveHook(i,"a",e)}function onDeactivated(i,e){registerKeepAliveHook(i,"da",e)}function registerKeepAliveHook(i,e,r=currentInstance){const s=i.__wdc||(i.__wdc=()=>{let o=r;for(;o;){if(o.isDeactivated)return;o=o.parent}return i()});if(injectHook(e,s,r),r){let o=r.parent;for(;o&&o.parent;)isKeepAlive(o.parent.vnode)&&injectToKeepAliveRoot(s,e,r,o),o=o.parent}}function injectToKeepAliveRoot(i,e,r,s){const o=injectHook(e,i,s,!0);onUnmounted(()=>{remove$7(s[e],o)},r)}function injectHook(i,e,r=currentInstance,s=!1){if(r){const o=r[i]||(r[i]=[]),a=e.__weh||(e.__weh=(...l)=>{if(r.isUnmounted)return;pauseTracking(),setCurrentInstance(r);const c=callWithAsyncErrorHandling(e,r,i,l);return unsetCurrentInstance(),resetTracking(),c});return s?o.unshift(a):o.push(a),a}}const createHook=i=>(e,r=currentInstance)=>(!isInSSRComponentSetup||i==="sp")&&injectHook(i,(...s)=>e(...s),r),onBeforeMount=createHook("bm"),onMounted=createHook("m"),onBeforeUpdate=createHook("bu"),onUpdated=createHook("u"),onBeforeUnmount=createHook("bum"),onUnmounted=createHook("um"),onServerPrefetch=createHook("sp"),onRenderTriggered=createHook("rtg"),onRenderTracked=createHook("rtc");function onErrorCaptured(i,e=currentInstance){injectHook("ec",i,e)}function withDirectives(i,e){const r=currentRenderingInstance;if(r===null)return i;const s=getExposeProxy(r)||r.proxy,o=i.dirs||(i.dirs=[]);for(let a=0;ae(l,c,void 0,a&&a[c]));else{const l=Object.keys(i);o=new Array(l.length);for(let c=0,u=l.length;cisVNode(e)?!(e.type===Comment||e.type===Fragment&&!ensureValidVNode(e.children)):!0)?i:null}const getPublicInstance=i=>i?isStatefulComponent(i)?getExposeProxy(i)||i.proxy:getPublicInstance(i.parent):null,publicPropertiesMap=extend$3(Object.create(null),{$:i=>i,$el:i=>i.vnode.el,$data:i=>i.data,$props:i=>i.props,$attrs:i=>i.attrs,$slots:i=>i.slots,$refs:i=>i.refs,$parent:i=>getPublicInstance(i.parent),$root:i=>getPublicInstance(i.root),$emit:i=>i.emit,$options:i=>resolveMergedOptions(i),$forceUpdate:i=>i.f||(i.f=()=>queueJob(i.update)),$nextTick:i=>i.n||(i.n=nextTick.bind(i.proxy)),$watch:i=>instanceWatch.bind(i)}),hasSetupBinding=(i,e)=>i!==EMPTY_OBJ&&!i.__isScriptSetup&&hasOwn$2(i,e),PublicInstanceProxyHandlers={get({_:i},e){const{ctx:r,setupState:s,data:o,props:a,accessCache:l,type:c,appContext:u}=i;let m;if(e[0]!=="$"){const A=l[e];if(A!==void 0)switch(A){case 1:return s[e];case 2:return o[e];case 4:return r[e];case 3:return a[e]}else{if(hasSetupBinding(s,e))return l[e]=1,s[e];if(o!==EMPTY_OBJ&&hasOwn$2(o,e))return l[e]=2,o[e];if((m=i.propsOptions[0])&&hasOwn$2(m,e))return l[e]=3,a[e];if(r!==EMPTY_OBJ&&hasOwn$2(r,e))return l[e]=4,r[e];shouldCacheAccess&&(l[e]=0)}}const g=publicPropertiesMap[e];let d,y;if(g)return e==="$attrs"&&track(i,"get",e),g(i);if((d=c.__cssModules)&&(d=d[e]))return d;if(r!==EMPTY_OBJ&&hasOwn$2(r,e))return l[e]=4,r[e];if(y=u.config.globalProperties,hasOwn$2(y,e))return y[e]},set({_:i},e,r){const{data:s,setupState:o,ctx:a}=i;return hasSetupBinding(o,e)?(o[e]=r,!0):s!==EMPTY_OBJ&&hasOwn$2(s,e)?(s[e]=r,!0):hasOwn$2(i.props,e)||e[0]==="$"&&e.slice(1)in i?!1:(a[e]=r,!0)},has({_:{data:i,setupState:e,accessCache:r,ctx:s,appContext:o,propsOptions:a}},l){let c;return!!r[l]||i!==EMPTY_OBJ&&hasOwn$2(i,l)||hasSetupBinding(e,l)||(c=a[0])&&hasOwn$2(c,l)||hasOwn$2(s,l)||hasOwn$2(publicPropertiesMap,l)||hasOwn$2(o.config.globalProperties,l)},defineProperty(i,e,r){return r.get!=null?i._.accessCache[e]=0:hasOwn$2(r,"value")&&this.set(i,e,r.value,null),Reflect.defineProperty(i,e,r)}};let shouldCacheAccess=!0;function applyOptions(i){const e=resolveMergedOptions(i),r=i.proxy,s=i.ctx;shouldCacheAccess=!1,e.beforeCreate&&callHook$1(e.beforeCreate,i,"bc");const{data:o,computed:a,methods:l,watch:c,provide:u,inject:m,created:g,beforeMount:d,mounted:y,beforeUpdate:A,updated:b,activated:S,deactivated:E,beforeDestroy:x,beforeUnmount:C,destroyed:P,unmounted:k,render:I,renderTracked:M,renderTriggered:T,errorCaptured:F,serverPrefetch:D,expose:N,inheritAttrs:O,components:B,directives:V,filters:R}=e;if(m&&resolveInjections(m,s,null,i.appContext.config.unwrapInjectedRef),l)for(const K in l){const G=l[K];isFunction$6(G)&&(s[K]=G.bind(r))}if(o){const K=o.call(r,r);isObject$5(K)&&(i.data=reactive(K))}if(shouldCacheAccess=!0,a)for(const K in a){const G=a[K],U=isFunction$6(G)?G.bind(r,r):isFunction$6(G.get)?G.get.bind(r,r):NOOP,$=!isFunction$6(G)&&isFunction$6(G.set)?G.set.bind(r):NOOP,q=computed({get:U,set:$});Object.defineProperty(s,K,{enumerable:!0,configurable:!0,get:()=>q.value,set:W=>q.value=W})}if(c)for(const K in c)createWatcher(c[K],s,r,K);if(u){const K=isFunction$6(u)?u.call(r):u;Reflect.ownKeys(K).forEach(G=>{provide(G,K[G])})}g&&callHook$1(g,i,"c");function _(K,G){isArray$9(G)?G.forEach(U=>K(U.bind(r))):G&&K(G.bind(r))}if(_(onBeforeMount,d),_(onMounted,y),_(onBeforeUpdate,A),_(onUpdated,b),_(onActivated,S),_(onDeactivated,E),_(onErrorCaptured,F),_(onRenderTracked,M),_(onRenderTriggered,T),_(onBeforeUnmount,C),_(onUnmounted,k),_(onServerPrefetch,D),isArray$9(N))if(N.length){const K=i.exposed||(i.exposed={});N.forEach(G=>{Object.defineProperty(K,G,{get:()=>r[G],set:U=>r[G]=U})})}else i.exposed||(i.exposed={});I&&i.render===NOOP&&(i.render=I),O!=null&&(i.inheritAttrs=O),B&&(i.components=B),V&&(i.directives=V)}function resolveInjections(i,e,r=NOOP,s=!1){isArray$9(i)&&(i=normalizeInject(i));for(const o in i){const a=i[o];let l;isObject$5(a)?"default"in a?l=inject(a.from||o,a.default,!0):l=inject(a.from||o):l=inject(a),isRef(l)&&s?Object.defineProperty(e,o,{enumerable:!0,configurable:!0,get:()=>l.value,set:c=>l.value=c}):e[o]=l}}function callHook$1(i,e,r){callWithAsyncErrorHandling(isArray$9(i)?i.map(s=>s.bind(e.proxy)):i.bind(e.proxy),e,r)}function createWatcher(i,e,r,s){const o=s.includes(".")?createPathGetter(r,s):()=>r[s];if(isString$2(i)){const a=e[i];isFunction$6(a)&&watch(o,a)}else if(isFunction$6(i))watch(o,i.bind(r));else if(isObject$5(i))if(isArray$9(i))i.forEach(a=>createWatcher(a,e,r,s));else{const a=isFunction$6(i.handler)?i.handler.bind(r):e[i.handler];isFunction$6(a)&&watch(o,a,i)}}function resolveMergedOptions(i){const e=i.type,{mixins:r,extends:s}=e,{mixins:o,optionsCache:a,config:{optionMergeStrategies:l}}=i.appContext,c=a.get(e);let u;return c?u=c:!o.length&&!r&&!s?u=e:(u={},o.length&&o.forEach(m=>mergeOptions$1(u,m,l,!0)),mergeOptions$1(u,e,l)),isObject$5(e)&&a.set(e,u),u}function mergeOptions$1(i,e,r,s=!1){const{mixins:o,extends:a}=e;a&&mergeOptions$1(i,a,r,!0),o&&o.forEach(l=>mergeOptions$1(i,l,r,!0));for(const l in e)if(!(s&&l==="expose")){const c=internalOptionMergeStrats[l]||r&&r[l];i[l]=c?c(i[l],e[l]):e[l]}return i}const internalOptionMergeStrats={data:mergeDataFn,props:mergeObjectOptions,emits:mergeObjectOptions,methods:mergeObjectOptions,computed:mergeObjectOptions,beforeCreate:mergeAsArray,created:mergeAsArray,beforeMount:mergeAsArray,mounted:mergeAsArray,beforeUpdate:mergeAsArray,updated:mergeAsArray,beforeDestroy:mergeAsArray,beforeUnmount:mergeAsArray,destroyed:mergeAsArray,unmounted:mergeAsArray,activated:mergeAsArray,deactivated:mergeAsArray,errorCaptured:mergeAsArray,serverPrefetch:mergeAsArray,components:mergeObjectOptions,directives:mergeObjectOptions,watch:mergeWatchOptions,provide:mergeDataFn,inject:mergeInject};function mergeDataFn(i,e){return e?i?function(){return extend$3(isFunction$6(i)?i.call(this,this):i,isFunction$6(e)?e.call(this,this):e)}:e:i}function mergeInject(i,e){return mergeObjectOptions(normalizeInject(i),normalizeInject(e))}function normalizeInject(i){if(isArray$9(i)){const e={};for(let r=0;r0)&&!(l&16)){if(l&8){const g=i.vnode.dynamicProps;for(let d=0;d{u=!0;const[y,A]=normalizePropsOptions(d,e,!0);extend$3(l,y),A&&c.push(...A)};!r&&e.mixins.length&&e.mixins.forEach(g),i.extends&&g(i.extends),i.mixins&&i.mixins.forEach(g)}if(!a&&!u)return isObject$5(i)&&s.set(i,EMPTY_ARR),EMPTY_ARR;if(isArray$9(a))for(let g=0;g-1,A[1]=S<0||b-1||hasOwn$2(A,"default"))&&c.push(d)}}}const m=[l,c];return isObject$5(i)&&s.set(i,m),m}function validatePropName(i){return i[0]!=="$"}function getType(i){const e=i&&i.toString().match(/^\s*(function|class) (\w+)/);return e?e[2]:i===null?"null":""}function isSameType(i,e){return getType(i)===getType(e)}function getTypeIndex(i,e){return isArray$9(e)?e.findIndex(r=>isSameType(r,i)):isFunction$6(e)&&isSameType(e,i)?0:-1}const isInternalKey=i=>i[0]==="_"||i==="$stable",normalizeSlotValue=i=>isArray$9(i)?i.map(normalizeVNode):[normalizeVNode(i)],normalizeSlot$1=(i,e,r)=>{if(e._n)return e;const s=withCtx((...o)=>normalizeSlotValue(e(...o)),r);return s._c=!1,s},normalizeObjectSlots=(i,e,r)=>{const s=i._ctx;for(const o in i){if(isInternalKey(o))continue;const a=i[o];if(isFunction$6(a))e[o]=normalizeSlot$1(o,a,s);else if(a!=null){const l=normalizeSlotValue(a);e[o]=()=>l}}},normalizeVNodeSlots=(i,e)=>{const r=normalizeSlotValue(e);i.slots.default=()=>r},initSlots=(i,e)=>{if(i.vnode.shapeFlag&32){const r=e._;r?(i.slots=toRaw(e),def(e,"_",r)):normalizeObjectSlots(e,i.slots={})}else i.slots={},e&&normalizeVNodeSlots(i,e);def(i.slots,InternalObjectKey,1)},updateSlots=(i,e,r)=>{const{vnode:s,slots:o}=i;let a=!0,l=EMPTY_OBJ;if(s.shapeFlag&32){const c=e._;c?r&&c===1?a=!1:(extend$3(o,e),!r&&c===1&&delete o._):(a=!e.$stable,normalizeObjectSlots(e,o)),l=e}else e&&(normalizeVNodeSlots(i,e),l={default:1});if(a)for(const c in o)!isInternalKey(c)&&!(c in l)&&delete o[c]};function createAppContext(){return{app:null,config:{isNativeTag:NO,performance:!1,globalProperties:{},optionMergeStrategies:{},errorHandler:void 0,warnHandler:void 0,compilerOptions:{}},mixins:[],components:{},directives:{},provides:Object.create(null),optionsCache:new WeakMap,propsCache:new WeakMap,emitsCache:new WeakMap}}let uid$1=0;function createAppAPI(i,e){return function(s,o=null){isFunction$6(s)||(s=Object.assign({},s)),o!=null&&!isObject$5(o)&&(o=null);const a=createAppContext(),l=new Set;let c=!1;const u=a.app={_uid:uid$1++,_component:s,_props:o,_container:null,_context:a,_instance:null,version,get config(){return a.config},set config(m){},use(m,...g){return l.has(m)||(m&&isFunction$6(m.install)?(l.add(m),m.install(u,...g)):isFunction$6(m)&&(l.add(m),m(u,...g))),u},mixin(m){return a.mixins.includes(m)||a.mixins.push(m),u},component(m,g){return g?(a.components[m]=g,u):a.components[m]},directive(m,g){return g?(a.directives[m]=g,u):a.directives[m]},mount(m,g,d){if(!c){const y=createVNode(s,o);return y.appContext=a,g&&e?e(y,m):i(y,m,d),c=!0,u._container=m,m.__vue_app__=u,getExposeProxy(y.component)||y.component.proxy}},unmount(){c&&(i(null,u._container),delete u._container.__vue_app__)},provide(m,g){return a.provides[m]=g,u}};return u}}function setRef(i,e,r,s,o=!1){if(isArray$9(i)){i.forEach((y,A)=>setRef(y,e&&(isArray$9(e)?e[A]:e),r,s,o));return}if(isAsyncWrapper(s)&&!o)return;const a=s.shapeFlag&4?getExposeProxy(s.component)||s.component.proxy:s.el,l=o?null:a,{i:c,r:u}=i,m=e&&e.r,g=c.refs===EMPTY_OBJ?c.refs={}:c.refs,d=c.setupState;if(m!=null&&m!==u&&(isString$2(m)?(g[m]=null,hasOwn$2(d,m)&&(d[m]=null)):isRef(m)&&(m.value=null)),isFunction$6(u))callWithErrorHandling(u,c,12,[l,g]);else{const y=isString$2(u),A=isRef(u);if(y||A){const b=()=>{if(i.f){const S=y?hasOwn$2(d,u)?d[u]:g[u]:u.value;o?isArray$9(S)&&remove$7(S,a):isArray$9(S)?S.includes(a)||S.push(a):y?(g[u]=[a],hasOwn$2(d,u)&&(d[u]=g[u])):(u.value=[a],i.k&&(g[i.k]=u.value))}else y?(g[u]=l,hasOwn$2(d,u)&&(d[u]=l)):A&&(u.value=l,i.k&&(g[i.k]=l))};l?(b.id=-1,queuePostRenderEffect(b,r)):b()}}}const queuePostRenderEffect=queueEffectWithSuspense;function createRenderer(i){return baseCreateRenderer(i)}function baseCreateRenderer(i,e){const r=getGlobalThis();r.__VUE__=!0;const{insert:s,remove:o,patchProp:a,createElement:l,createText:c,createComment:u,setText:m,setElementText:g,parentNode:d,nextSibling:y,setScopeId:A=NOOP,insertStaticContent:b}=i,S=(ie,ae,H,ve=null,pe=null,ee=null,ne=!1,me=null,Be=!!ae.dynamicChildren)=>{if(ie===ae)return;ie&&!isSameVNodeType(ie,ae)&&(ve=ce(ie),W(ie,pe,ee,!0),ie=null),ae.patchFlag===-2&&(Be=!1,ae.dynamicChildren=null);const{type:oe,ref:Ae,shapeFlag:Me}=ae;switch(oe){case Text:E(ie,ae,H,ve);break;case Comment:x(ie,ae,H,ve);break;case Static:ie==null&&C(ae,H,ve,ne);break;case Fragment:B(ie,ae,H,ve,pe,ee,ne,me,Be);break;default:Me&1?I(ie,ae,H,ve,pe,ee,ne,me,Be):Me&6?V(ie,ae,H,ve,pe,ee,ne,me,Be):(Me&64||Me&128)&&oe.process(ie,ae,H,ve,pe,ee,ne,me,Be,Ee)}Ae!=null&&pe&&setRef(Ae,ie&&ie.ref,ee,ae||ie,!ae)},E=(ie,ae,H,ve)=>{if(ie==null)s(ae.el=c(ae.children),H,ve);else{const pe=ae.el=ie.el;ae.children!==ie.children&&m(pe,ae.children)}},x=(ie,ae,H,ve)=>{ie==null?s(ae.el=u(ae.children||""),H,ve):ae.el=ie.el},C=(ie,ae,H,ve)=>{[ie.el,ie.anchor]=b(ie.children,ae,H,ve,ie.el,ie.anchor)},P=({el:ie,anchor:ae},H,ve)=>{let pe;for(;ie&&ie!==ae;)pe=y(ie),s(ie,H,ve),ie=pe;s(ae,H,ve)},k=({el:ie,anchor:ae})=>{let H;for(;ie&&ie!==ae;)H=y(ie),o(ie),ie=H;o(ae)},I=(ie,ae,H,ve,pe,ee,ne,me,Be)=>{ne=ne||ae.type==="svg",ie==null?M(ae,H,ve,pe,ee,ne,me,Be):D(ie,ae,pe,ee,ne,me,Be)},M=(ie,ae,H,ve,pe,ee,ne,me)=>{let Be,oe;const{type:Ae,props:Me,shapeFlag:Le,transition:Ce,dirs:he}=ie;if(Be=ie.el=l(ie.type,ee,Me&&Me.is,Me),Le&8?g(Be,ie.children):Le&16&&F(ie.children,Be,null,ve,pe,ee&&Ae!=="foreignObject",ne,me),he&&invokeDirectiveHook(ie,null,ve,"created"),T(Be,ie,ie.scopeId,ne,ve),Me){for(const ye in Me)ye!=="value"&&!isReservedProp(ye)&&a(Be,ye,null,Me[ye],ee,ie.children,ve,pe,J);"value"in Me&&a(Be,"value",null,Me.value),(oe=Me.onVnodeBeforeMount)&&invokeVNodeHook(oe,ve,ie)}he&&invokeDirectiveHook(ie,null,ve,"beforeMount");const Pe=(!pe||pe&&!pe.pendingBranch)&&Ce&&!Ce.persisted;Pe&&Ce.beforeEnter(Be),s(Be,ae,H),((oe=Me&&Me.onVnodeMounted)||Pe||he)&&queuePostRenderEffect(()=>{oe&&invokeVNodeHook(oe,ve,ie),Pe&&Ce.enter(Be),he&&invokeDirectiveHook(ie,null,ve,"mounted")},pe)},T=(ie,ae,H,ve,pe)=>{if(H&&A(ie,H),ve)for(let ee=0;ee{for(let oe=Be;oe{const me=ae.el=ie.el;let{patchFlag:Be,dynamicChildren:oe,dirs:Ae}=ae;Be|=ie.patchFlag&16;const Me=ie.props||EMPTY_OBJ,Le=ae.props||EMPTY_OBJ;let Ce;H&&toggleRecurse(H,!1),(Ce=Le.onVnodeBeforeUpdate)&&invokeVNodeHook(Ce,H,ae,ie),Ae&&invokeDirectiveHook(ae,ie,H,"beforeUpdate"),H&&toggleRecurse(H,!0);const he=pe&&ae.type!=="foreignObject";if(oe?N(ie.dynamicChildren,oe,me,H,ve,he,ee):ne||G(ie,ae,me,null,H,ve,he,ee,!1),Be>0){if(Be&16)O(me,ae,Me,Le,H,ve,pe);else if(Be&2&&Me.class!==Le.class&&a(me,"class",null,Le.class,pe),Be&4&&a(me,"style",Me.style,Le.style,pe),Be&8){const Pe=ae.dynamicProps;for(let ye=0;ye{Ce&&invokeVNodeHook(Ce,H,ae,ie),Ae&&invokeDirectiveHook(ae,ie,H,"updated")},ve)},N=(ie,ae,H,ve,pe,ee,ne)=>{for(let me=0;me{if(H!==ve){if(H!==EMPTY_OBJ)for(const me in H)!isReservedProp(me)&&!(me in ve)&&a(ie,me,H[me],null,ne,ae.children,pe,ee,J);for(const me in ve){if(isReservedProp(me))continue;const Be=ve[me],oe=H[me];Be!==oe&&me!=="value"&&a(ie,me,oe,Be,ne,ae.children,pe,ee,J)}"value"in ve&&a(ie,"value",H.value,ve.value)}},B=(ie,ae,H,ve,pe,ee,ne,me,Be)=>{const oe=ae.el=ie?ie.el:c(""),Ae=ae.anchor=ie?ie.anchor:c("");let{patchFlag:Me,dynamicChildren:Le,slotScopeIds:Ce}=ae;Ce&&(me=me?me.concat(Ce):Ce),ie==null?(s(oe,H,ve),s(Ae,H,ve),F(ae.children,H,Ae,pe,ee,ne,me,Be)):Me>0&&Me&64&&Le&&ie.dynamicChildren?(N(ie.dynamicChildren,Le,H,pe,ee,ne,me),(ae.key!=null||pe&&ae===pe.subTree)&&traverseStaticChildren(ie,ae,!0)):G(ie,ae,H,Ae,pe,ee,ne,me,Be)},V=(ie,ae,H,ve,pe,ee,ne,me,Be)=>{ae.slotScopeIds=me,ie==null?ae.shapeFlag&512?pe.ctx.activate(ae,H,ve,ne,Be):R(ae,H,ve,pe,ee,ne,Be):Q(ie,ae,Be)},R=(ie,ae,H,ve,pe,ee,ne)=>{const me=ie.component=createComponentInstance(ie,ve,pe);if(isKeepAlive(ie)&&(me.ctx.renderer=Ee),setupComponent(me),me.asyncDep){if(pe&&pe.registerDep(me,_),!ie.el){const Be=me.subTree=createVNode(Comment);x(null,Be,ae,H)}return}_(me,ie,ae,H,pe,ee,ne)},Q=(ie,ae,H)=>{const ve=ae.component=ie.component;if(shouldUpdateComponent(ie,ae,H))if(ve.asyncDep&&!ve.asyncResolved){K(ve,ae,H);return}else ve.next=ae,invalidateJob(ve.update),ve.update();else ae.el=ie.el,ve.vnode=ae},_=(ie,ae,H,ve,pe,ee,ne)=>{const me=()=>{if(ie.isMounted){let{next:Ae,bu:Me,u:Le,parent:Ce,vnode:he}=ie,Pe=Ae,ye;toggleRecurse(ie,!1),Ae?(Ae.el=he.el,K(ie,Ae,ne)):Ae=he,Me&&invokeArrayFns(Me),(ye=Ae.props&&Ae.props.onVnodeBeforeUpdate)&&invokeVNodeHook(ye,Ce,Ae,he),toggleRecurse(ie,!0);const Ve=renderComponentRoot(ie),Ue=ie.subTree;ie.subTree=Ve,S(Ue,Ve,d(Ue.el),ce(Ue),ie,pe,ee),Ae.el=Ve.el,Pe===null&&updateHOCHostEl(ie,Ve.el),Le&&queuePostRenderEffect(Le,pe),(ye=Ae.props&&Ae.props.onVnodeUpdated)&&queuePostRenderEffect(()=>invokeVNodeHook(ye,Ce,Ae,he),pe)}else{let Ae;const{el:Me,props:Le}=ae,{bm:Ce,m:he,parent:Pe}=ie,ye=isAsyncWrapper(ae);if(toggleRecurse(ie,!1),Ce&&invokeArrayFns(Ce),!ye&&(Ae=Le&&Le.onVnodeBeforeMount)&&invokeVNodeHook(Ae,Pe,ae),toggleRecurse(ie,!0),Me&&De){const Ve=()=>{ie.subTree=renderComponentRoot(ie),De(Me,ie.subTree,ie,pe,null)};ye?ae.type.__asyncLoader().then(()=>!ie.isUnmounted&&Ve()):Ve()}else{const Ve=ie.subTree=renderComponentRoot(ie);S(null,Ve,H,ve,ie,pe,ee),ae.el=Ve.el}if(he&&queuePostRenderEffect(he,pe),!ye&&(Ae=Le&&Le.onVnodeMounted)){const Ve=ae;queuePostRenderEffect(()=>invokeVNodeHook(Ae,Pe,Ve),pe)}(ae.shapeFlag&256||Pe&&isAsyncWrapper(Pe.vnode)&&Pe.vnode.shapeFlag&256)&&ie.a&&queuePostRenderEffect(ie.a,pe),ie.isMounted=!0,ae=H=ve=null}},Be=ie.effect=new ReactiveEffect(me,()=>queueJob(oe),ie.scope),oe=ie.update=()=>Be.run();oe.id=ie.uid,toggleRecurse(ie,!0),oe()},K=(ie,ae,H)=>{ae.component=ie;const ve=ie.vnode.props;ie.vnode=ae,ie.next=null,updateProps(ie,ae.props,ve,H),updateSlots(ie,ae.children,H),pauseTracking(),flushPreFlushCbs(),resetTracking()},G=(ie,ae,H,ve,pe,ee,ne,me,Be=!1)=>{const oe=ie&&ie.children,Ae=ie?ie.shapeFlag:0,Me=ae.children,{patchFlag:Le,shapeFlag:Ce}=ae;if(Le>0){if(Le&128){$(oe,Me,H,ve,pe,ee,ne,me,Be);return}else if(Le&256){U(oe,Me,H,ve,pe,ee,ne,me,Be);return}}Ce&8?(Ae&16&&J(oe,pe,ee),Me!==oe&&g(H,Me)):Ae&16?Ce&16?$(oe,Me,H,ve,pe,ee,ne,me,Be):J(oe,pe,ee,!0):(Ae&8&&g(H,""),Ce&16&&F(Me,H,ve,pe,ee,ne,me,Be))},U=(ie,ae,H,ve,pe,ee,ne,me,Be)=>{ie=ie||EMPTY_ARR,ae=ae||EMPTY_ARR;const oe=ie.length,Ae=ae.length,Me=Math.min(oe,Ae);let Le;for(Le=0;LeAe?J(ie,pe,ee,!0,!1,Me):F(ae,H,ve,pe,ee,ne,me,Be,Me)},$=(ie,ae,H,ve,pe,ee,ne,me,Be)=>{let oe=0;const Ae=ae.length;let Me=ie.length-1,Le=Ae-1;for(;oe<=Me&&oe<=Le;){const Ce=ie[oe],he=ae[oe]=Be?cloneIfMounted(ae[oe]):normalizeVNode(ae[oe]);if(isSameVNodeType(Ce,he))S(Ce,he,H,null,pe,ee,ne,me,Be);else break;oe++}for(;oe<=Me&&oe<=Le;){const Ce=ie[Me],he=ae[Le]=Be?cloneIfMounted(ae[Le]):normalizeVNode(ae[Le]);if(isSameVNodeType(Ce,he))S(Ce,he,H,null,pe,ee,ne,me,Be);else break;Me--,Le--}if(oe>Me){if(oe<=Le){const Ce=Le+1,he=CeLe)for(;oe<=Me;)W(ie[oe],pe,ee,!0),oe++;else{const Ce=oe,he=oe,Pe=new Map;for(oe=he;oe<=Le;oe++){const $e=ae[oe]=Be?cloneIfMounted(ae[oe]):normalizeVNode(ae[oe]);$e.key!=null&&Pe.set($e.key,oe)}let ye,Ve=0;const Ue=Le-he+1;let je=!1,_e=0;const Ke=new Array(Ue);for(oe=0;oe=Ue){W($e,pe,ee,!0);continue}let ot;if($e.key!=null)ot=Pe.get($e.key);else for(ye=he;ye<=Le;ye++)if(Ke[ye-he]===0&&isSameVNodeType($e,ae[ye])){ot=ye;break}ot===void 0?W($e,pe,ee,!0):(Ke[ot-he]=oe+1,ot>=_e?_e=ot:je=!0,S($e,ae[ot],H,null,pe,ee,ne,me,Be),Ve++)}const tt=je?getSequence(Ke):EMPTY_ARR;for(ye=tt.length-1,oe=Ue-1;oe>=0;oe--){const $e=he+oe,ot=ae[$e],yt=$e+1{const{el:ee,type:ne,transition:me,children:Be,shapeFlag:oe}=ie;if(oe&6){q(ie.component.subTree,ae,H,ve);return}if(oe&128){ie.suspense.move(ae,H,ve);return}if(oe&64){ne.move(ie,ae,H,Ee);return}if(ne===Fragment){s(ee,ae,H);for(let Me=0;Meme.enter(ee),pe);else{const{leave:Me,delayLeave:Le,afterLeave:Ce}=me,he=()=>s(ee,ae,H),Pe=()=>{Me(ee,()=>{he(),Ce&&Ce()})};Le?Le(ee,he,Pe):Pe()}else s(ee,ae,H)},W=(ie,ae,H,ve=!1,pe=!1)=>{const{type:ee,props:ne,ref:me,children:Be,dynamicChildren:oe,shapeFlag:Ae,patchFlag:Me,dirs:Le}=ie;if(me!=null&&setRef(me,null,H,ie,!0),Ae&256){ae.ctx.deactivate(ie);return}const Ce=Ae&1&&Le,he=!isAsyncWrapper(ie);let Pe;if(he&&(Pe=ne&&ne.onVnodeBeforeUnmount)&&invokeVNodeHook(Pe,ae,ie),Ae&6)Y(ie.component,H,ve);else{if(Ae&128){ie.suspense.unmount(H,ve);return}Ce&&invokeDirectiveHook(ie,null,ae,"beforeUnmount"),Ae&64?ie.type.remove(ie,ae,H,pe,Ee,ve):oe&&(ee!==Fragment||Me>0&&Me&64)?J(oe,ae,H,!1,!0):(ee===Fragment&&Me&384||!pe&&Ae&16)&&J(Be,ae,H),ve&&xe(ie)}(he&&(Pe=ne&&ne.onVnodeUnmounted)||Ce)&&queuePostRenderEffect(()=>{Pe&&invokeVNodeHook(Pe,ae,ie),Ce&&invokeDirectiveHook(ie,null,ae,"unmounted")},H)},xe=ie=>{const{type:ae,el:H,anchor:ve,transition:pe}=ie;if(ae===Fragment){ue(H,ve);return}if(ae===Static){k(ie);return}const ee=()=>{o(H),pe&&!pe.persisted&&pe.afterLeave&&pe.afterLeave()};if(ie.shapeFlag&1&&pe&&!pe.persisted){const{leave:ne,delayLeave:me}=pe,Be=()=>ne(H,ee);me?me(ie.el,ee,Be):Be()}else ee()},ue=(ie,ae)=>{let H;for(;ie!==ae;)H=y(ie),o(ie),ie=H;o(ae)},Y=(ie,ae,H)=>{const{bum:ve,scope:pe,update:ee,subTree:ne,um:me}=ie;ve&&invokeArrayFns(ve),pe.stop(),ee&&(ee.active=!1,W(ne,ie,ae,H)),me&&queuePostRenderEffect(me,ae),queuePostRenderEffect(()=>{ie.isUnmounted=!0},ae),ae&&ae.pendingBranch&&!ae.isUnmounted&&ie.asyncDep&&!ie.asyncResolved&&ie.suspenseId===ae.pendingId&&(ae.deps--,ae.deps===0&&ae.resolve())},J=(ie,ae,H,ve=!1,pe=!1,ee=0)=>{for(let ne=ee;neie.shapeFlag&6?ce(ie.component.subTree):ie.shapeFlag&128?ie.suspense.next():y(ie.anchor||ie.el),ge=(ie,ae,H)=>{ie==null?ae._vnode&&W(ae._vnode,null,null,!0):S(ae._vnode||null,ie,ae,null,null,null,H),flushPreFlushCbs(),flushPostFlushCbs(),ae._vnode=ie},Ee={p:S,um:W,m:q,r:xe,mt:R,mc:F,pc:G,pbc:N,n:ce,o:i};let Ie,De;return e&&([Ie,De]=e(Ee)),{render:ge,hydrate:Ie,createApp:createAppAPI(ge,Ie)}}function toggleRecurse({effect:i,update:e},r){i.allowRecurse=e.allowRecurse=r}function traverseStaticChildren(i,e,r=!1){const s=i.children,o=e.children;if(isArray$9(s)&&isArray$9(o))for(let a=0;a>1,i[r[c]]0&&(e[s]=r[a-1]),r[a]=s)}}for(a=r.length,l=r[a-1];a-- >0;)r[a]=l,l=e[l];return r}const isTeleport=i=>i.__isTeleport,isTeleportDisabled=i=>i&&(i.disabled||i.disabled===""),isTargetSVG=i=>typeof SVGElement<"u"&&i instanceof SVGElement,resolveTarget=(i,e)=>{const r=i&&i.to;return isString$2(r)?e?e(r):null:r},TeleportImpl={__isTeleport:!0,process(i,e,r,s,o,a,l,c,u,m){const{mc:g,pc:d,pbc:y,o:{insert:A,querySelector:b,createText:S,createComment:E}}=m,x=isTeleportDisabled(e.props);let{shapeFlag:C,children:P,dynamicChildren:k}=e;if(i==null){const I=e.el=S(""),M=e.anchor=S("");A(I,r,s),A(M,r,s);const T=e.target=resolveTarget(e.props,b),F=e.targetAnchor=S("");T&&(A(F,T),l=l||isTargetSVG(T));const D=(N,O)=>{C&16&&g(P,N,O,o,a,l,c,u)};x?D(r,M):T&&D(T,F)}else{e.el=i.el;const I=e.anchor=i.anchor,M=e.target=i.target,T=e.targetAnchor=i.targetAnchor,F=isTeleportDisabled(i.props),D=F?r:M,N=F?I:T;if(l=l||isTargetSVG(M),k?(y(i.dynamicChildren,k,D,o,a,l,c),traverseStaticChildren(i,e,!0)):u||d(i,e,D,N,o,a,l,c,!1),x)F||moveTeleport(e,r,I,m,1);else if((e.props&&e.props.to)!==(i.props&&i.props.to)){const O=e.target=resolveTarget(e.props,b);O&&moveTeleport(e,O,null,m,0)}else F&&moveTeleport(e,M,T,m,1)}updateCssVars(e)},remove(i,e,r,s,{um:o,o:{remove:a}},l){const{shapeFlag:c,children:u,anchor:m,targetAnchor:g,target:d,props:y}=i;if(d&&a(g),(l||!isTeleportDisabled(y))&&(a(m),c&16))for(let A=0;A0?currentBlock||EMPTY_ARR:null,closeBlock(),isBlockTreeEnabled>0&¤tBlock&¤tBlock.push(i),i}function createElementBlock(i,e,r,s,o,a){return setupBlock(createBaseVNode(i,e,r,s,o,a,!0))}function createBlock(i,e,r,s,o){return setupBlock(createVNode(i,e,r,s,o,!0))}function isVNode(i){return i?i.__v_isVNode===!0:!1}function isSameVNodeType(i,e){return i.type===e.type&&i.key===e.key}const InternalObjectKey="__vInternal",normalizeKey=({key:i})=>i!=null?i:null,normalizeRef=({ref:i,ref_key:e,ref_for:r})=>i!=null?isString$2(i)||isRef(i)||isFunction$6(i)?{i:currentRenderingInstance,r:i,k:e,f:!!r}:i:null;function createBaseVNode(i,e=null,r=null,s=0,o=null,a=i===Fragment?0:1,l=!1,c=!1){const u={__v_isVNode:!0,__v_skip:!0,type:i,props:e,key:e&&normalizeKey(e),ref:e&&normalizeRef(e),scopeId:currentScopeId,slotScopeIds:null,children:r,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetAnchor:null,staticCount:0,shapeFlag:a,patchFlag:s,dynamicProps:o,dynamicChildren:null,appContext:null,ctx:currentRenderingInstance};return c?(normalizeChildren(u,r),a&128&&i.normalize(u)):r&&(u.shapeFlag|=isString$2(r)?8:16),isBlockTreeEnabled>0&&!l&¤tBlock&&(u.patchFlag>0||a&6)&&u.patchFlag!==32&¤tBlock.push(u),u}const createVNode=_createVNode;function _createVNode(i,e=null,r=null,s=0,o=null,a=!1){if((!i||i===NULL_DYNAMIC_COMPONENT)&&(i=Comment),isVNode(i)){const c=cloneVNode(i,e,!0);return r&&normalizeChildren(c,r),isBlockTreeEnabled>0&&!a&¤tBlock&&(c.shapeFlag&6?currentBlock[currentBlock.indexOf(i)]=c:currentBlock.push(c)),c.patchFlag|=-2,c}if(isClassComponent(i)&&(i=i.__vccOpts),e){e=guardReactiveProps(e);let{class:c,style:u}=e;c&&!isString$2(c)&&(e.class=normalizeClass(c)),isObject$5(u)&&(isProxy(u)&&!isArray$9(u)&&(u=extend$3({},u)),e.style=normalizeStyle(u))}const l=isString$2(i)?1:isSuspense(i)?128:isTeleport(i)?64:isObject$5(i)?4:isFunction$6(i)?2:0;return createBaseVNode(i,e,r,s,o,l,a,!0)}function guardReactiveProps(i){return i?isProxy(i)||InternalObjectKey in i?extend$3({},i):i:null}function cloneVNode(i,e,r=!1){const{props:s,ref:o,patchFlag:a,children:l}=i,c=e?mergeProps(s||{},e):s;return{__v_isVNode:!0,__v_skip:!0,type:i.type,props:c,key:c&&normalizeKey(c),ref:e&&e.ref?r&&o?isArray$9(o)?o.concat(normalizeRef(e)):[o,normalizeRef(e)]:normalizeRef(e):o,scopeId:i.scopeId,slotScopeIds:i.slotScopeIds,children:l,target:i.target,targetAnchor:i.targetAnchor,staticCount:i.staticCount,shapeFlag:i.shapeFlag,patchFlag:e&&i.type!==Fragment?a===-1?16:a|16:a,dynamicProps:i.dynamicProps,dynamicChildren:i.dynamicChildren,appContext:i.appContext,dirs:i.dirs,transition:i.transition,component:i.component,suspense:i.suspense,ssContent:i.ssContent&&cloneVNode(i.ssContent),ssFallback:i.ssFallback&&cloneVNode(i.ssFallback),el:i.el,anchor:i.anchor,ctx:i.ctx,ce:i.ce}}function createTextVNode(i=" ",e=0){return createVNode(Text,null,i,e)}function createCommentVNode(i="",e=!1){return e?(openBlock(),createBlock(Comment,null,i)):createVNode(Comment,null,i)}function normalizeVNode(i){return i==null||typeof i=="boolean"?createVNode(Comment):isArray$9(i)?createVNode(Fragment,null,i.slice()):typeof i=="object"?cloneIfMounted(i):createVNode(Text,null,String(i))}function cloneIfMounted(i){return i.el===null&&i.patchFlag!==-1||i.memo?i:cloneVNode(i)}function normalizeChildren(i,e){let r=0;const{shapeFlag:s}=i;if(e==null)e=null;else if(isArray$9(e))r=16;else if(typeof e=="object")if(s&65){const o=e.default;o&&(o._c&&(o._d=!1),normalizeChildren(i,o()),o._c&&(o._d=!0));return}else{r=32;const o=e._;!o&&!(InternalObjectKey in e)?e._ctx=currentRenderingInstance:o===3&¤tRenderingInstance&&(currentRenderingInstance.slots._===1?e._=1:(e._=2,i.patchFlag|=1024))}else isFunction$6(e)?(e={default:e,_ctx:currentRenderingInstance},r=32):(e=String(e),s&64?(r=16,e=[createTextVNode(e)]):r=8);i.children=e,i.shapeFlag|=r}function mergeProps(...i){const e={};for(let r=0;rcurrentInstance||currentRenderingInstance,setCurrentInstance=i=>{currentInstance=i,i.scope.on()},unsetCurrentInstance=()=>{currentInstance&¤tInstance.scope.off(),currentInstance=null};function isStatefulComponent(i){return i.vnode.shapeFlag&4}let isInSSRComponentSetup=!1;function setupComponent(i,e=!1){isInSSRComponentSetup=e;const{props:r,children:s}=i.vnode,o=isStatefulComponent(i);initProps(i,r,o,e),initSlots(i,s);const a=o?setupStatefulComponent(i,e):void 0;return isInSSRComponentSetup=!1,a}function setupStatefulComponent(i,e){const r=i.type;i.accessCache=Object.create(null),i.proxy=markRaw(new Proxy(i.ctx,PublicInstanceProxyHandlers));const{setup:s}=r;if(s){const o=i.setupContext=s.length>1?createSetupContext(i):null;setCurrentInstance(i),pauseTracking();const a=callWithErrorHandling(s,i,0,[i.props,o]);if(resetTracking(),unsetCurrentInstance(),isPromise$1(a)){if(a.then(unsetCurrentInstance,unsetCurrentInstance),e)return a.then(l=>{handleSetupResult(i,l,e)}).catch(l=>{handleError(l,i,0)});i.asyncDep=a}else handleSetupResult(i,a,e)}else finishComponentSetup(i,e)}function handleSetupResult(i,e,r){isFunction$6(e)?i.type.__ssrInlineRender?i.ssrRender=e:i.render=e:isObject$5(e)&&(i.setupState=proxyRefs(e)),finishComponentSetup(i,r)}let compile$1;function finishComponentSetup(i,e,r){const s=i.type;if(!i.render){if(!e&&compile$1&&!s.render){const o=s.template||resolveMergedOptions(i).template;if(o){const{isCustomElement:a,compilerOptions:l}=i.appContext.config,{delimiters:c,compilerOptions:u}=s,m=extend$3(extend$3({isCustomElement:a,delimiters:c},l),u);s.render=compile$1(o,m)}}i.render=s.render||NOOP}setCurrentInstance(i),pauseTracking(),applyOptions(i),resetTracking(),unsetCurrentInstance()}function createAttrsProxy(i){return new Proxy(i.attrs,{get(e,r){return track(i,"get","$attrs"),e[r]}})}function createSetupContext(i){const e=s=>{i.exposed=s||{}};let r;return{get attrs(){return r||(r=createAttrsProxy(i))},slots:i.slots,emit:i.emit,expose:e}}function getExposeProxy(i){if(i.exposed)return i.exposeProxy||(i.exposeProxy=new Proxy(proxyRefs(markRaw(i.exposed)),{get(e,r){if(r in e)return e[r];if(r in publicPropertiesMap)return publicPropertiesMap[r](i)},has(e,r){return r in e||r in publicPropertiesMap}}))}function getComponentName(i,e=!0){return isFunction$6(i)?i.displayName||i.name:i.name||e&&i.__name}function isClassComponent(i){return isFunction$6(i)&&"__vccOpts"in i}const computed=(i,e)=>computed$1(i,e,isInSSRComponentSetup);function h$4(i,e,r){const s=arguments.length;return s===2?isObject$5(e)&&!isArray$9(e)?isVNode(e)?createVNode(i,null,[e]):createVNode(i,e):createVNode(i,null,e):(s>3?r=Array.prototype.slice.call(arguments,2):s===3&&isVNode(r)&&(r=[r]),createVNode(i,e,r))}const ssrContextKey=Symbol(""),useSSRContext=()=>inject(ssrContextKey),version="3.2.47",svgNS="http://www.w3.org/2000/svg",doc$2=typeof document<"u"?document:null,templateContainer=doc$2&&doc$2.createElement("template"),nodeOps={insert:(i,e,r)=>{e.insertBefore(i,r||null)},remove:i=>{const e=i.parentNode;e&&e.removeChild(i)},createElement:(i,e,r,s)=>{const o=e?doc$2.createElementNS(svgNS,i):doc$2.createElement(i,r?{is:r}:void 0);return i==="select"&&s&&s.multiple!=null&&o.setAttribute("multiple",s.multiple),o},createText:i=>doc$2.createTextNode(i),createComment:i=>doc$2.createComment(i),setText:(i,e)=>{i.nodeValue=e},setElementText:(i,e)=>{i.textContent=e},parentNode:i=>i.parentNode,nextSibling:i=>i.nextSibling,querySelector:i=>doc$2.querySelector(i),setScopeId(i,e){i.setAttribute(e,"")},insertStaticContent(i,e,r,s,o,a){const l=r?r.previousSibling:e.lastChild;if(o&&(o===a||o.nextSibling))for(;e.insertBefore(o.cloneNode(!0),r),!(o===a||!(o=o.nextSibling)););else{templateContainer.innerHTML=s?`${i}`:i;const c=templateContainer.content;if(s){const u=c.firstChild;for(;u.firstChild;)c.appendChild(u.firstChild);c.removeChild(u)}e.insertBefore(c,r)}return[l?l.nextSibling:e.firstChild,r?r.previousSibling:e.lastChild]}};function patchClass(i,e,r){const s=i._vtc;s&&(e=(e?[e,...s]:[...s]).join(" ")),e==null?i.removeAttribute("class"):r?i.setAttribute("class",e):i.className=e}function patchStyle(i,e,r){const s=i.style,o=isString$2(r);if(r&&!o){if(e&&!isString$2(e))for(const a in e)r[a]==null&&setStyle(s,a,"");for(const a in r)setStyle(s,a,r[a])}else{const a=s.display;o?e!==r&&(s.cssText=r):e&&i.removeAttribute("style"),"_vod"in i&&(s.display=a)}}const importantRE=/\s*!important$/;function setStyle(i,e,r){if(isArray$9(r))r.forEach(s=>setStyle(i,e,s));else if(r==null&&(r=""),e.startsWith("--"))i.setProperty(e,r);else{const s=autoPrefix(i,e);importantRE.test(r)?i.setProperty(hyphenate(s),r.replace(importantRE,""),"important"):i[s]=r}}const prefixes=["Webkit","Moz","ms"],prefixCache={};function autoPrefix(i,e){const r=prefixCache[e];if(r)return r;let s=camelize$2(e);if(s!=="filter"&&s in i)return prefixCache[e]=s;s=capitalize(s);for(let o=0;ocachedNow||(p.then(()=>cachedNow=0),cachedNow=Date.now());function createInvoker(i,e){const r=s=>{if(!s._vts)s._vts=Date.now();else if(s._vts<=r.attached)return;callWithAsyncErrorHandling(patchStopImmediatePropagation(s,r.value),e,5,[s])};return r.value=i,r.attached=getNow(),r}function patchStopImmediatePropagation(i,e){if(isArray$9(e)){const r=i.stopImmediatePropagation;return i.stopImmediatePropagation=()=>{r.call(i),i._stopped=!0},e.map(s=>o=>!o._stopped&&s&&s(o))}else return e}const nativeOnRE=/^on[a-z]/,patchProp=(i,e,r,s,o=!1,a,l,c,u)=>{e==="class"?patchClass(i,s,o):e==="style"?patchStyle(i,r,s):isOn(e)?isModelListener(e)||patchEvent(i,e,r,s,l):(e[0]==="."?(e=e.slice(1),!0):e[0]==="^"?(e=e.slice(1),!1):shouldSetAsProp(i,e,s,o))?patchDOMProp(i,e,s,a,l,c,u):(e==="true-value"?i._trueValue=s:e==="false-value"&&(i._falseValue=s),patchAttr(i,e,s,o))};function shouldSetAsProp(i,e,r,s){return s?!!(e==="innerHTML"||e==="textContent"||e in i&&nativeOnRE.test(e)&&isFunction$6(r)):e==="spellcheck"||e==="draggable"||e==="translate"||e==="form"||e==="list"&&i.tagName==="INPUT"||e==="type"&&i.tagName==="TEXTAREA"||nativeOnRE.test(e)&&isString$2(r)?!1:e in i}const TRANSITION="transition",ANIMATION="animation",Transition=(i,{slots:e})=>h$4(BaseTransition,resolveTransitionProps(i),e);Transition.displayName="Transition";const DOMTransitionPropsValidators={name:String,type:String,css:{type:Boolean,default:!0},duration:[String,Number,Object],enterFromClass:String,enterActiveClass:String,enterToClass:String,appearFromClass:String,appearActiveClass:String,appearToClass:String,leaveFromClass:String,leaveActiveClass:String,leaveToClass:String},TransitionPropsValidators=Transition.props=extend$3({},BaseTransition.props,DOMTransitionPropsValidators),callHook=(i,e=[])=>{isArray$9(i)?i.forEach(r=>r(...e)):i&&i(...e)},hasExplicitCallback=i=>i?isArray$9(i)?i.some(e=>e.length>1):i.length>1:!1;function resolveTransitionProps(i){const e={};for(const B in i)B in DOMTransitionPropsValidators||(e[B]=i[B]);if(i.css===!1)return e;const{name:r="v",type:s,duration:o,enterFromClass:a=`${r}-enter-from`,enterActiveClass:l=`${r}-enter-active`,enterToClass:c=`${r}-enter-to`,appearFromClass:u=a,appearActiveClass:m=l,appearToClass:g=c,leaveFromClass:d=`${r}-leave-from`,leaveActiveClass:y=`${r}-leave-active`,leaveToClass:A=`${r}-leave-to`}=i,b=normalizeDuration(o),S=b&&b[0],E=b&&b[1],{onBeforeEnter:x,onEnter:C,onEnterCancelled:P,onLeave:k,onLeaveCancelled:I,onBeforeAppear:M=x,onAppear:T=C,onAppearCancelled:F=P}=e,D=(B,V,R)=>{removeTransitionClass(B,V?g:c),removeTransitionClass(B,V?m:l),R&&R()},N=(B,V)=>{B._isLeaving=!1,removeTransitionClass(B,d),removeTransitionClass(B,A),removeTransitionClass(B,y),V&&V()},O=B=>(V,R)=>{const Q=B?T:C,_=()=>D(V,B,R);callHook(Q,[V,_]),nextFrame(()=>{removeTransitionClass(V,B?u:a),addTransitionClass(V,B?g:c),hasExplicitCallback(Q)||whenTransitionEnds(V,s,S,_)})};return extend$3(e,{onBeforeEnter(B){callHook(x,[B]),addTransitionClass(B,a),addTransitionClass(B,l)},onBeforeAppear(B){callHook(M,[B]),addTransitionClass(B,u),addTransitionClass(B,m)},onEnter:O(!1),onAppear:O(!0),onLeave(B,V){B._isLeaving=!0;const R=()=>N(B,V);addTransitionClass(B,d),forceReflow(),addTransitionClass(B,y),nextFrame(()=>{B._isLeaving&&(removeTransitionClass(B,d),addTransitionClass(B,A),hasExplicitCallback(k)||whenTransitionEnds(B,s,E,R))}),callHook(k,[B,R])},onEnterCancelled(B){D(B,!1),callHook(P,[B])},onAppearCancelled(B){D(B,!0),callHook(F,[B])},onLeaveCancelled(B){N(B),callHook(I,[B])}})}function normalizeDuration(i){if(i==null)return null;if(isObject$5(i))return[NumberOf(i.enter),NumberOf(i.leave)];{const e=NumberOf(i);return[e,e]}}function NumberOf(i){return toNumber$1(i)}function addTransitionClass(i,e){e.split(/\s+/).forEach(r=>r&&i.classList.add(r)),(i._vtc||(i._vtc=new Set)).add(e)}function removeTransitionClass(i,e){e.split(/\s+/).forEach(s=>s&&i.classList.remove(s));const{_vtc:r}=i;r&&(r.delete(e),r.size||(i._vtc=void 0))}function nextFrame(i){requestAnimationFrame(()=>{requestAnimationFrame(i)})}let endId=0;function whenTransitionEnds(i,e,r,s){const o=i._endId=++endId,a=()=>{o===i._endId&&s()};if(r)return setTimeout(a,r);const{type:l,timeout:c,propCount:u}=getTransitionInfo(i,e);if(!l)return s();const m=l+"end";let g=0;const d=()=>{i.removeEventListener(m,y),a()},y=A=>{A.target===i&&++g>=u&&d()};setTimeout(()=>{g(r[b]||"").split(", "),o=s(`${TRANSITION}Delay`),a=s(`${TRANSITION}Duration`),l=getTimeout(o,a),c=s(`${ANIMATION}Delay`),u=s(`${ANIMATION}Duration`),m=getTimeout(c,u);let g=null,d=0,y=0;e===TRANSITION?l>0&&(g=TRANSITION,d=l,y=a.length):e===ANIMATION?m>0&&(g=ANIMATION,d=m,y=u.length):(d=Math.max(l,m),g=d>0?l>m?TRANSITION:ANIMATION:null,y=g?g===TRANSITION?a.length:u.length:0);const A=g===TRANSITION&&/\b(transform|all)(,|$)/.test(s(`${TRANSITION}Property`).toString());return{type:g,timeout:d,propCount:y,hasTransform:A}}function getTimeout(i,e){for(;i.lengthtoMs(r)+toMs(i[s])))}function toMs(i){return Number(i.slice(0,-1).replace(",","."))*1e3}function forceReflow(){return document.body.offsetHeight}const positionMap=new WeakMap,newPositionMap=new WeakMap,TransitionGroupImpl={name:"TransitionGroup",props:extend$3({},TransitionPropsValidators,{tag:String,moveClass:String}),setup(i,{slots:e}){const r=getCurrentInstance(),s=useTransitionState();let o,a;return onUpdated(()=>{if(!o.length)return;const l=i.moveClass||`${i.name||"v"}-move`;if(!hasCSSTransform(o[0].el,r.vnode.el,l))return;o.forEach(callPendingCbs),o.forEach(recordPosition);const c=o.filter(applyTranslation);forceReflow(),c.forEach(u=>{const m=u.el,g=m.style;addTransitionClass(m,l),g.transform=g.webkitTransform=g.transitionDuration="";const d=m._moveCb=y=>{y&&y.target!==m||(!y||/transform$/.test(y.propertyName))&&(m.removeEventListener("transitionend",d),m._moveCb=null,removeTransitionClass(m,l))};m.addEventListener("transitionend",d)})}),()=>{const l=toRaw(i),c=resolveTransitionProps(l);let u=l.tag||Fragment;o=a,a=e.default?getTransitionRawChildren(e.default()):[];for(let m=0;mdelete i.mode;TransitionGroupImpl.props;const TransitionGroup=TransitionGroupImpl;function callPendingCbs(i){const e=i.el;e._moveCb&&e._moveCb(),e._enterCb&&e._enterCb()}function recordPosition(i){newPositionMap.set(i,i.el.getBoundingClientRect())}function applyTranslation(i){const e=positionMap.get(i),r=newPositionMap.get(i),s=e.left-r.left,o=e.top-r.top;if(s||o){const a=i.el.style;return a.transform=a.webkitTransform=`translate(${s}px,${o}px)`,a.transitionDuration="0s",i}}function hasCSSTransform(i,e,r){const s=i.cloneNode();i._vtc&&i._vtc.forEach(l=>{l.split(/\s+/).forEach(c=>c&&s.classList.remove(c))}),r.split(/\s+/).forEach(l=>l&&s.classList.add(l)),s.style.display="none";const o=e.nodeType===1?e:e.parentNode;o.appendChild(s);const{hasTransform:a}=getTransitionInfo(s);return o.removeChild(s),a}const keyNames={esc:"escape",space:" ",up:"arrow-up",left:"arrow-left",right:"arrow-right",down:"arrow-down",delete:"backspace"},withKeys=(i,e)=>r=>{if(!("key"in r))return;const s=hyphenate(r.key);if(e.some(o=>o===s||keyNames[o]===s))return i(r)},vShow={beforeMount(i,{value:e},{transition:r}){i._vod=i.style.display==="none"?"":i.style.display,r&&e?r.beforeEnter(i):setDisplay(i,e)},mounted(i,{value:e},{transition:r}){r&&e&&r.enter(i)},updated(i,{value:e,oldValue:r},{transition:s}){!e!=!r&&(s?e?(s.beforeEnter(i),setDisplay(i,!0),s.enter(i)):s.leave(i,()=>{setDisplay(i,!1)}):setDisplay(i,e))},beforeUnmount(i,{value:e}){setDisplay(i,e)}};function setDisplay(i,e){i.style.display=e?i._vod:"none"}const rendererOptions=extend$3({patchProp},nodeOps);let renderer;function ensureRenderer(){return renderer||(renderer=createRenderer(rendererOptions))}const createApp=(...i)=>{const e=ensureRenderer().createApp(...i),{mount:r}=e;return e.mount=s=>{const o=normalizeContainer(s);if(!o)return;const a=e._component;!isFunction$6(a)&&!a.render&&!a.template&&(a.template=o.innerHTML),o.innerHTML="";const l=r(o,!1,o instanceof SVGElement);return o instanceof Element&&(o.removeAttribute("v-cloak"),o.setAttribute("data-v-app","")),l},e};function normalizeContainer(i){return isString$2(i)?document.querySelector(i):i}/*! * vue-router v4.1.6 * (c) 2022 Eduardo San Martin Morote * @license MIT */const isBrowser=typeof window<"u";function isESModule(i){return i.__esModule||i[Symbol.toStringTag]==="Module"}const assign$2=Object.assign;function applyToParams(i,e){const r={};for(const s in e){const o=e[s];r[s]=isArray$8(o)?o.map(i):i(o)}return r}const noop$2=()=>{},isArray$8=Array.isArray,TRAILING_SLASH_RE=/\/$/,removeTrailingSlash=i=>i.replace(TRAILING_SLASH_RE,"");function parseURL(i,e,r="/"){let s,o={},a="",l="";const c=e.indexOf("#");let u=e.indexOf("?");return c=0&&(u=-1),u>-1&&(s=e.slice(0,u),a=e.slice(u+1,c>-1?c:e.length),o=i(a)),c>-1&&(s=s||e.slice(0,c),l=e.slice(c,e.length)),s=resolveRelativePath(s!=null?s:e,r),{fullPath:s+(a&&"?")+a+l,path:s,query:o,hash:l}}function stringifyURL(i,e){const r=e.query?i(e.query):"";return e.path+(r&&"?")+r+(e.hash||"")}function stripBase(i,e){return!e||!i.toLowerCase().startsWith(e.toLowerCase())?i:i.slice(e.length)||"/"}function isSameRouteLocation(i,e,r){const s=e.matched.length-1,o=r.matched.length-1;return s>-1&&s===o&&isSameRouteRecord(e.matched[s],r.matched[o])&&isSameRouteLocationParams(e.params,r.params)&&i(e.query)===i(r.query)&&e.hash===r.hash}function isSameRouteRecord(i,e){return(i.aliasOf||i)===(e.aliasOf||e)}function isSameRouteLocationParams(i,e){if(Object.keys(i).length!==Object.keys(e).length)return!1;for(const r in i)if(!isSameRouteLocationParamsValue(i[r],e[r]))return!1;return!0}function isSameRouteLocationParamsValue(i,e){return isArray$8(i)?isEquivalentArray(i,e):isArray$8(e)?isEquivalentArray(e,i):i===e}function isEquivalentArray(i,e){return isArray$8(e)?i.length===e.length&&i.every((r,s)=>r===e[s]):i.length===1&&i[0]===e}function resolveRelativePath(i,e){if(i.startsWith("/"))return i;if(!i)return e;const r=e.split("/"),s=i.split("/");let o=r.length-1,a,l;for(a=0;a1&&o--;else break;return r.slice(0,o).join("/")+"/"+s.slice(a-(a===s.length?1:0)).join("/")}var NavigationType;(function(i){i.pop="pop",i.push="push"})(NavigationType||(NavigationType={}));var NavigationDirection;(function(i){i.back="back",i.forward="forward",i.unknown=""})(NavigationDirection||(NavigationDirection={}));function normalizeBase(i){if(!i)if(isBrowser){const e=document.querySelector("base");i=e&&e.getAttribute("href")||"/",i=i.replace(/^\w+:\/\/[^\/]+/,"")}else i="/";return i[0]!=="/"&&i[0]!=="#"&&(i="/"+i),removeTrailingSlash(i)}const BEFORE_HASH_RE=/^[^#]+#/;function createHref(i,e){return i.replace(BEFORE_HASH_RE,"#")+e}function getElementPosition(i,e){const r=document.documentElement.getBoundingClientRect(),s=i.getBoundingClientRect();return{behavior:e.behavior,left:s.left-r.left-(e.left||0),top:s.top-r.top-(e.top||0)}}const computeScrollPosition=()=>({left:window.pageXOffset,top:window.pageYOffset});function scrollToPosition(i){let e;if("el"in i){const r=i.el,s=typeof r=="string"&&r.startsWith("#"),o=typeof r=="string"?s?document.getElementById(r.slice(1)):document.querySelector(r):r;if(!o)return;e=getElementPosition(o,i)}else e=i;"scrollBehavior"in document.documentElement.style?window.scrollTo(e):window.scrollTo(e.left!=null?e.left:window.pageXOffset,e.top!=null?e.top:window.pageYOffset)}function getScrollKey(i,e){return(history.state?history.state.position-e:-1)+i}const scrollPositions=new Map;function saveScrollPosition(i,e){scrollPositions.set(i,e)}function getSavedScrollPosition(i){const e=scrollPositions.get(i);return scrollPositions.delete(i),e}let createBaseLocation=()=>location.protocol+"//"+location.host;function createCurrentLocation(i,e){const{pathname:r,search:s,hash:o}=e,a=i.indexOf("#");if(a>-1){let c=o.includes(i.slice(a))?i.slice(a).length:1,u=o.slice(c);return u[0]!=="/"&&(u="/"+u),stripBase(u,"")}return stripBase(r,i)+s+o}function useHistoryListeners(i,e,r,s){let o=[],a=[],l=null;const c=({state:y})=>{const A=createCurrentLocation(i,location),b=r.value,S=e.value;let E=0;if(y){if(r.value=A,e.value=y,l&&l===b){l=null;return}E=S?y.position-S.position:0}else s(A);o.forEach(x=>{x(r.value,b,{delta:E,type:NavigationType.pop,direction:E?E>0?NavigationDirection.forward:NavigationDirection.back:NavigationDirection.unknown})})};function u(){l=r.value}function m(y){o.push(y);const A=()=>{const b=o.indexOf(y);b>-1&&o.splice(b,1)};return a.push(A),A}function g(){const{history:y}=window;y.state&&y.replaceState(assign$2({},y.state,{scroll:computeScrollPosition()}),"")}function d(){for(const y of a)y();a=[],window.removeEventListener("popstate",c),window.removeEventListener("beforeunload",g)}return window.addEventListener("popstate",c),window.addEventListener("beforeunload",g),{pauseListeners:u,listen:m,destroy:d}}function buildState(i,e,r,s=!1,o=!1){return{back:i,current:e,forward:r,replaced:s,position:window.history.length,scroll:o?computeScrollPosition():null}}function useHistoryStateNavigation(i){const{history:e,location:r}=window,s={value:createCurrentLocation(i,r)},o={value:e.state};o.value||a(s.value,{back:null,current:s.value,forward:null,position:e.length-1,replaced:!0,scroll:null},!0);function a(u,m,g){const d=i.indexOf("#"),y=d>-1?(r.host&&document.querySelector("base")?i:i.slice(d))+u:createBaseLocation()+i+u;try{e[g?"replaceState":"pushState"](m,"",y),o.value=m}catch(A){console.error(A),r[g?"replace":"assign"](y)}}function l(u,m){const g=assign$2({},e.state,buildState(o.value.back,u,o.value.forward,!0),m,{position:o.value.position});a(u,g,!0),s.value=u}function c(u,m){const g=assign$2({},o.value,e.state,{forward:u,scroll:computeScrollPosition()});a(g.current,g,!0);const d=assign$2({},buildState(s.value,u,null),{position:g.position+1},m);a(u,d,!1),s.value=u}return{location:s,state:o,push:c,replace:l}}function createWebHistory(i){i=normalizeBase(i);const e=useHistoryStateNavigation(i),r=useHistoryListeners(i,e.state,e.location,e.replace);function s(a,l=!0){l||r.pauseListeners(),history.go(a)}const o=assign$2({location:"",base:i,go:s,createHref:createHref.bind(null,i)},e,r);return Object.defineProperty(o,"location",{enumerable:!0,get:()=>e.location.value}),Object.defineProperty(o,"state",{enumerable:!0,get:()=>e.state.value}),o}function createWebHashHistory(i){return i=location.host?i||location.pathname+location.search:"",i.includes("#")||(i+="#"),createWebHistory(i)}function isRouteLocation(i){return typeof i=="string"||i&&typeof i=="object"}function isRouteName(i){return typeof i=="string"||typeof i=="symbol"}const START_LOCATION_NORMALIZED={path:"/",name:void 0,params:{},query:{},hash:"",fullPath:"/",matched:[],meta:{},redirectedFrom:void 0},NavigationFailureSymbol=Symbol("");var NavigationFailureType;(function(i){i[i.aborted=4]="aborted",i[i.cancelled=8]="cancelled",i[i.duplicated=16]="duplicated"})(NavigationFailureType||(NavigationFailureType={}));function createRouterError(i,e){return assign$2(new Error,{type:i,[NavigationFailureSymbol]:!0},e)}function isNavigationFailure(i,e){return i instanceof Error&&NavigationFailureSymbol in i&&(e==null||!!(i.type&e))}const BASE_PARAM_PATTERN="[^/]+?",BASE_PATH_PARSER_OPTIONS={sensitive:!1,strict:!1,start:!0,end:!0},REGEX_CHARS_RE=/[.+*?^${}()[\]/\\]/g;function tokensToParser(i,e){const r=assign$2({},BASE_PATH_PARSER_OPTIONS,e),s=[];let o=r.start?"^":"";const a=[];for(const m of i){const g=m.length?[]:[90];r.strict&&!m.length&&(o+="/");for(let d=0;de.length?e.length===1&&e[0]===40+40?1:-1:0}function comparePathParserScore(i,e){let r=0;const s=i.score,o=e.score;for(;r0&&e[e.length-1]<0}const ROOT_TOKEN={type:0,value:""},VALID_PARAM_RE=/[a-zA-Z0-9_]/;function tokenizePath(i){if(!i)return[[]];if(i==="/")return[[ROOT_TOKEN]];if(!i.startsWith("/"))throw new Error(`Invalid path "${i}"`);function e(A){throw new Error(`ERR (${r})/"${m}": ${A}`)}let r=0,s=r;const o=[];let a;function l(){a&&o.push(a),a=[]}let c=0,u,m="",g="";function d(){m&&(r===0?a.push({type:0,value:m}):r===1||r===2||r===3?(a.length>1&&(u==="*"||u==="+")&&e(`A repeatable param (${m}) must be alone in its segment. eg: '/:ids+.`),a.push({type:1,value:m,regexp:g,repeatable:u==="*"||u==="+",optional:u==="*"||u==="?"})):e("Invalid state to consume buffer"),m="")}function y(){m+=u}for(;c{l(C)}:noop$2}function l(g){if(isRouteName(g)){const d=s.get(g);d&&(s.delete(g),r.splice(r.indexOf(d),1),d.children.forEach(l),d.alias.forEach(l))}else{const d=r.indexOf(g);d>-1&&(r.splice(d,1),g.record.name&&s.delete(g.record.name),g.children.forEach(l),g.alias.forEach(l))}}function c(){return r}function u(g){let d=0;for(;d=0&&(g.record.path!==r[d].record.path||!isRecordChildOf(g,r[d]));)d++;r.splice(d,0,g),g.record.name&&!isAliasRecord(g)&&s.set(g.record.name,g)}function m(g,d){let y,A={},b,S;if("name"in g&&g.name){if(y=s.get(g.name),!y)throw createRouterError(1,{location:g});S=y.record.name,A=assign$2(paramsFromLocation(d.params,y.keys.filter(C=>!C.optional).map(C=>C.name)),g.params&¶msFromLocation(g.params,y.keys.map(C=>C.name))),b=y.stringify(A)}else if("path"in g)b=g.path,y=r.find(C=>C.re.test(b)),y&&(A=y.parse(b),S=y.record.name);else{if(y=d.name?s.get(d.name):r.find(C=>C.re.test(d.path)),!y)throw createRouterError(1,{location:g,currentLocation:d});S=y.record.name,A=assign$2({},d.params,g.params),b=y.stringify(A)}const E=[];let x=y;for(;x;)E.unshift(x.record),x=x.parent;return{name:S,path:b,params:A,matched:E,meta:mergeMetaFields(E)}}return i.forEach(g=>a(g)),{addRoute:a,resolve:m,removeRoute:l,getRoutes:c,getRecordMatcher:o}}function paramsFromLocation(i,e){const r={};for(const s of e)s in i&&(r[s]=i[s]);return r}function normalizeRouteRecord(i){return{path:i.path,redirect:i.redirect,name:i.name,meta:i.meta||{},aliasOf:void 0,beforeEnter:i.beforeEnter,props:normalizeRecordProps(i),children:i.children||[],instances:{},leaveGuards:new Set,updateGuards:new Set,enterCallbacks:{},components:"components"in i?i.components||null:i.component&&{default:i.component}}}function normalizeRecordProps(i){const e={},r=i.props||!1;if("component"in i)e.default=r;else for(const s in i.components)e[s]=typeof r=="boolean"?r:r[s];return e}function isAliasRecord(i){for(;i;){if(i.record.aliasOf)return!0;i=i.parent}return!1}function mergeMetaFields(i){return i.reduce((e,r)=>assign$2(e,r.meta),{})}function mergeOptions(i,e){const r={};for(const s in i)r[s]=s in e?e[s]:i[s];return r}function isRecordChildOf(i,e){return e.children.some(r=>r===i||isRecordChildOf(i,r))}const HASH_RE=/#/g,AMPERSAND_RE=/&/g,SLASH_RE=/\//g,EQUAL_RE=/=/g,IM_RE=/\?/g,PLUS_RE=/\+/g,ENC_BRACKET_OPEN_RE=/%5B/g,ENC_BRACKET_CLOSE_RE=/%5D/g,ENC_CARET_RE=/%5E/g,ENC_BACKTICK_RE=/%60/g,ENC_CURLY_OPEN_RE=/%7B/g,ENC_PIPE_RE=/%7C/g,ENC_CURLY_CLOSE_RE=/%7D/g,ENC_SPACE_RE=/%20/g;function commonEncode(i){return encodeURI(""+i).replace(ENC_PIPE_RE,"|").replace(ENC_BRACKET_OPEN_RE,"[").replace(ENC_BRACKET_CLOSE_RE,"]")}function encodeHash(i){return commonEncode(i).replace(ENC_CURLY_OPEN_RE,"{").replace(ENC_CURLY_CLOSE_RE,"}").replace(ENC_CARET_RE,"^")}function encodeQueryValue(i){return commonEncode(i).replace(PLUS_RE,"%2B").replace(ENC_SPACE_RE,"+").replace(HASH_RE,"%23").replace(AMPERSAND_RE,"%26").replace(ENC_BACKTICK_RE,"`").replace(ENC_CURLY_OPEN_RE,"{").replace(ENC_CURLY_CLOSE_RE,"}").replace(ENC_CARET_RE,"^")}function encodeQueryKey(i){return encodeQueryValue(i).replace(EQUAL_RE,"%3D")}function encodePath(i){return commonEncode(i).replace(HASH_RE,"%23").replace(IM_RE,"%3F")}function encodeParam(i){return i==null?"":encodePath(i).replace(SLASH_RE,"%2F")}function decode$5(i){try{return decodeURIComponent(""+i)}catch(e){}return""+i}function parseQuery(i){const e={};if(i===""||i==="?")return e;const s=(i[0]==="?"?i.slice(1):i).split("&");for(let o=0;oa&&encodeQueryValue(a)):[s&&encodeQueryValue(s)]).forEach(a=>{a!==void 0&&(e+=(e.length?"&":"")+r,a!=null&&(e+="="+a))})}return e}function normalizeQuery(i){const e={};for(const r in i){const s=i[r];s!==void 0&&(e[r]=isArray$8(s)?s.map(o=>o==null?null:""+o):s==null?s:""+s)}return e}const matchedRouteKey=Symbol(""),viewDepthKey=Symbol(""),routerKey=Symbol(""),routeLocationKey=Symbol(""),routerViewLocationKey=Symbol("");function useCallbacks(){let i=[];function e(s){return i.push(s),()=>{const o=i.indexOf(s);o>-1&&i.splice(o,1)}}function r(){i=[]}return{add:e,list:()=>i,reset:r}}function guardToPromiseFn(i,e,r,s,o){const a=s&&(s.enterCallbacks[o]=s.enterCallbacks[o]||[]);return()=>new Promise((l,c)=>{const u=d=>{d===!1?c(createRouterError(4,{from:r,to:e})):d instanceof Error?c(d):isRouteLocation(d)?c(createRouterError(2,{from:e,to:d})):(a&&s.enterCallbacks[o]===a&&typeof d=="function"&&a.push(d),l())},m=i.call(s&&s.instances[o],e,r,u);let g=Promise.resolve(m);i.length<3&&(g=g.then(u)),g.catch(d=>c(d))})}function extractComponentsGuards(i,e,r,s){const o=[];for(const a of i)for(const l in a.components){let c=a.components[l];if(!(e!=="beforeRouteEnter"&&!a.instances[l]))if(isRouteComponent(c)){const m=(c.__vccOpts||c)[e];m&&o.push(guardToPromiseFn(m,r,s,a,l))}else{let u=c();o.push(()=>u.then(m=>{if(!m)return Promise.reject(new Error(`Couldn't resolve component "${l}" at "${a.path}"`));const g=isESModule(m)?m.default:m;a.components[l]=g;const y=(g.__vccOpts||g)[e];return y&&guardToPromiseFn(y,r,s,a,l)()}))}}return o}function isRouteComponent(i){return typeof i=="object"||"displayName"in i||"props"in i||"__vccOpts"in i}function useLink(i){const e=inject(routerKey),r=inject(routeLocationKey),s=computed(()=>e.resolve(unref(i.to))),o=computed(()=>{const{matched:u}=s.value,{length:m}=u,g=u[m-1],d=r.matched;if(!g||!d.length)return-1;const y=d.findIndex(isSameRouteRecord.bind(null,g));if(y>-1)return y;const A=getOriginalPath(u[m-2]);return m>1&&getOriginalPath(g)===A&&d[d.length-1].path!==A?d.findIndex(isSameRouteRecord.bind(null,u[m-2])):y}),a=computed(()=>o.value>-1&&includesParams(r.params,s.value.params)),l=computed(()=>o.value>-1&&o.value===r.matched.length-1&&isSameRouteLocationParams(r.params,s.value.params));function c(u={}){return guardEvent(u)?e[unref(i.replace)?"replace":"push"](unref(i.to)).catch(noop$2):Promise.resolve()}return{route:s,href:computed(()=>s.value.href),isActive:a,isExactActive:l,navigate:c}}const RouterLinkImpl=defineComponent({name:"RouterLink",compatConfig:{MODE:3},props:{to:{type:[String,Object],required:!0},replace:Boolean,activeClass:String,exactActiveClass:String,custom:Boolean,ariaCurrentValue:{type:String,default:"page"}},useLink,setup(i,{slots:e}){const r=reactive(useLink(i)),{options:s}=inject(routerKey),o=computed(()=>({[getLinkClass(i.activeClass,s.linkActiveClass,"router-link-active")]:r.isActive,[getLinkClass(i.exactActiveClass,s.linkExactActiveClass,"router-link-exact-active")]:r.isExactActive}));return()=>{const a=e.default&&e.default(r);return i.custom?a:h$4("a",{"aria-current":r.isExactActive?i.ariaCurrentValue:null,href:r.href,onClick:r.navigate,class:o.value},a)}}}),RouterLink=RouterLinkImpl;function guardEvent(i){if(!(i.metaKey||i.altKey||i.ctrlKey||i.shiftKey)&&!i.defaultPrevented&&!(i.button!==void 0&&i.button!==0)){if(i.currentTarget&&i.currentTarget.getAttribute){const e=i.currentTarget.getAttribute("target");if(/\b_blank\b/i.test(e))return}return i.preventDefault&&i.preventDefault(),!0}}function includesParams(i,e){for(const r in e){const s=e[r],o=i[r];if(typeof s=="string"){if(s!==o)return!1}else if(!isArray$8(o)||o.length!==s.length||s.some((a,l)=>a!==o[l]))return!1}return!0}function getOriginalPath(i){return i?i.aliasOf?i.aliasOf.path:i.path:""}const getLinkClass=(i,e,r)=>i!=null?i:e!=null?e:r,RouterViewImpl=defineComponent({name:"RouterView",inheritAttrs:!1,props:{name:{type:String,default:"default"},route:Object},compatConfig:{MODE:3},setup(i,{attrs:e,slots:r}){const s=inject(routerViewLocationKey),o=computed(()=>i.route||s.value),a=inject(viewDepthKey,0),l=computed(()=>{let m=unref(a);const{matched:g}=o.value;let d;for(;(d=g[m])&&!d.components;)m++;return m}),c=computed(()=>o.value.matched[l.value]);provide(viewDepthKey,computed(()=>l.value+1)),provide(matchedRouteKey,c),provide(routerViewLocationKey,o);const u=ref();return watch(()=>[u.value,c.value,i.name],([m,g,d],[y,A,b])=>{g&&(g.instances[d]=m,A&&A!==g&&m&&m===y&&(g.leaveGuards.size||(g.leaveGuards=A.leaveGuards),g.updateGuards.size||(g.updateGuards=A.updateGuards))),m&&g&&(!A||!isSameRouteRecord(g,A)||!y)&&(g.enterCallbacks[d]||[]).forEach(S=>S(m))},{flush:"post"}),()=>{const m=o.value,g=i.name,d=c.value,y=d&&d.components[g];if(!y)return normalizeSlot(r.default,{Component:y,route:m});const A=d.props[g],b=A?A===!0?m.params:typeof A=="function"?A(m):A:null,E=h$4(y,assign$2({},b,e,{onVnodeUnmounted:x=>{x.component.isUnmounted&&(d.instances[g]=null)},ref:u}));return normalizeSlot(r.default,{Component:E,route:m})||E}}});function normalizeSlot(i,e){if(!i)return null;const r=i(e);return r.length===1?r[0]:r}const RouterView=RouterViewImpl;function createRouter(i){const e=createRouterMatcher(i.routes,i),r=i.parseQuery||parseQuery,s=i.stringifyQuery||stringifyQuery,o=i.history,a=useCallbacks(),l=useCallbacks(),c=useCallbacks(),u=shallowRef(START_LOCATION_NORMALIZED);let m=START_LOCATION_NORMALIZED;isBrowser&&i.scrollBehavior&&"scrollRestoration"in history&&(history.scrollRestoration="manual");const g=applyToParams.bind(null,Y=>""+Y),d=applyToParams.bind(null,encodeParam),y=applyToParams.bind(null,decode$5);function A(Y,J){let ce,ge;return isRouteName(Y)?(ce=e.getRecordMatcher(Y),ge=J):ge=Y,e.addRoute(ge,ce)}function b(Y){const J=e.getRecordMatcher(Y);J&&e.removeRoute(J)}function S(){return e.getRoutes().map(Y=>Y.record)}function E(Y){return!!e.getRecordMatcher(Y)}function x(Y,J){if(J=assign$2({},J||u.value),typeof Y=="string"){const ie=parseURL(r,Y,J.path),ae=e.resolve({path:ie.path},J),H=o.createHref(ie.fullPath);return assign$2(ie,ae,{params:y(ae.params),hash:decode$5(ie.hash),redirectedFrom:void 0,href:H})}let ce;if("path"in Y)ce=assign$2({},Y,{path:parseURL(r,Y.path,J.path).path});else{const ie=assign$2({},Y.params);for(const ae in ie)ie[ae]==null&&delete ie[ae];ce=assign$2({},Y,{params:d(Y.params)}),J.params=d(J.params)}const ge=e.resolve(ce,J),Ee=Y.hash||"";ge.params=g(y(ge.params));const Ie=stringifyURL(s,assign$2({},Y,{hash:encodeHash(Ee),path:ge.path})),De=o.createHref(Ie);return assign$2({fullPath:Ie,hash:Ee,query:s===stringifyQuery?normalizeQuery(Y.query):Y.query||{}},ge,{redirectedFrom:void 0,href:De})}function C(Y){return typeof Y=="string"?parseURL(r,Y,u.value.path):assign$2({},Y)}function P(Y,J){if(m!==Y)return createRouterError(8,{from:J,to:Y})}function k(Y){return T(Y)}function I(Y){return k(assign$2(C(Y),{replace:!0}))}function M(Y){const J=Y.matched[Y.matched.length-1];if(J&&J.redirect){const{redirect:ce}=J;let ge=typeof ce=="function"?ce(Y):ce;return typeof ge=="string"&&(ge=ge.includes("?")||ge.includes("#")?ge=C(ge):{path:ge},ge.params={}),assign$2({query:Y.query,hash:Y.hash,params:"path"in ge?{}:Y.params},ge)}}function T(Y,J){const ce=m=x(Y),ge=u.value,Ee=Y.state,Ie=Y.force,De=Y.replace===!0,ie=M(ce);if(ie)return T(assign$2(C(ie),{state:typeof ie=="object"?assign$2({},Ee,ie.state):Ee,force:Ie,replace:De}),J||ce);const ae=ce;ae.redirectedFrom=J;let H;return!Ie&&isSameRouteLocation(s,ge,ce)&&(H=createRouterError(16,{to:ae,from:ge}),$(ge,ge,!0,!1)),(H?Promise.resolve(H):D(ae,ge)).catch(ve=>isNavigationFailure(ve)?isNavigationFailure(ve,2)?ve:U(ve):K(ve,ae,ge)).then(ve=>{if(ve){if(isNavigationFailure(ve,2))return T(assign$2({replace:De},C(ve.to),{state:typeof ve.to=="object"?assign$2({},Ee,ve.to.state):Ee,force:Ie}),J||ae)}else ve=O(ae,ge,!0,De,Ee);return N(ae,ge,ve),ve})}function F(Y,J){const ce=P(Y,J);return ce?Promise.reject(ce):Promise.resolve()}function D(Y,J){let ce;const[ge,Ee,Ie]=extractChangingRecords(Y,J);ce=extractComponentsGuards(ge.reverse(),"beforeRouteLeave",Y,J);for(const ie of ge)ie.leaveGuards.forEach(ae=>{ce.push(guardToPromiseFn(ae,Y,J))});const De=F.bind(null,Y,J);return ce.push(De),runGuardQueue(ce).then(()=>{ce=[];for(const ie of a.list())ce.push(guardToPromiseFn(ie,Y,J));return ce.push(De),runGuardQueue(ce)}).then(()=>{ce=extractComponentsGuards(Ee,"beforeRouteUpdate",Y,J);for(const ie of Ee)ie.updateGuards.forEach(ae=>{ce.push(guardToPromiseFn(ae,Y,J))});return ce.push(De),runGuardQueue(ce)}).then(()=>{ce=[];for(const ie of Y.matched)if(ie.beforeEnter&&!J.matched.includes(ie))if(isArray$8(ie.beforeEnter))for(const ae of ie.beforeEnter)ce.push(guardToPromiseFn(ae,Y,J));else ce.push(guardToPromiseFn(ie.beforeEnter,Y,J));return ce.push(De),runGuardQueue(ce)}).then(()=>(Y.matched.forEach(ie=>ie.enterCallbacks={}),ce=extractComponentsGuards(Ie,"beforeRouteEnter",Y,J),ce.push(De),runGuardQueue(ce))).then(()=>{ce=[];for(const ie of l.list())ce.push(guardToPromiseFn(ie,Y,J));return ce.push(De),runGuardQueue(ce)}).catch(ie=>isNavigationFailure(ie,8)?ie:Promise.reject(ie))}function N(Y,J,ce){for(const ge of c.list())ge(Y,J,ce)}function O(Y,J,ce,ge,Ee){const Ie=P(Y,J);if(Ie)return Ie;const De=J===START_LOCATION_NORMALIZED,ie=isBrowser?history.state:{};ce&&(ge||De?o.replace(Y.fullPath,assign$2({scroll:De&&ie&&ie.scroll},Ee)):o.push(Y.fullPath,Ee)),u.value=Y,$(Y,J,ce,De),U()}let B;function V(){B||(B=o.listen((Y,J,ce)=>{if(!ue.listening)return;const ge=x(Y),Ee=M(ge);if(Ee){T(assign$2(Ee,{replace:!0}),ge).catch(noop$2);return}m=ge;const Ie=u.value;isBrowser&&saveScrollPosition(getScrollKey(Ie.fullPath,ce.delta),computeScrollPosition()),D(ge,Ie).catch(De=>isNavigationFailure(De,12)?De:isNavigationFailure(De,2)?(T(De.to,ge).then(ie=>{isNavigationFailure(ie,20)&&!ce.delta&&ce.type===NavigationType.pop&&o.go(-1,!1)}).catch(noop$2),Promise.reject()):(ce.delta&&o.go(-ce.delta,!1),K(De,ge,Ie))).then(De=>{De=De||O(ge,Ie,!1),De&&(ce.delta&&!isNavigationFailure(De,8)?o.go(-ce.delta,!1):ce.type===NavigationType.pop&&isNavigationFailure(De,20)&&o.go(-1,!1)),N(ge,Ie,De)}).catch(noop$2)}))}let R=useCallbacks(),Q=useCallbacks(),_;function K(Y,J,ce){U(Y);const ge=Q.list();return ge.length?ge.forEach(Ee=>Ee(Y,J,ce)):console.error(Y),Promise.reject(Y)}function G(){return _&&u.value!==START_LOCATION_NORMALIZED?Promise.resolve():new Promise((Y,J)=>{R.add([Y,J])})}function U(Y){return _||(_=!Y,V(),R.list().forEach(([J,ce])=>Y?ce(Y):J()),R.reset()),Y}function $(Y,J,ce,ge){const{scrollBehavior:Ee}=i;if(!isBrowser||!Ee)return Promise.resolve();const Ie=!ce&&getSavedScrollPosition(getScrollKey(Y.fullPath,0))||(ge||!ce)&&history.state&&history.state.scroll||null;return nextTick().then(()=>Ee(Y,J,Ie)).then(De=>De&&scrollToPosition(De)).catch(De=>K(De,Y,J))}const q=Y=>o.go(Y);let W;const xe=new Set,ue={currentRoute:u,listening:!0,addRoute:A,removeRoute:b,hasRoute:E,getRoutes:S,resolve:x,options:i,push:k,replace:I,go:q,back:()=>q(-1),forward:()=>q(1),beforeEach:a.add,beforeResolve:l.add,afterEach:c.add,onError:Q.add,isReady:G,install(Y){const J=this;Y.component("RouterLink",RouterLink),Y.component("RouterView",RouterView),Y.config.globalProperties.$router=J,Object.defineProperty(Y.config.globalProperties,"$route",{enumerable:!0,get:()=>unref(u)}),isBrowser&&!W&&u.value===START_LOCATION_NORMALIZED&&(W=!0,k(o.location).catch(Ee=>{}));const ce={};for(const Ee in START_LOCATION_NORMALIZED)ce[Ee]=computed(()=>u.value[Ee]);Y.provide(routerKey,J),Y.provide(routeLocationKey,reactive(ce)),Y.provide(routerViewLocationKey,u);const ge=Y.unmount;xe.add(Y),Y.unmount=function(){xe.delete(Y),xe.size<1&&(m=START_LOCATION_NORMALIZED,B&&B(),B=null,u.value=START_LOCATION_NORMALIZED,W=!1,_=!1),ge()}}};return ue}function runGuardQueue(i){return i.reduce((e,r)=>e.then(()=>r()),Promise.resolve())}function extractChangingRecords(i,e){const r=[],s=[],o=[],a=Math.max(e.matched.length,i.matched.length);for(let l=0;lisSameRouteRecord(m,c))?s.push(c):r.push(c));const u=i.matched[l];u&&(e.matched.find(m=>isSameRouteRecord(m,u))||o.push(u))}return[r,s,o]}function useRouter(){return inject(routerKey)}function useRoute$1(){return inject(routeLocationKey)}const isDef$1=i=>i!=null,isFunction$5=i=>typeof i=="function",isObject$4=i=>i!==null&&typeof i=="object",isPromise=i=>isObject$4(i)&&isFunction$5(i.then)&&isFunction$5(i.catch),isNumeric=i=>typeof i=="number"||/^\d+(\.\d+)?$/.test(i),isIOS$2=()=>inBrowser$2?/ios|iphone|ipad|ipod/.test(navigator.userAgent.toLowerCase()):!1;function noop$1(){}const extend$2=Object.assign,inBrowser$2=typeof window<"u";function get(i,e){const r=e.split(".");let s=i;return r.forEach(o=>{var a;s=isObject$4(s)&&(a=s[o])!=null?a:""}),s}function pick$1(i,e,r){return e.reduce((s,o)=>((!r||i[o]!==void 0)&&(s[o]=i[o]),s),{})}const isSameValue=(i,e)=>JSON.stringify(i)===JSON.stringify(e),toArray=i=>Array.isArray(i)?i:[i],unknownProp=null,numericProp=[Number,String],truthProp={type:Boolean,default:!0},makeRequiredProp=i=>({type:i,required:!0}),makeArrayProp=()=>({type:Array,default:()=>[]}),makeNumberProp=i=>({type:Number,default:i}),makeNumericProp=i=>({type:numericProp,default:i}),makeStringProp=i=>({type:String,default:i});var inBrowser$1=typeof window<"u";function raf(i){return inBrowser$1?requestAnimationFrame(i):-1}function cancelRaf(i){inBrowser$1&&cancelAnimationFrame(i)}function doubleRaf(i){raf(()=>raf(i))}var isWindow=i=>i===window,makeDOMRect=(i,e)=>({top:0,left:0,right:i,bottom:e,width:i,height:e}),useRect=i=>{const e=unref(i);if(isWindow(e)){const r=e.innerWidth,s=e.innerHeight;return makeDOMRect(r,s)}return e!=null&&e.getBoundingClientRect?e.getBoundingClientRect():makeDOMRect(0,0)};function useParent$1(i){const e=inject(i,null);if(e){const r=getCurrentInstance(),{link:s,unlink:o,internalChildren:a}=e;s(r),onUnmounted(()=>o(r));const l=computed(()=>a.indexOf(r));return{parent:e,index:l}}return{parent:null,index:ref(-1)}}function flattenVNodes(i){const e=[],r=s=>{Array.isArray(s)&&s.forEach(o=>{var a;isVNode(o)&&(e.push(o),(a=o.component)!=null&&a.subTree&&(e.push(o.component.subTree),r(o.component.subTree.children)),o.children&&r(o.children))})};return r(i),e}var findVNodeIndex=(i,e)=>{const r=i.indexOf(e);return r===-1?i.findIndex(s=>e.key!==void 0&&e.key!==null&&s.type===e.type&&s.key===e.key):r};function sortChildren(i,e,r){const s=flattenVNodes(i.subTree.children);r.sort((a,l)=>findVNodeIndex(s,a.vnode)-findVNodeIndex(s,l.vnode));const o=r.map(a=>a.proxy);e.sort((a,l)=>{const c=o.indexOf(a),u=o.indexOf(l);return c-u})}function useChildren$1(i){const e=reactive([]),r=reactive([]),s=getCurrentInstance();return{children:e,linkChildren:a=>{provide(i,Object.assign({link:u=>{u.proxy&&(r.push(u),e.push(u.proxy),sortChildren(s,e,r))},unlink:u=>{const m=r.indexOf(u);e.splice(m,1),r.splice(m,1)},children:e,internalChildren:r},a))}}}function onMountedOrActivated(i){let e;onMounted(()=>{i(),nextTick(()=>{e=!0})}),onActivated(()=>{e&&i()})}function useEventListener$1(i,e,r={}){if(!inBrowser$1)return;const{target:s=window,passive:o=!1,capture:a=!1}=r;let l=!1,c;const u=d=>{if(l)return;const y=unref(d);y&&!c&&(y.addEventListener(i,e,{capture:a,passive:o}),c=!0)},m=d=>{if(l)return;const y=unref(d);y&&c&&(y.removeEventListener(i,e,a),c=!1)};onUnmounted(()=>m(s)),onDeactivated(()=>m(s)),onMountedOrActivated(()=>u(s));let g;return isRef(s)&&(g=watch(s,(d,y)=>{m(y),u(d)})),()=>{g==null||g(),m(s),l=!0}}function useClickAway(i,e,r={}){if(!inBrowser$1)return;const{eventName:s="click"}=r;useEventListener$1(s,a=>{(Array.isArray(i)?i:[i]).every(u=>{const m=unref(u);return m&&!m.contains(a.target)})&&e(a)},{target:document})}var width,height;function useWindowSize(){if(!width&&(width=ref(0),height=ref(0),inBrowser$1)){const i=()=>{width.value=window.innerWidth,height.value=window.innerHeight};i(),window.addEventListener("resize",i,{passive:!0}),window.addEventListener("orientationchange",i,{passive:!0})}return{width,height}}var overflowScrollReg=/scroll|auto|overlay/i,defaultRoot=inBrowser$1?window:void 0;function isElement$1(i){return i.tagName!=="HTML"&&i.tagName!=="BODY"&&i.nodeType===1}function getScrollParent(i,e=defaultRoot){let r=i;for(;r&&r!==e&&isElement$1(r);){const{overflowY:s}=window.getComputedStyle(r);if(overflowScrollReg.test(s))return r;r=r.parentNode}return e}function useScrollParent(i,e=defaultRoot){const r=ref();return onMounted(()=>{i.value&&(r.value=getScrollParent(i.value,e))}),r}var visibility;function usePageVisibility(){if(!visibility&&(visibility=ref("visible"),inBrowser$1)){const i=()=>{visibility.value=document.hidden?"hidden":"visible"};i(),window.addEventListener("visibilitychange",i)}return visibility}var CUSTOM_FIELD_INJECTION_KEY=Symbol("van-field");function useCustomFieldValue(i){const e=inject(CUSTOM_FIELD_INJECTION_KEY,null);e&&!e.customValue.value&&(e.customValue.value=i,watch(i,()=>{e.resetValidation(),e.validateWithTrigger("onChange")}))}function getScrollTop(i){const e="scrollTop"in i?i.scrollTop:i.pageYOffset;return Math.max(e,0)}function setScrollTop(i,e){"scrollTop"in i?i.scrollTop=e:i.scrollTo(i.scrollX,e)}function getRootScrollTop(){return window.pageYOffset||document.documentElement.scrollTop||document.body.scrollTop||0}function setRootScrollTop(i){setScrollTop(window,i),setScrollTop(document.body,i)}function getElementTop(i,e){if(i===window)return 0;const r=e?getScrollTop(e):getRootScrollTop();return useRect(i).top+r}const isIOS$1=isIOS$2();function resetScroll(){isIOS$1&&setRootScrollTop(getRootScrollTop())}const stopPropagation=i=>i.stopPropagation();function preventDefault(i,e){(typeof i.cancelable!="boolean"||i.cancelable)&&i.preventDefault(),e&&stopPropagation(i)}function isHidden(i){const e=unref(i);if(!e)return!1;const r=window.getComputedStyle(e),s=r.display==="none",o=e.offsetParent===null&&r.position!=="fixed";return s||o}const{width:windowWidth,height:windowHeight}=useWindowSize();function addUnit(i){if(isDef$1(i))return isNumeric(i)?`${i}px`:String(i)}function getSizeStyle(i){if(isDef$1(i)){if(Array.isArray(i))return{width:addUnit(i[0]),height:addUnit(i[1])};const e=addUnit(i);return{width:e,height:e}}}function getZIndexStyle(i){const e={};return i!==void 0&&(e.zIndex=+i),e}let rootFontSize;function getRootFontSize(){if(!rootFontSize){const i=document.documentElement,e=i.style.fontSize||window.getComputedStyle(i).fontSize;rootFontSize=parseFloat(e)}return rootFontSize}function convertRem(i){return i=i.replace(/rem/g,""),+i*getRootFontSize()}function convertVw(i){return i=i.replace(/vw/g,""),+i*windowWidth.value/100}function convertVh(i){return i=i.replace(/vh/g,""),+i*windowHeight.value/100}function unitToPx(i){if(typeof i=="number")return i;if(inBrowser$2){if(i.includes("rem"))return convertRem(i);if(i.includes("vw"))return convertVw(i);if(i.includes("vh"))return convertVh(i)}return parseFloat(i)}const camelizeRE=/-(\w)/g,camelize$1=i=>i.replace(camelizeRE,(e,r)=>r.toUpperCase()),kebabCase=i=>i.replace(/([A-Z])/g,"-$1").toLowerCase().replace(/^-/,""),clamp=(i,e,r)=>Math.min(Math.max(i,e),r);function trimExtraChar(i,e,r){const s=i.indexOf(e);return s===-1?i:e==="-"&&s!==0?i.slice(0,s):i.slice(0,s+1)+i.slice(s).replace(r,"")}function formatNumber(i,e=!0,r=!0){e?i=trimExtraChar(i,".",/\./g):i=i.split(".")[0],r?i=trimExtraChar(i,"-",/-/g):i=i.replace(/-/,"");const s=e?/[^-0-9.]/g:/[^-0-9]/g;return i.replace(s,"")}function addNumber(i,e){return Math.round((i+e)*1e10)/1e10}const{hasOwnProperty:hasOwnProperty$d}=Object.prototype;function assignKey(i,e,r){const s=e[r];isDef$1(s)&&(!hasOwnProperty$d.call(i,r)||!isObject$4(s)?i[r]=s:i[r]=deepAssign(Object(i[r]),s))}function deepAssign(i,e){return Object.keys(e).forEach(r=>{assignKey(i,e,r)}),i}var stdin_default$K={name:"姓名",tel:"电话",save:"保存",confirm:"确认",cancel:"取消",delete:"删除",loading:"加载中...",noCoupon:"暂无优惠券",nameEmpty:"请填写姓名",addContact:"添加联系人",telInvalid:"请填写正确的电话",vanCalendar:{end:"结束",start:"开始",title:"日期选择",weekdays:["日","一","二","三","四","五","六"],monthTitle:(i,e)=>`${i}年${e}月`,rangePrompt:i=>`最多选择 ${i} 天`},vanCascader:{select:"请选择"},vanPagination:{prev:"上一页",next:"下一页"},vanPullRefresh:{pulling:"下拉即可刷新...",loosing:"释放即可刷新..."},vanSubmitBar:{label:"合计:"},vanCoupon:{unlimited:"无门槛",discount:i=>`${i}折`,condition:i=>`满${i}元可用`},vanCouponCell:{title:"优惠券",count:i=>`${i}张可用`},vanCouponList:{exchange:"兑换",close:"不使用",enable:"可用",disabled:"不可用",placeholder:"输入优惠码"},vanAddressEdit:{area:"地区",areaEmpty:"请选择地区",addressEmpty:"请填写详细地址",addressDetail:"详细地址",defaultAddress:"设为默认收货地址"},vanAddressList:{add:"新增地址"}};const lang=ref("zh-CN"),messages=reactive({"zh-CN":stdin_default$K}),Locale={messages(){return messages[lang.value]},use(i,e){lang.value=i,this.add({[i]:e})},add(i={}){deepAssign(messages,i)}};var stdin_default$J=Locale;function createTranslate(i){const e=camelize$1(i)+".";return(r,...s)=>{const o=stdin_default$J.messages(),a=get(o,e+r)||get(o,r);return isFunction$5(a)?a(...s):a}}function genBem(i,e){return e?typeof e=="string"?` ${i}--${e}`:Array.isArray(e)?e.reduce((r,s)=>r+genBem(i,s),""):Object.keys(e).reduce((r,s)=>r+(e[s]?genBem(i,s):""),""):""}function createBEM(i){return(e,r)=>(e&&typeof e!="string"&&(r=e,e=""),e=e?`${i}__${e}`:i,`${e}${genBem(e,r)}`)}function createNamespace$1(i){const e=`van-${i}`;return[e,createBEM(e),createTranslate(e)]}const BORDER="van-hairline",BORDER_TOP=`${BORDER}--top`,BORDER_LEFT=`${BORDER}--left`,BORDER_BOTTOM=`${BORDER}--bottom`,BORDER_SURROUND=`${BORDER}--surround`,BORDER_TOP_BOTTOM=`${BORDER}--top-bottom`,BORDER_UNSET_TOP_BOTTOM=`${BORDER}-unset--top-bottom`,HAPTICS_FEEDBACK="van-haptics-feedback",FORM_KEY=Symbol("van-form"),LONG_PRESS_START_TIME=500;function callInterceptor(i,{args:e=[],done:r,canceled:s}){if(i){const o=i.apply(null,e);isPromise(o)?o.then(a=>{a?r():s&&s()}).catch(noop$1):o?r():s&&s()}else r()}function withInstall(i){return i.install=e=>{const{name:r}=i;r&&(e.component(r,i),e.component(camelize$1(`-${r}`),i))},i}const POPUP_TOGGLE_KEY=Symbol();function onPopupReopen(i){const e=inject(POPUP_TOGGLE_KEY,null);e&&watch(e,r=>{r&&i()})}const useHeight=(i,e)=>{const r=ref(),s=()=>{r.value=useRect(i).height};return onMounted(()=>{if(nextTick(s),e)for(let o=1;o<=3;o++)setTimeout(s,100*o)}),onPopupReopen(()=>nextTick(s)),watch([windowWidth,windowHeight],s),r};function usePlaceholder(i,e){const r=useHeight(i,!0);return s=>createVNode("div",{class:e("placeholder"),style:{height:r.value?`${r.value}px`:void 0}},[s()])}const[name$I,bem$F]=createNamespace$1("action-bar"),ACTION_BAR_KEY=Symbol(name$I),actionBarProps={placeholder:Boolean,safeAreaInsetBottom:truthProp};var stdin_default$I=defineComponent({name:name$I,props:actionBarProps,setup(i,{slots:e}){const r=ref(),s=usePlaceholder(r,bem$F),{linkChildren:o}=useChildren$1(ACTION_BAR_KEY);o();const a=()=>{var l;return createVNode("div",{ref:r,class:[bem$F(),{"van-safe-area-bottom":i.safeAreaInsetBottom}]},[(l=e.default)==null?void 0:l.call(e)])};return()=>i.placeholder?s(a):a()}});const ActionBar=withInstall(stdin_default$I);function useExpose(i){const e=getCurrentInstance();e&&extend$2(e.proxy,i)}const routeProps={to:[String,Object],url:String,replace:Boolean};function route({to:i,url:e,replace:r,$router:s}){i&&s?s[r?"replace":"push"](i):e&&(r?location.replace(e):location.href=e)}function useRoute(){const i=getCurrentInstance().proxy;return()=>route(i)}const[name$H,bem$E]=createNamespace$1("badge"),badgeProps={dot:Boolean,max:numericProp,tag:makeStringProp("div"),color:String,offset:Array,content:numericProp,showZero:truthProp,position:makeStringProp("top-right")};var stdin_default$H=defineComponent({name:name$H,props:badgeProps,setup(i,{slots:e}){const r=()=>{if(e.content)return!0;const{content:c,showZero:u}=i;return isDef$1(c)&&c!==""&&(u||c!==0&&c!=="0")},s=()=>{const{dot:c,max:u,content:m}=i;if(!c&&r())return e.content?e.content():isDef$1(u)&&isNumeric(m)&&+m>+u?`${u}+`:m},o=c=>c.startsWith("-")?c.replace("-",""):`-${c}`,a=computed(()=>{const c={background:i.color};if(i.offset){const[u,m]=i.offset,{position:g}=i,[d,y]=g.split("-");e.default?(typeof m=="number"?c[d]=addUnit(d==="top"?m:-m):c[d]=d==="top"?addUnit(m):o(m),typeof u=="number"?c[y]=addUnit(y==="left"?u:-u):c[y]=y==="left"?addUnit(u):o(u)):(c.marginTop=addUnit(m),c.marginLeft=addUnit(u))}return c}),l=()=>{if(r()||i.dot)return createVNode("div",{class:bem$E([i.position,{dot:i.dot,fixed:!!e.default}]),style:a.value},[s()])};return()=>{if(e.default){const{tag:c}=i;return createVNode(c,{class:bem$E("wrapper")},{default:()=>[e.default(),l()]})}return l()}}});const Badge=withInstall(stdin_default$H);let globalZIndex=2e3;const useGlobalZIndex=()=>++globalZIndex,setGlobalZIndex=i=>{globalZIndex=i},[name$G,bem$D]=createNamespace$1("config-provider"),CONFIG_PROVIDER_KEY=Symbol(name$G),configProviderProps={tag:makeStringProp("div"),theme:makeStringProp("light"),zIndex:Number,themeVars:Object,themeVarsDark:Object,themeVarsLight:Object,iconPrefix:String};function mapThemeVarsToCSSVars(i){const e={};return Object.keys(i).forEach(r=>{e[`--van-${kebabCase(r)}`]=i[r]}),e}defineComponent({name:name$G,props:configProviderProps,setup(i,{slots:e}){const r=computed(()=>mapThemeVarsToCSSVars(extend$2({},i.themeVars,i.theme==="dark"?i.themeVarsDark:i.themeVarsLight)));if(inBrowser$2){const s=()=>{document.documentElement.classList.add(`van-theme-${i.theme}`)},o=(a=i.theme)=>{document.documentElement.classList.remove(`van-theme-${a}`)};watch(()=>i.theme,(a,l)=>{l&&o(l),s()},{immediate:!0}),onActivated(s),onDeactivated(o),onBeforeUnmount(o)}return provide(CONFIG_PROVIDER_KEY,i),watchEffect(()=>{i.zIndex!==void 0&&setGlobalZIndex(i.zIndex)}),()=>createVNode(i.tag,{class:bem$D(),style:r.value},{default:()=>{var s;return[(s=e.default)==null?void 0:s.call(e)]}})}});const[name$F,bem$C]=createNamespace$1("icon"),isImage=i=>i==null?void 0:i.includes("/"),iconProps={dot:Boolean,tag:makeStringProp("i"),name:String,size:numericProp,badge:numericProp,color:String,badgeProps:Object,classPrefix:String};var stdin_default$G=defineComponent({name:name$F,props:iconProps,setup(i,{slots:e}){const r=inject(CONFIG_PROVIDER_KEY,null),s=computed(()=>i.classPrefix||(r==null?void 0:r.iconPrefix)||bem$C());return()=>{const{tag:o,dot:a,name:l,size:c,badge:u,color:m}=i,g=isImage(l);return createVNode(Badge,mergeProps({dot:a,tag:o,class:[s.value,g?"":`${s.value}-${l}`],style:{color:m,fontSize:addUnit(c)},content:u},i.badgeProps),{default:()=>{var d;return[(d=e.default)==null?void 0:d.call(e),g&&createVNode("img",{class:bem$C("image"),src:l},null)]}})}}});const Icon$1=withInstall(stdin_default$G),[name$E,bem$B]=createNamespace$1("loading"),SpinIcon=Array(12).fill(null).map((i,e)=>createVNode("i",{class:bem$B("line",String(e+1))},null)),CircularIcon=createVNode("svg",{class:bem$B("circular"),viewBox:"25 25 50 50"},[createVNode("circle",{cx:"50",cy:"50",r:"20",fill:"none"},null)]),loadingProps={size:numericProp,type:makeStringProp("circular"),color:String,vertical:Boolean,textSize:numericProp,textColor:String};var stdin_default$F=defineComponent({name:name$E,props:loadingProps,setup(i,{slots:e}){const r=computed(()=>extend$2({color:i.color},getSizeStyle(i.size))),s=()=>{const a=i.type==="spinner"?SpinIcon:CircularIcon;return createVNode("span",{class:bem$B("spinner",i.type),style:r.value},[e.icon?e.icon():a])},o=()=>{var a;if(e.default)return createVNode("span",{class:bem$B("text"),style:{fontSize:addUnit(i.textSize),color:(a=i.textColor)!=null?a:i.color}},[e.default()])};return()=>{const{type:a,vertical:l}=i;return createVNode("div",{class:bem$B([a,{vertical:l}]),"aria-live":"polite","aria-busy":!0},[s(),o()])}}});const Loading$2=withInstall(stdin_default$F),[name$D,bem$A]=createNamespace$1("button"),buttonProps=extend$2({},routeProps,{tag:makeStringProp("button"),text:String,icon:String,type:makeStringProp("default"),size:makeStringProp("normal"),color:String,block:Boolean,plain:Boolean,round:Boolean,square:Boolean,loading:Boolean,hairline:Boolean,disabled:Boolean,iconPrefix:String,nativeType:makeStringProp("button"),loadingSize:numericProp,loadingText:String,loadingType:String,iconPosition:makeStringProp("left")});var stdin_default$E=defineComponent({name:name$D,props:buttonProps,emits:["click"],setup(i,{emit:e,slots:r}){const s=useRoute(),o=()=>r.loading?r.loading():createVNode(Loading$2,{size:i.loadingSize,type:i.loadingType,class:bem$A("loading")},null),a=()=>{if(i.loading)return o();if(r.icon)return createVNode("div",{class:bem$A("icon")},[r.icon()]);if(i.icon)return createVNode(Icon$1,{name:i.icon,class:bem$A("icon"),classPrefix:i.iconPrefix},null)},l=()=>{let m;if(i.loading?m=i.loadingText:m=r.default?r.default():i.text,m)return createVNode("span",{class:bem$A("text")},[m])},c=()=>{const{color:m,plain:g}=i;if(m){const d={color:g?m:"white"};return g||(d.background=m),m.includes("gradient")?d.border=0:d.borderColor=m,d}},u=m=>{i.loading?preventDefault(m):i.disabled||(e("click",m),s())};return()=>{const{tag:m,type:g,size:d,block:y,round:A,plain:b,square:S,loading:E,disabled:x,hairline:C,nativeType:P,iconPosition:k}=i,I=[bem$A([g,d,{plain:b,block:y,round:A,square:S,loading:E,disabled:x,hairline:C}]),{[BORDER_SURROUND]:C}];return createVNode(m,{type:P,class:I,style:c(),disabled:x,onClick:u},{default:()=>[createVNode("div",{class:bem$A("content")},[k==="left"&&a(),l(),k==="right"&&a()])]})}}});const Button$1=withInstall(stdin_default$E),[name$C,bem$z]=createNamespace$1("action-bar-button"),actionBarButtonProps=extend$2({},routeProps,{type:String,text:String,icon:String,color:String,loading:Boolean,disabled:Boolean});var stdin_default$D=defineComponent({name:name$C,props:actionBarButtonProps,setup(i,{slots:e}){const r=useRoute(),{parent:s,index:o}=useParent$1(ACTION_BAR_KEY),a=computed(()=>{if(s){const c=s.children[o.value-1];return!(c&&"isButton"in c)}}),l=computed(()=>{if(s){const c=s.children[o.value+1];return!(c&&"isButton"in c)}});return useExpose({isButton:!0}),()=>{const{type:c,icon:u,text:m,color:g,loading:d,disabled:y}=i;return createVNode(Button$1,{class:bem$z([c,{last:l.value,first:a.value}]),size:"large",type:c,icon:u,color:g,loading:d,disabled:y,onClick:r},{default:()=>[e.default?e.default():m]})}}});const ActionBarButton=withInstall(stdin_default$D),popupSharedProps={show:Boolean,zIndex:numericProp,overlay:truthProp,duration:numericProp,teleport:[String,Object],lockScroll:truthProp,lazyRender:truthProp,beforeClose:Function,overlayStyle:Object,overlayClass:unknownProp,transitionAppear:Boolean,closeOnClickOverlay:truthProp},popupSharedPropKeys=Object.keys(popupSharedProps);function getDirection(i,e){return i>e?"horizontal":e>i?"vertical":""}function useTouch(){const i=ref(0),e=ref(0),r=ref(0),s=ref(0),o=ref(0),a=ref(0),l=ref(""),c=()=>l.value==="vertical",u=()=>l.value==="horizontal",m=()=>{r.value=0,s.value=0,o.value=0,a.value=0,l.value=""};return{move:y=>{const A=y.touches[0];r.value=(A.clientX<0?0:A.clientX)-i.value,s.value=A.clientY-e.value,o.value=Math.abs(r.value),a.value=Math.abs(s.value);const b=10;(!l.value||o.value{m(),i.value=y.touches[0].clientX,e.value=y.touches[0].clientY},reset:m,startX:i,startY:e,deltaX:r,deltaY:s,offsetX:o,offsetY:a,direction:l,isVertical:c,isHorizontal:u}}let totalLockCount=0;const BODY_LOCK_CLASS="van-overflow-hidden";function useLockScroll(i,e){const r=useTouch(),s="01",o="10",a=g=>{r.move(g);const d=r.deltaY.value>0?o:s,y=getScrollParent(g.target,i.value),{scrollHeight:A,offsetHeight:b,scrollTop:S}=y;let E="11";S===0?E=b>=A?"00":"01":S+b>=A&&(E="10"),E!=="11"&&r.isVertical()&&!(parseInt(E,2)&parseInt(d,2))&&preventDefault(g,!0)},l=()=>{document.addEventListener("touchstart",r.start),document.addEventListener("touchmove",a,{passive:!1}),totalLockCount||document.body.classList.add(BODY_LOCK_CLASS),totalLockCount++},c=()=>{totalLockCount&&(document.removeEventListener("touchstart",r.start),document.removeEventListener("touchmove",a),totalLockCount--,totalLockCount||document.body.classList.remove(BODY_LOCK_CLASS))},u=()=>e()&&l(),m=()=>e()&&c();onMountedOrActivated(u),onDeactivated(m),onBeforeUnmount(m),watch(e,g=>{g?l():c()})}function useLazyRender(i){const e=ref(!1);return watch(i,r=>{r&&(e.value=r)},{immediate:!0}),r=>()=>e.value?r():null}const[name$B,bem$y]=createNamespace$1("overlay"),overlayProps={show:Boolean,zIndex:numericProp,duration:numericProp,className:unknownProp,lockScroll:truthProp,lazyRender:truthProp,customStyle:Object};var stdin_default$C=defineComponent({name:name$B,props:overlayProps,setup(i,{slots:e}){const r=ref(),s=useLazyRender(()=>i.show||!i.lazyRender),o=l=>{i.lockScroll&&preventDefault(l,!0)},a=s(()=>{var l;const c=extend$2(getZIndexStyle(i.zIndex),i.customStyle);return isDef$1(i.duration)&&(c.animationDuration=`${i.duration}s`),withDirectives(createVNode("div",{ref:r,style:c,class:[bem$y(),i.className]},[(l=e.default)==null?void 0:l.call(e)]),[[vShow,i.show]])});return useEventListener$1("touchmove",o,{target:r}),()=>createVNode(Transition,{name:"van-fade",appear:!0},{default:a})}});const Overlay=withInstall(stdin_default$C),popupProps$1=extend$2({},popupSharedProps,{round:Boolean,position:makeStringProp("center"),closeIcon:makeStringProp("cross"),closeable:Boolean,transition:String,iconPrefix:String,closeOnPopstate:Boolean,closeIconPosition:makeStringProp("top-right"),safeAreaInsetTop:Boolean,safeAreaInsetBottom:Boolean}),[name$A,bem$x]=createNamespace$1("popup");var stdin_default$B=defineComponent({name:name$A,inheritAttrs:!1,props:popupProps$1,emits:["open","close","opened","closed","keydown","update:show","clickOverlay","clickCloseIcon"],setup(i,{emit:e,attrs:r,slots:s}){let o,a;const l=ref(),c=ref(),u=useLazyRender(()=>i.show||!i.lazyRender),m=computed(()=>{const I={zIndex:l.value};if(isDef$1(i.duration)){const M=i.position==="center"?"animationDuration":"transitionDuration";I[M]=`${i.duration}s`}return I}),g=()=>{o||(o=!0,l.value=i.zIndex!==void 0?+i.zIndex:useGlobalZIndex(),e("open"))},d=()=>{o&&callInterceptor(i.beforeClose,{done(){o=!1,e("close"),e("update:show",!1)}})},y=I=>{e("clickOverlay",I),i.closeOnClickOverlay&&d()},A=()=>{if(i.overlay)return createVNode(Overlay,{show:i.show,class:i.overlayClass,zIndex:l.value,duration:i.duration,customStyle:i.overlayStyle,role:i.closeOnClickOverlay?"button":void 0,tabindex:i.closeOnClickOverlay?0:void 0,onClick:y},{default:s["overlay-content"]})},b=I=>{e("clickCloseIcon",I),d()},S=()=>{if(i.closeable)return createVNode(Icon$1,{role:"button",tabindex:0,name:i.closeIcon,class:[bem$x("close-icon",i.closeIconPosition),HAPTICS_FEEDBACK],classPrefix:i.iconPrefix,onClick:b},null)},E=()=>e("opened"),x=()=>e("closed"),C=I=>e("keydown",I),P=u(()=>{var I;const{round:M,position:T,safeAreaInsetTop:F,safeAreaInsetBottom:D}=i;return withDirectives(createVNode("div",mergeProps({ref:c,style:m.value,role:"dialog",tabindex:0,class:[bem$x({round:M,[T]:T}),{"van-safe-area-top":F,"van-safe-area-bottom":D}],onKeydown:C},r),[(I=s.default)==null?void 0:I.call(s),S()]),[[vShow,i.show]])}),k=()=>{const{position:I,transition:M,transitionAppear:T}=i,F=I==="center"?"van-fade":`van-popup-slide-${I}`;return createVNode(Transition,{name:M||F,appear:T,onAfterEnter:E,onAfterLeave:x},{default:P})};return watch(()=>i.show,I=>{I&&!o&&(g(),r.tabindex===0&&nextTick(()=>{var M;(M=c.value)==null||M.focus()})),!I&&o&&(o=!1,e("close"))}),useExpose({popupRef:c}),useLockScroll(c,()=>i.show&&i.lockScroll),useEventListener$1("popstate",()=>{i.closeOnPopstate&&(d(),a=!1)}),onMounted(()=>{i.show&&g()}),onActivated(()=>{a&&(e("update:show",!0),a=!1)}),onDeactivated(()=>{i.show&&i.teleport&&(d(),a=!0)}),provide(POPUP_TOGGLE_KEY,()=>i.show),()=>i.teleport?createVNode(Teleport,{to:i.teleport},{default:()=>[A(),k()]}):createVNode(Fragment,null,[A(),k()])}});const Popup=withInstall(stdin_default$B),[name$z,bem$w,t$3]=createNamespace$1("picker"),getFirstEnabledOption=i=>i.find(e=>!e.disabled)||i[0];function getColumnsType(i,e){const r=i[0];if(r){if(Array.isArray(r))return"multiple";if(e.children in r)return"cascade"}return"default"}function findIndexOfEnabledOption(i,e){e=clamp(e,0,i.length);for(let r=e;r=0;r--)if(!i[r].disabled)return r;return 0}const isOptionExist=(i,e,r)=>e!==void 0&&!!i.find(s=>s[r.value]===e);function findOptionByValue(i,e,r){const s=i.findIndex(a=>a[r.value]===e),o=findIndexOfEnabledOption(i,s);return i[o]}function formatCascadeColumns(i,e,r){const s=[];let o={[e.children]:i},a=0;for(;o&&o[e.children];){const l=o[e.children],c=r.value[a];if(o=isDef$1(c)?findOptionByValue(l,c,e):void 0,!o&&l.length){const u=getFirstEnabledOption(l)[e.value];o=findOptionByValue(l,u,e)}a++,s.push(l)}return s}function getElementTranslateY(i){const{transform:e}=window.getComputedStyle(i),r=e.slice(7,e.length-1).split(", ")[5];return Number(r)}function assignDefaultFields(i){return extend$2({text:"text",value:"value",children:"children"},i)}const DEFAULT_DURATION=200,MOMENTUM_TIME=300,MOMENTUM_DISTANCE=15,[name$y,bem$v]=createNamespace$1("picker-column"),PICKER_KEY=Symbol(name$y);var stdin_default$A=defineComponent({name:name$y,props:{value:numericProp,fields:makeRequiredProp(Object),options:makeArrayProp(),readonly:Boolean,allowHtml:Boolean,optionHeight:makeRequiredProp(Number),swipeDuration:makeRequiredProp(numericProp),visibleOptionNum:makeRequiredProp(numericProp)},emits:["change","clickOption"],setup(i,{emit:e,slots:r}){let s,o,a,l,c;const u=ref(),m=ref(),g=ref(0),d=ref(0),y=useTouch(),A=()=>i.options.length,b=()=>i.optionHeight*(+i.visibleOptionNum-1)/2,S=D=>{const N=findIndexOfEnabledOption(i.options,D),O=-N*i.optionHeight,B=()=>{const V=i.options[N][i.fields.value];V!==i.value&&e("change",V)};s&&O!==g.value?c=B:B(),g.value=O},E=()=>i.readonly||!i.options.length,x=D=>{s||E()||(c=null,d.value=DEFAULT_DURATION,S(D),e("clickOption",i.options[D]))},C=D=>clamp(Math.round(-D/i.optionHeight),0,A()-1),P=(D,N)=>{const O=Math.abs(D/N);D=g.value+O/.003*(D<0?-1:1);const B=C(D);d.value=+i.swipeDuration,S(B)},k=()=>{s=!1,d.value=0,c&&(c(),c=null)},I=D=>{if(!E()){if(y.start(D),s){const N=getElementTranslateY(m.value);g.value=Math.min(0,N-b())}d.value=0,o=g.value,a=Date.now(),l=o,c=null}},M=D=>{if(E())return;y.move(D),y.isVertical()&&(s=!0,preventDefault(D,!0)),g.value=clamp(o+y.deltaY.value,-(A()*i.optionHeight),i.optionHeight);const N=Date.now();N-a>MOMENTUM_TIME&&(a=N,l=g.value)},T=()=>{if(E())return;const D=g.value-l,N=Date.now()-a;if(NMOMENTUM_DISTANCE){P(D,N);return}const B=C(g.value);d.value=DEFAULT_DURATION,S(B),setTimeout(()=>{s=!1},0)},F=()=>{const D={height:`${i.optionHeight}px`};return i.options.map((N,O)=>{const B=N[i.fields.text],{disabled:V}=N,R=N[i.fields.value],Q={role:"button",style:D,tabindex:V?-1:0,class:[bem$v("item",{disabled:V,selected:R===i.value}),N.className],onClick:()=>x(O)},_={class:"van-ellipsis",[i.allowHtml?"innerHTML":"textContent"]:B};return createVNode("li",Q,[r.option?r.option(N,O):createVNode("div",_,null)])})};return useParent$1(PICKER_KEY),useExpose({stopMomentum:k}),watchEffect(()=>{const D=i.options.findIndex(B=>B[i.fields.value]===i.value),O=-findIndexOfEnabledOption(i.options,D)*i.optionHeight;g.value=O}),useEventListener$1("touchmove",M,{target:u}),()=>createVNode("div",{ref:u,class:bem$v(),onTouchstartPassive:I,onTouchend:T,onTouchcancel:T},[createVNode("ul",{ref:m,style:{transform:`translate3d(0, ${g.value+b()}px, 0)`,transitionDuration:`${d.value}ms`,transitionProperty:d.value?"all":"none"},class:bem$v("wrapper"),onTransitionend:k},[F()])])}});const[name$x]=createNamespace$1("picker-toolbar"),pickerToolbarProps={title:String,cancelButtonText:String,confirmButtonText:String},pickerToolbarSlots=["cancel","confirm","title","toolbar"],pickerToolbarPropKeys=Object.keys(pickerToolbarProps);var stdin_default$z=defineComponent({name:name$x,props:pickerToolbarProps,emits:["confirm","cancel"],setup(i,{emit:e,slots:r}){const s=()=>{if(r.title)return r.title();if(i.title)return createVNode("div",{class:[bem$w("title"),"van-ellipsis"]},[i.title])},o=()=>e("cancel"),a=()=>e("confirm"),l=()=>{const u=i.cancelButtonText||t$3("cancel");return createVNode("button",{type:"button",class:[bem$w("cancel"),HAPTICS_FEEDBACK],onClick:o},[r.cancel?r.cancel():u])},c=()=>{const u=i.confirmButtonText||t$3("confirm");return createVNode("button",{type:"button",class:[bem$w("confirm"),HAPTICS_FEEDBACK],onClick:a},[r.confirm?r.confirm():u])};return()=>createVNode("div",{class:bem$w("toolbar")},[r.toolbar?r.toolbar():[l(),s(),c()]])}});function scrollLeftTo(i,e,r){let s=0;const o=i.scrollLeft,a=r===0?1:Math.round(r*1e3/16);function l(){i.scrollLeft+=(e-o)/a,++se||!a&&oe?raf(u):s&&raf(s)}u()}let current=0;function useId(){const i=getCurrentInstance(),{name:e="unknown"}=(i==null?void 0:i.type)||{};return`${e}-${++current}`}function useRefs(){const i=ref([]),e=[];return onBeforeUpdate(()=>{i.value=[]}),[i,s=>(e[s]||(e[s]=o=>{i.value[s]=o}),e[s])]}function useVisibilityChange(i,e){if(!inBrowser$2||!window.IntersectionObserver)return;const r=new IntersectionObserver(a=>{e(a[0].intersectionRatio>0)},{root:document.body}),s=()=>{i.value&&r.observe(i.value)},o=()=>{i.value&&r.unobserve(i.value)};onDeactivated(o),onBeforeUnmount(o),onMountedOrActivated(s)}const[name$w,bem$u]=createNamespace$1("sticky"),stickyProps={zIndex:numericProp,position:makeStringProp("top"),container:Object,offsetTop:makeNumericProp(0),offsetBottom:makeNumericProp(0)};var stdin_default$y=defineComponent({name:name$w,props:stickyProps,emits:["scroll","change"],setup(i,{emit:e,slots:r}){const s=ref(),o=useScrollParent(s),a=reactive({fixed:!1,width:0,height:0,transform:0}),l=computed(()=>unitToPx(i.position==="top"?i.offsetTop:i.offsetBottom)),c=computed(()=>{const{fixed:d,height:y,width:A}=a;if(d)return{width:`${A}px`,height:`${y}px`}}),u=computed(()=>{if(!a.fixed)return;const d=extend$2(getZIndexStyle(i.zIndex),{width:`${a.width}px`,height:`${a.height}px`,[i.position]:`${l.value}px`});return a.transform&&(d.transform=`translate3d(0, ${a.transform}px, 0)`),d}),m=d=>e("scroll",{scrollTop:d,isFixed:a.fixed}),g=()=>{if(!s.value||isHidden(s))return;const{container:d,position:y}=i,A=useRect(s),b=getScrollTop(window);if(a.width=A.width,a.height=A.height,y==="top")if(d){const S=useRect(d),E=S.bottom-l.value-a.height;a.fixed=l.value>A.top&&S.bottom>0,a.transform=E<0?E:0}else a.fixed=l.value>A.top;else{const{clientHeight:S}=document.documentElement;if(d){const E=useRect(d),x=S-E.top-l.value-a.height;a.fixed=S-l.valueE.top,a.transform=x<0?-x:0}else a.fixed=S-l.valuea.fixed,d=>e("change",d)),useEventListener$1("scroll",g,{target:o,passive:!0}),useVisibilityChange(s,g),()=>{var d;return createVNode("div",{ref:s,style:c.value},[createVNode("div",{class:bem$u({fixed:a.fixed}),style:u.value},[(d=r.default)==null?void 0:d.call(r)])])}}});const Sticky=withInstall(stdin_default$y),[name$v,bem$t]=createNamespace$1("tab");var stdin_default$x=defineComponent({name:name$v,props:{id:String,dot:Boolean,type:String,color:String,title:String,badge:numericProp,shrink:Boolean,isActive:Boolean,disabled:Boolean,controls:String,scrollable:Boolean,activeColor:String,inactiveColor:String,showZeroBadge:truthProp},setup(i,{slots:e}){const r=computed(()=>{const o={},{type:a,color:l,disabled:c,isActive:u,activeColor:m,inactiveColor:g}=i;l&&a==="card"&&(o.borderColor=l,c||(u?o.backgroundColor=l:o.color=l));const y=u?m:g;return y&&(o.color=y),o}),s=()=>{const o=createVNode("span",{class:bem$t("text",{ellipsis:!i.scrollable})},[e.title?e.title():i.title]);return i.dot||isDef$1(i.badge)&&i.badge!==""?createVNode(Badge,{dot:i.dot,content:i.badge,showZero:i.showZeroBadge},{default:()=>[o]}):o};return()=>createVNode("div",{id:i.id,role:"tab",class:[bem$t([i.type,{grow:i.scrollable&&!i.shrink,shrink:i.shrink,active:i.isActive,disabled:i.disabled}])],style:r.value,tabindex:i.disabled?void 0:i.isActive?0:-1,"aria-selected":i.isActive,"aria-disabled":i.disabled||void 0,"aria-controls":i.controls},[s()])}});const[name$u,bem$s]=createNamespace$1("swipe"),swipeProps={loop:truthProp,width:numericProp,height:numericProp,vertical:Boolean,autoplay:makeNumericProp(0),duration:makeNumericProp(500),touchable:truthProp,lazyRender:Boolean,initialSwipe:makeNumericProp(0),indicatorColor:String,showIndicators:truthProp,stopPropagation:truthProp},SWIPE_KEY=Symbol(name$u);var stdin_default$w=defineComponent({name:name$u,props:swipeProps,emits:["change","dragStart","dragEnd"],setup(i,{emit:e,slots:r}){const s=ref(),o=ref(),a=reactive({rect:null,width:0,height:0,offset:0,active:0,swiping:!1});let l=!1;const c=useTouch(),{children:u,linkChildren:m}=useChildren$1(SWIPE_KEY),g=computed(()=>u.length),d=computed(()=>a[i.vertical?"height":"width"]),y=computed(()=>i.vertical?c.deltaY.value:c.deltaX.value),A=computed(()=>a.rect?(i.vertical?a.rect.height:a.rect.width)-d.value*g.value:0),b=computed(()=>d.value?Math.ceil(Math.abs(A.value)/d.value):g.value),S=computed(()=>g.value*d.value),E=computed(()=>(a.active+g.value)%g.value),x=computed(()=>{const q=i.vertical?"vertical":"horizontal";return c.direction.value===q}),C=computed(()=>{const q={transitionDuration:`${a.swiping?0:i.duration}ms`,transform:`translate${i.vertical?"Y":"X"}(${a.offset}px)`};if(d.value){const W=i.vertical?"height":"width",xe=i.vertical?"width":"height";q[W]=`${S.value}px`,q[xe]=i[xe]?`${i[xe]}px`:""}return q}),P=q=>{const{active:W}=a;return q?i.loop?clamp(W+q,-1,g.value):clamp(W+q,0,b.value):W},k=(q,W=0)=>{let xe=q*d.value;i.loop||(xe=Math.min(xe,-A.value));let ue=W-xe;return i.loop||(ue=clamp(ue,A.value,0)),ue},I=({pace:q=0,offset:W=0,emitChange:xe})=>{if(g.value<=1)return;const{active:ue}=a,Y=P(q),J=k(Y,W);if(i.loop){if(u[0]&&J!==A.value){const ce=J0;u[g.value-1].setOffset(ce?-S.value:0)}}a.active=Y,a.offset=J,xe&&Y!==ue&&e("change",E.value)},M=()=>{a.swiping=!0,a.active<=-1?I({pace:g.value}):a.active>=g.value&&I({pace:-g.value})},T=()=>{M(),c.reset(),doubleRaf(()=>{a.swiping=!1,I({pace:-1,emitChange:!0})})},F=()=>{M(),c.reset(),doubleRaf(()=>{a.swiping=!1,I({pace:1,emitChange:!0})})};let D;const N=()=>clearTimeout(D),O=()=>{N(),+i.autoplay>0&&g.value>1&&(D=setTimeout(()=>{F(),O()},+i.autoplay))},B=(q=+i.initialSwipe)=>{if(!s.value)return;const W=()=>{var xe,ue;if(!isHidden(s)){const Y={width:s.value.offsetWidth,height:s.value.offsetHeight};a.rect=Y,a.width=+((xe=i.width)!=null?xe:Y.width),a.height=+((ue=i.height)!=null?ue:Y.height)}g.value&&(q=Math.min(g.value-1,q),q===-1&&(q=g.value-1)),a.active=q,a.swiping=!0,a.offset=k(q),u.forEach(Y=>{Y.setOffset(0)}),O()};isHidden(s)?nextTick().then(W):W()},V=()=>B(a.active);let R;const Q=q=>{!i.touchable||q.touches.length>1||(c.start(q),l=!1,R=Date.now(),N(),M())},_=q=>{i.touchable&&a.swiping&&(c.move(q),x.value&&(!i.loop&&(a.active===0&&y.value>0||a.active===g.value-1&&y.value<0)||(preventDefault(q,i.stopPropagation),I({offset:y.value}),l||(e("dragStart",{index:E.value}),l=!0))))},K=()=>{if(!i.touchable||!a.swiping)return;const q=Date.now()-R,W=y.value/q;if((Math.abs(W)>.25||Math.abs(y.value)>d.value/2)&&x.value){const ue=i.vertical?c.offsetY.value:c.offsetX.value;let Y=0;i.loop?Y=ue>0?y.value>0?-1:1:0:Y=-Math[y.value>0?"ceil":"floor"](y.value/d.value),I({pace:Y,emitChange:!0})}else y.value&&I({pace:0});l=!1,a.swiping=!1,e("dragEnd",{index:E.value}),O()},G=(q,W={})=>{M(),c.reset(),doubleRaf(()=>{let xe;i.loop&&q===g.value?xe=a.active===0?0:q:xe=q%g.value,W.immediate?doubleRaf(()=>{a.swiping=!1}):a.swiping=!1,I({pace:xe-a.active,emitChange:!0})})},U=(q,W)=>{const xe=W===E.value,ue=xe?{backgroundColor:i.indicatorColor}:void 0;return createVNode("i",{style:ue,class:bem$s("indicator",{active:xe})},null)},$=()=>{if(r.indicator)return r.indicator({active:E.value,total:g.value});if(i.showIndicators&&g.value>1)return createVNode("div",{class:bem$s("indicators",{vertical:i.vertical})},[Array(g.value).fill("").map(U)])};return useExpose({prev:T,next:F,state:a,resize:V,swipeTo:G}),m({size:d,props:i,count:g,activeIndicator:E}),watch(()=>i.initialSwipe,q=>B(+q)),watch(g,()=>B(a.active)),watch(()=>i.autoplay,O),watch([windowWidth,windowHeight],V),watch(usePageVisibility(),q=>{q==="visible"?O():N()}),onMounted(B),onActivated(()=>B(a.active)),onPopupReopen(()=>B(a.active)),onDeactivated(N),onBeforeUnmount(N),useEventListener$1("touchmove",_,{target:o}),()=>{var q;return createVNode("div",{ref:s,class:bem$s()},[createVNode("div",{ref:o,style:C.value,class:bem$s("track",{vertical:i.vertical}),onTouchstartPassive:Q,onTouchend:K,onTouchcancel:K},[(q=r.default)==null?void 0:q.call(r)]),$()])}}});const Swipe=withInstall(stdin_default$w),[name$t,bem$r]=createNamespace$1("tabs");var stdin_default$v=defineComponent({name:name$t,props:{count:makeRequiredProp(Number),inited:Boolean,animated:Boolean,duration:makeRequiredProp(numericProp),swipeable:Boolean,lazyRender:Boolean,currentIndex:makeRequiredProp(Number)},emits:["change"],setup(i,{emit:e,slots:r}){const s=ref(),o=c=>e("change",c),a=()=>{var c;const u=(c=r.default)==null?void 0:c.call(r);return i.animated||i.swipeable?createVNode(Swipe,{ref:s,loop:!1,class:bem$r("track"),duration:+i.duration*1e3,touchable:i.swipeable,lazyRender:i.lazyRender,showIndicators:!1,onChange:o},{default:()=>[u]}):u},l=c=>{const u=s.value;u&&u.state.active!==c&&u.swipeTo(c,{immediate:!i.inited})};return watch(()=>i.currentIndex,l),onMounted(()=>{l(i.currentIndex)}),useExpose({swipeRef:s}),()=>createVNode("div",{class:bem$r("content",{animated:i.animated||i.swipeable})},[a()])}});const[name$s,bem$q]=createNamespace$1("tabs"),tabsProps={type:makeStringProp("line"),color:String,border:Boolean,sticky:Boolean,shrink:Boolean,active:makeNumericProp(0),duration:makeNumericProp(.3),animated:Boolean,ellipsis:truthProp,swipeable:Boolean,scrollspy:Boolean,offsetTop:makeNumericProp(0),background:String,lazyRender:truthProp,lineWidth:numericProp,lineHeight:numericProp,beforeChange:Function,swipeThreshold:makeNumericProp(5),titleActiveColor:String,titleInactiveColor:String},TABS_KEY=Symbol(name$s);var stdin_default$u=defineComponent({name:name$s,props:tabsProps,emits:["change","scroll","rendered","clickTab","update:active"],setup(i,{emit:e,slots:r}){let s,o,a;const l=ref(),c=ref(),u=ref(),m=ref(),g=useId(),d=useScrollParent(l),[y,A]=useRefs(),{children:b,linkChildren:S}=useChildren$1(TABS_KEY),E=reactive({inited:!1,position:"",lineStyle:{},currentIndex:-1}),x=computed(()=>b.length>+i.swipeThreshold||!i.ellipsis||i.shrink),C=computed(()=>({borderColor:i.color,background:i.background})),P=(ue,Y)=>{var J;return(J=ue.name)!=null?J:Y},k=computed(()=>{const ue=b[E.currentIndex];if(ue)return P(ue,E.currentIndex)}),I=computed(()=>unitToPx(i.offsetTop)),M=computed(()=>i.sticky?I.value+s:0),T=ue=>{const Y=c.value,J=y.value;if(!x.value||!Y||!J||!J[E.currentIndex])return;const ce=J[E.currentIndex].$el,ge=ce.offsetLeft-(Y.offsetWidth-ce.offsetWidth)/2;scrollLeftTo(Y,ge,ue?0:+i.duration)},F=()=>{const ue=E.inited;nextTick(()=>{const Y=y.value;if(!Y||!Y[E.currentIndex]||i.type!=="line"||isHidden(l.value))return;const J=Y[E.currentIndex].$el,{lineWidth:ce,lineHeight:ge}=i,Ee=J.offsetLeft+J.offsetWidth/2,Ie={width:addUnit(ce),backgroundColor:i.color,transform:`translateX(${Ee}px) translateX(-50%)`};if(ue&&(Ie.transitionDuration=`${i.duration}s`),isDef$1(ge)){const De=addUnit(ge);Ie.height=De,Ie.borderRadius=De}E.lineStyle=Ie})},D=ue=>{const Y=ue=0&&ue{const J=D(ue);if(!isDef$1(J))return;const ce=b[J],ge=P(ce,J),Ee=E.currentIndex!==null;E.currentIndex!==J&&(E.currentIndex=J,Y||T(),F()),ge!==i.active&&(e("update:active",ge),Ee&&e("change",ge,ce.title)),a&&!i.scrollspy&&setRootScrollTop(Math.ceil(getElementTop(l.value)-I.value))},O=(ue,Y)=>{const J=b.find((ge,Ee)=>P(ge,Ee)===ue),ce=J?b.indexOf(J):0;N(ce,Y)},B=(ue=!1)=>{if(i.scrollspy){const Y=b[E.currentIndex].$el;if(Y&&d.value){const J=getElementTop(Y,d.value)-M.value;o=!0,scrollTopTo(d.value,J,ue?0:+i.duration,()=>{o=!1})}}},V=(ue,Y,J)=>{const{title:ce,disabled:ge}=b[Y],Ee=P(b[Y],Y);ge||(callInterceptor(i.beforeChange,{args:[Ee],done:()=>{N(Y),B()}}),route(ue)),e("clickTab",{name:Ee,title:ce,event:J,disabled:ge})},R=ue=>{a=ue.isFixed,e("scroll",ue)},Q=ue=>{nextTick(()=>{O(ue),B(!0)})},_=()=>{for(let ue=0;ueM.value)return ue===0?0:ue-1}return b.length-1},K=()=>{if(i.scrollspy&&!o){const ue=_();N(ue)}},G=()=>b.map((ue,Y)=>createVNode(stdin_default$x,mergeProps({key:ue.id,id:`${g}-${Y}`,ref:A(Y),type:i.type,color:i.color,style:ue.titleStyle,class:ue.titleClass,shrink:i.shrink,isActive:Y===E.currentIndex,controls:ue.id,scrollable:x.value,activeColor:i.titleActiveColor,inactiveColor:i.titleInactiveColor,onClick:J=>V(ue,Y,J)},pick$1(ue,["dot","badge","title","disabled","showZeroBadge"])),{title:ue.$slots.title})),U=()=>{if(i.type==="line"&&b.length)return createVNode("div",{class:bem$q("line"),style:E.lineStyle},null)},$=()=>{var ue,Y,J;const{type:ce,border:ge,sticky:Ee}=i,Ie=[createVNode("div",{ref:Ee?void 0:u,class:[bem$q("wrap"),{[BORDER_TOP_BOTTOM]:ce==="line"&&ge}]},[createVNode("div",{ref:c,role:"tablist",class:bem$q("nav",[ce,{shrink:i.shrink,complete:x.value}]),style:C.value,"aria-orientation":"horizontal"},[(ue=r["nav-left"])==null?void 0:ue.call(r),G(),U(),(Y=r["nav-right"])==null?void 0:Y.call(r)])]),(J=r["nav-bottom"])==null?void 0:J.call(r)];return Ee?createVNode("div",{ref:u},[Ie]):Ie};watch([()=>i.color,windowWidth],F),watch(()=>i.active,ue=>{ue!==k.value&&O(ue)}),watch(()=>b.length,()=>{E.inited&&(O(i.active),F(),nextTick(()=>{T(!0)}))});const q=()=>{O(i.active,!0),nextTick(()=>{E.inited=!0,u.value&&(s=useRect(u.value).height),T(!0)})},W=(ue,Y)=>e("rendered",ue,Y);return useExpose({resize:()=>{F(),nextTick(()=>{var ue,Y;return(Y=(ue=m.value)==null?void 0:ue.swipeRef.value)==null?void 0:Y.resize()})},scrollTo:Q}),onActivated(F),onPopupReopen(F),onMountedOrActivated(q),useVisibilityChange(l,F),useEventListener$1("scroll",K,{target:d,passive:!0}),S({id:g,props:i,setLine:F,onRendered:W,currentName:k,scrollIntoView:T}),()=>createVNode("div",{ref:l,class:bem$q([i.type])},[i.sticky?createVNode(Sticky,{container:l.value,offsetTop:I.value,onScroll:R},{default:()=>[$()]}):$(),createVNode(stdin_default$v,{ref:m,count:b.length,inited:E.inited,animated:i.animated,duration:i.duration,swipeable:i.swipeable,lazyRender:i.lazyRender,currentIndex:E.currentIndex,onChange:N},{default:()=>{var ue;return[(ue=r.default)==null?void 0:ue.call(r)]}})])}});const TAB_STATUS_KEY=Symbol(),useTabStatus=()=>inject(TAB_STATUS_KEY,null),[name$r,bem$p]=createNamespace$1("swipe-item");var stdin_default$t=defineComponent({name:name$r,setup(i,{slots:e}){let r;const s=reactive({offset:0,inited:!1,mounted:!1}),{parent:o,index:a}=useParent$1(SWIPE_KEY);if(!o)return;const l=computed(()=>{const m={},{vertical:g}=o.props;return o.size.value&&(m[g?"height":"width"]=`${o.size.value}px`),s.offset&&(m.transform=`translate${g?"Y":"X"}(${s.offset}px)`),m}),c=computed(()=>{const{loop:m,lazyRender:g}=o.props;if(!g||r)return!0;if(!s.mounted)return!1;const d=o.activeIndicator.value,y=o.count.value-1,A=d===0&&m?y:d-1,b=d===y&&m?0:d+1;return r=a.value===d||a.value===A||a.value===b,r}),u=m=>{s.offset=m};return onMounted(()=>{nextTick(()=>{s.mounted=!0})}),useExpose({setOffset:u}),()=>{var m;return createVNode("div",{class:bem$p(),style:l.value},[c.value?(m=e.default)==null?void 0:m.call(e):null])}}});const SwipeItem=withInstall(stdin_default$t),[name$q,bem$o]=createNamespace$1("tab"),tabProps=extend$2({},routeProps,{dot:Boolean,name:numericProp,badge:numericProp,title:String,disabled:Boolean,titleClass:unknownProp,titleStyle:[String,Object],showZeroBadge:truthProp});var stdin_default$s=defineComponent({name:name$q,props:tabProps,setup(i,{slots:e}){const r=useId(),s=ref(!1),{parent:o,index:a}=useParent$1(TABS_KEY);if(!o)return;const l=()=>{var g;return(g=i.name)!=null?g:a.value},c=()=>{s.value=!0,o.props.lazyRender&&nextTick(()=>{o.onRendered(l(),i.title)})},u=computed(()=>{const g=l()===o.currentName.value;return g&&!s.value&&c(),g}),m=ref(!u.value);return watch(u,g=>{g?m.value=!1:doubleRaf(()=>{m.value=!0})}),watch(()=>i.title,()=>{o.setLine(),o.scrollIntoView()}),provide(TAB_STATUS_KEY,u),()=>{var g;const d=`${o.id}-${a.value}`,{animated:y,swipeable:A,scrollspy:b,lazyRender:S}=o.props;if(!e.default&&!y)return;const E=b||u.value;if(y||A)return createVNode(SwipeItem,{id:r,role:"tabpanel",class:bem$o("panel-wrapper",{inactive:m.value}),tabindex:u.value?0:-1,"aria-hidden":!u.value,"aria-labelledby":d},{default:()=>{var P;return[createVNode("div",{class:bem$o("panel")},[(P=e.default)==null?void 0:P.call(e)])]}});const C=s.value||b||!S?(g=e.default)==null?void 0:g.call(e):null;return useExpose({id:r}),withDirectives(createVNode("div",{id:r,role:"tabpanel",class:bem$o("panel"),tabindex:E?0:-1,"aria-labelledby":d},[C]),[[vShow,E]])}}});const Tab=withInstall(stdin_default$s),Tabs=withInstall(stdin_default$u),[name$p,bem$n]=createNamespace$1("picker-group"),PICKER_GROUP_KEY=Symbol(name$p),pickerGroupProps=extend$2({tabs:makeArrayProp(),nextStepText:String},pickerToolbarProps);defineComponent({name:name$p,props:pickerGroupProps,emits:["confirm","cancel"],setup(i,{emit:e,slots:r}){const s=ref(0),{children:o,linkChildren:a}=useChildren$1(PICKER_GROUP_KEY);a();const l=()=>s.value{l()?s.value++:e("confirm",o.map(m=>m.confirm()))},u=()=>e("cancel");return()=>{var m;const g=(m=r.default)==null?void 0:m.call(r),d=l()?i.nextStepText:i.confirmButtonText;return createVNode("div",{class:bem$n()},[createVNode(stdin_default$z,{title:i.title,cancelButtonText:i.cancelButtonText,confirmButtonText:d,onConfirm:c,onCancel:u},pick$1(r,pickerToolbarSlots)),createVNode(Tabs,{active:s.value,"onUpdate:active":y=>s.value=y,class:bem$n("tabs"),shrink:!0,animated:!0,lazyRender:!1},{default:()=>[i.tabs.map((y,A)=>createVNode(Tab,{title:y,titleClass:bem$n("tab-title")},{default:()=>[g==null?void 0:g[A]]}))]})])}}});const pickerSharedProps=extend$2({loading:Boolean,readonly:Boolean,allowHtml:Boolean,optionHeight:makeNumericProp(44),showToolbar:truthProp,swipeDuration:makeNumericProp(1e3),visibleOptionNum:makeNumericProp(6)},pickerToolbarProps),pickerProps=extend$2({},pickerSharedProps,{columns:makeArrayProp(),modelValue:makeArrayProp(),toolbarPosition:makeStringProp("top"),columnsFieldNames:Object});var stdin_default$r=defineComponent({name:name$z,props:pickerProps,emits:["confirm","cancel","change","clickOption","update:modelValue"],setup(i,{emit:e,slots:r}){const s=ref(),o=ref(i.modelValue.slice(0)),{parent:a}=useParent$1(PICKER_GROUP_KEY),{children:l,linkChildren:c}=useChildren$1(PICKER_KEY);c();const u=computed(()=>assignDefaultFields(i.columnsFieldNames)),m=computed(()=>unitToPx(i.optionHeight)),g=computed(()=>getColumnsType(i.columns,u.value)),d=computed(()=>{const{columns:O}=i;switch(g.value){case"multiple":return O;case"cascade":return formatCascadeColumns(O,u.value,o);default:return[O]}}),y=computed(()=>d.value.some(O=>O.length)),A=computed(()=>d.value.map((O,B)=>findOptionByValue(O,o.value[B],u.value))),b=computed(()=>d.value.map((O,B)=>O.findIndex(V=>V[u.value.value]===o.value[B]))),S=(O,B)=>{if(o.value[O]!==B){const V=o.value.slice(0);V[O]=B,o.value=V}},E=()=>({selectedValues:o.value.slice(0),selectedOptions:A.value,selectedIndexes:b.value}),x=(O,B)=>{S(B,O),g.value==="cascade"&&o.value.forEach((V,R)=>{const Q=d.value[R];isOptionExist(Q,V,u.value)||S(R,Q.length?Q[0][u.value.value]:void 0)}),nextTick(()=>{e("change",extend$2({columnIndex:B},E()))})},C=(O,B)=>e("clickOption",extend$2({columnIndex:B,currentOption:O},E())),P=()=>{l.forEach(B=>B.stopMomentum());const O=E();return nextTick(()=>{e("confirm",O)}),O},k=()=>e("cancel",E()),I=()=>d.value.map((O,B)=>createVNode(stdin_default$A,{value:o.value[B],fields:u.value,options:O,readonly:i.readonly,allowHtml:i.allowHtml,optionHeight:m.value,swipeDuration:i.swipeDuration,visibleOptionNum:i.visibleOptionNum,onChange:V=>x(V,B),onClickOption:V=>C(V,B)},{option:r.option})),M=O=>{if(y.value){const B={height:`${m.value}px`},V={backgroundSize:`100% ${(O-m.value)/2}px`};return[createVNode("div",{class:bem$w("mask"),style:V},null),createVNode("div",{class:[BORDER_UNSET_TOP_BOTTOM,bem$w("frame")],style:B},null)]}},T=()=>{const O=m.value*+i.visibleOptionNum,B={height:`${O}px`};return createVNode("div",{ref:s,class:bem$w("columns"),style:B},[I(),M(O)])},F=()=>{if(i.showToolbar&&!a)return createVNode(stdin_default$z,mergeProps(pick$1(i,pickerToolbarPropKeys),{onConfirm:P,onCancel:k}),pick$1(r,pickerToolbarSlots))};watch(d,O=>{O.forEach((B,V)=>{B.length&&!isOptionExist(B,o.value[V],u.value)&&S(V,getFirstEnabledOption(B)[u.value.value])})},{immediate:!0});let D;return watch(()=>i.modelValue,O=>{!isSameValue(O,o.value)&&!isSameValue(O,D)&&(o.value=O.slice(0),D=O.slice(0))},{deep:!0}),watch(o,O=>{isSameValue(O,i.modelValue)||(D=O.slice(0),e("update:modelValue",D))},{immediate:!0}),useEventListener$1("touchmove",preventDefault,{target:s}),useExpose({confirm:P,getSelectedOptions:()=>A.value}),()=>{var O,B;return createVNode("div",{class:bem$w()},[i.toolbarPosition==="top"?F():null,i.loading?createVNode(Loading$2,{class:bem$w("loading")},null):null,(O=r["columns-top"])==null?void 0:O.call(r),T(),(B=r["columns-bottom"])==null?void 0:B.call(r),i.toolbarPosition==="bottom"?F():null])}}});const Picker=withInstall(stdin_default$r),[name$o,bem$m]=createNamespace$1("cell"),cellSharedProps={tag:makeStringProp("div"),icon:String,size:String,title:numericProp,value:numericProp,label:numericProp,center:Boolean,isLink:Boolean,border:truthProp,required:Boolean,iconPrefix:String,valueClass:unknownProp,labelClass:unknownProp,titleClass:unknownProp,titleStyle:null,arrowDirection:String,clickable:{type:Boolean,default:null}},cellProps=extend$2({},cellSharedProps,routeProps);var stdin_default$q=defineComponent({name:name$o,props:cellProps,setup(i,{slots:e}){const r=useRoute(),s=()=>{if(e.label||isDef$1(i.label))return createVNode("div",{class:[bem$m("label"),i.labelClass]},[e.label?e.label():i.label])},o=()=>{var u;if(e.title||isDef$1(i.title)){const m=(u=e.title)==null?void 0:u.call(e);return Array.isArray(m)&&m.length===0?void 0:createVNode("div",{class:[bem$m("title"),i.titleClass],style:i.titleStyle},[m||createVNode("span",null,[i.title]),s()])}},a=()=>{const u=e.value||e.default;if(u||isDef$1(i.value))return createVNode("div",{class:[bem$m("value"),i.valueClass]},[u?u():createVNode("span",null,[i.value])])},l=()=>{if(e.icon)return e.icon();if(i.icon)return createVNode(Icon$1,{name:i.icon,class:bem$m("left-icon"),classPrefix:i.iconPrefix},null)},c=()=>{if(e["right-icon"])return e["right-icon"]();if(i.isLink){const u=i.arrowDirection&&i.arrowDirection!=="right"?`arrow-${i.arrowDirection}`:"arrow";return createVNode(Icon$1,{name:u,class:bem$m("right-icon")},null)}};return()=>{var u;const{tag:m,size:g,center:d,border:y,isLink:A,required:b}=i,S=(u=i.clickable)!=null?u:A,E={center:d,required:b,clickable:S,borderless:!y};return g&&(E[g]=!!g),createVNode(m,{class:bem$m(E),role:S?"button":void 0,tabindex:S?0:void 0,onClick:r},{default:()=>{var x;return[l(),o(),a(),c(),(x=e.extra)==null?void 0:x.call(e)]}})}}});const Cell=withInstall(stdin_default$q);function isEmptyValue(i){return Array.isArray(i)?!i.length:i===0?!1:!i}function runSyncRule(i,e){if(isEmptyValue(i)){if(e.required)return!1;if(e.validateEmpty===!1)return!0}return!(e.pattern&&!e.pattern.test(String(i)))}function runRuleValidator(i,e){return new Promise(r=>{const s=e.validator(i,e);if(isPromise(s)){s.then(r);return}r(s)})}function getRuleMessage(i,e){const{message:r}=e;return isFunction$5(r)?r(i,e):r||""}function startComposing({target:i}){i.composing=!0}function endComposing({target:i}){i.composing&&(i.composing=!1,i.dispatchEvent(new Event("input")))}function resizeTextarea(i,e){const r=getRootScrollTop();i.style.height="auto";let s=i.scrollHeight;if(isObject$4(e)){const{maxHeight:o,minHeight:a}=e;o!==void 0&&(s=Math.min(s,o)),a!==void 0&&(s=Math.max(s,a))}s&&(i.style.height=`${s}px`,setRootScrollTop(r))}function mapInputType(i){return i==="number"?{type:"text",inputmode:"decimal"}:i==="digit"?{type:"tel",inputmode:"numeric"}:{type:i}}function getStringLength(i){return[...i].length}function cutString(i,e){return[...i].slice(0,e).join("")}const[name$n,bem$l]=createNamespace$1("field"),fieldSharedProps={id:String,name:String,leftIcon:String,rightIcon:String,autofocus:Boolean,clearable:Boolean,maxlength:numericProp,formatter:Function,clearIcon:makeStringProp("clear"),modelValue:makeNumericProp(""),inputAlign:String,placeholder:String,autocomplete:String,errorMessage:String,enterkeyhint:String,clearTrigger:makeStringProp("focus"),formatTrigger:makeStringProp("onChange"),error:{type:Boolean,default:null},disabled:{type:Boolean,default:null},readonly:{type:Boolean,default:null}},fieldProps=extend$2({},cellSharedProps,fieldSharedProps,{rows:numericProp,type:makeStringProp("text"),rules:Array,autosize:[Boolean,Object],labelWidth:numericProp,labelClass:unknownProp,labelAlign:String,showWordLimit:Boolean,errorMessageAlign:String,colon:{type:Boolean,default:null}});var stdin_default$p=defineComponent({name:name$n,props:fieldProps,emits:["blur","focus","clear","keypress","clickInput","endValidate","startValidate","clickLeftIcon","clickRightIcon","update:modelValue"],setup(i,{emit:e,slots:r}){const s=useId(),o=reactive({status:"unvalidated",focused:!1,validateMessage:""}),a=ref(),l=ref(),c=ref(),{parent:u}=useParent$1(FORM_KEY),m=()=>{var J;return String((J=i.modelValue)!=null?J:"")},g=J=>{if(isDef$1(i[J]))return i[J];if(u&&isDef$1(u.props[J]))return u.props[J]},d=computed(()=>{const J=g("readonly");if(i.clearable&&!J){const ce=m()!=="",ge=i.clearTrigger==="always"||i.clearTrigger==="focus"&&o.focused;return ce&&ge}return!1}),y=computed(()=>c.value&&r.input?c.value():i.modelValue),A=J=>J.reduce((ce,ge)=>ce.then(()=>{if(o.status==="failed")return;let{value:Ee}=y;if(ge.formatter&&(Ee=ge.formatter(Ee,ge)),!runSyncRule(Ee,ge)){o.status="failed",o.validateMessage=getRuleMessage(Ee,ge);return}if(ge.validator)return isEmptyValue(Ee)&&ge.validateEmpty===!1?void 0:runRuleValidator(Ee,ge).then(Ie=>{Ie&&typeof Ie=="string"?(o.status="failed",o.validateMessage=Ie):Ie===!1&&(o.status="failed",o.validateMessage=getRuleMessage(Ee,ge))})}),Promise.resolve()),b=()=>{o.status="unvalidated",o.validateMessage=""},S=()=>e("endValidate",{status:o.status,message:o.validateMessage}),E=(J=i.rules)=>new Promise(ce=>{b(),J?(e("startValidate"),A(J).then(()=>{o.status==="failed"?(ce({name:i.name,message:o.validateMessage}),S()):(o.status="passed",ce(),S())})):ce()}),x=J=>{if(u&&i.rules){const{validateTrigger:ce}=u.props,ge=toArray(ce).includes(J),Ee=i.rules.filter(Ie=>Ie.trigger?toArray(Ie.trigger).includes(J):ge);Ee.length&&E(Ee)}},C=J=>{var ce;const{maxlength:ge}=i;if(isDef$1(ge)&&getStringLength(J)>+ge){const Ee=m();if(Ee&&getStringLength(Ee)===+ge)return Ee;const Ie=(ce=a.value)==null?void 0:ce.selectionEnd;if(o.focused&&Ie){const De=[...J],ie=De.length-+ge;return De.splice(Ie-ie,ie),De.join("")}return cutString(J,+ge)}return J},P=(J,ce="onChange")=>{const ge=J;J=C(J);const Ee=getStringLength(ge)-getStringLength(J);if(i.type==="number"||i.type==="digit"){const De=i.type==="number";J=formatNumber(J,De,De)}let Ie=0;if(i.formatter&&ce===i.formatTrigger){const{formatter:De,maxlength:ie}=i;if(J=De(J),isDef$1(ie)&&getStringLength(J)>+ie&&(J=cutString(J,+ie)),a.value&&o.focused){const{selectionEnd:ae}=a.value,H=cutString(ge,ae);Ie=getStringLength(De(H))-getStringLength(H)}}if(a.value&&a.value.value!==J)if(o.focused){let{selectionStart:De,selectionEnd:ie}=a.value;if(a.value.value=J,isDef$1(De)&&isDef$1(ie)){const ae=getStringLength(J);Ee?(De-=Ee,ie-=Ee):Ie&&(De+=Ie,ie+=Ie),a.value.setSelectionRange(Math.min(De,ae),Math.min(ie,ae))}}else a.value.value=J;J!==i.modelValue&&e("update:modelValue",J)},k=J=>{J.target.composing||P(J.target.value)},I=()=>{var J;return(J=a.value)==null?void 0:J.blur()},M=()=>{var J;return(J=a.value)==null?void 0:J.focus()},T=()=>{const J=a.value;i.type==="textarea"&&i.autosize&&J&&resizeTextarea(J,i.autosize)},F=J=>{o.focused=!0,e("focus",J),nextTick(T),g("readonly")&&I()},D=J=>{o.focused=!1,P(m(),"onBlur"),e("blur",J),!g("readonly")&&(x("onBlur"),nextTick(T),resetScroll())},N=J=>e("clickInput",J),O=J=>e("clickLeftIcon",J),B=J=>e("clickRightIcon",J),V=J=>{preventDefault(J),e("update:modelValue",""),e("clear",J)},R=computed(()=>{if(typeof i.error=="boolean")return i.error;if(u&&u.props.showError&&o.status==="failed")return!0}),Q=computed(()=>{const J=g("labelWidth"),ce=g("labelAlign");if(J&&ce!=="top")return{width:addUnit(J)}}),_=J=>{J.keyCode===13&&(!(u&&u.props.submitOnEnter)&&i.type!=="textarea"&&preventDefault(J),i.type==="search"&&I()),e("keypress",J)},K=()=>i.id||`${s}-input`,G=()=>o.status,U=()=>{const J=bem$l("control",[g("inputAlign"),{error:R.value,custom:!!r.input,"min-height":i.type==="textarea"&&!i.autosize}]);if(r.input)return createVNode("div",{class:J,onClick:N},[r.input()]);const ce={id:K(),ref:a,name:i.name,rows:i.rows!==void 0?+i.rows:void 0,class:J,disabled:g("disabled"),readonly:g("readonly"),autofocus:i.autofocus,placeholder:i.placeholder,autocomplete:i.autocomplete,enterkeyhint:i.enterkeyhint,"aria-labelledby":i.label?`${s}-label`:void 0,onBlur:D,onFocus:F,onInput:k,onClick:N,onChange:endComposing,onKeypress:_,onCompositionend:endComposing,onCompositionstart:startComposing};return i.type==="textarea"?createVNode("textarea",ce,null):createVNode("input",mergeProps(mapInputType(i.type),ce),null)},$=()=>{const J=r["left-icon"];if(i.leftIcon||J)return createVNode("div",{class:bem$l("left-icon"),onClick:O},[J?J():createVNode(Icon$1,{name:i.leftIcon,classPrefix:i.iconPrefix},null)])},q=()=>{const J=r["right-icon"];if(i.rightIcon||J)return createVNode("div",{class:bem$l("right-icon"),onClick:B},[J?J():createVNode(Icon$1,{name:i.rightIcon,classPrefix:i.iconPrefix},null)])},W=()=>{if(i.showWordLimit&&i.maxlength){const J=getStringLength(m());return createVNode("div",{class:bem$l("word-limit")},[createVNode("span",{class:bem$l("word-num")},[J]),createTextVNode("/"),i.maxlength])}},xe=()=>{if(u&&u.props.showErrorMessage===!1)return;const J=i.errorMessage||o.validateMessage;if(J){const ce=r["error-message"],ge=g("errorMessageAlign");return createVNode("div",{class:bem$l("error-message",ge)},[ce?ce({message:J}):J])}},ue=()=>{const J=g("labelWidth"),ce=g("labelAlign"),ge=g("colon")?":":"";if(r.label)return[r.label(),ge];if(i.label)return createVNode("label",{id:`${s}-label`,for:K(),style:ce==="top"&&J?{width:addUnit(J)}:void 0},[i.label+ge])},Y=()=>[createVNode("div",{class:bem$l("body")},[U(),d.value&&createVNode(Icon$1,{ref:l,name:i.clearIcon,class:bem$l("clear")},null),q(),r.button&&createVNode("div",{class:bem$l("button")},[r.button()])]),W(),xe()];return useExpose({blur:I,focus:M,validate:E,formValue:y,resetValidation:b,getValidationStatus:G}),provide(CUSTOM_FIELD_INJECTION_KEY,{customValue:c,resetValidation:b,validateWithTrigger:x}),watch(()=>i.modelValue,()=>{P(m()),b(),x("onChange"),nextTick(T)}),onMounted(()=>{P(m(),i.formatTrigger),nextTick(T)}),useEventListener$1("touchstart",V,{target:computed(()=>{var J;return(J=l.value)==null?void 0:J.$el})}),()=>{const J=g("disabled"),ce=g("labelAlign"),ge=$(),Ee=()=>{const Ie=ue();return ce==="top"?[ge,Ie].filter(Boolean):Ie||[]};return createVNode(Cell,{size:i.size,class:bem$l({error:R.value,disabled:J,[`label-${ce}`]:ce}),center:i.center,border:i.border,isLink:i.isLink,clickable:i.clickable,titleStyle:Q.value,valueClass:bem$l("value"),titleClass:[bem$l("label",[ce,{required:i.required}]),i.labelClass],arrowDirection:i.arrowDirection},{icon:ge&&ce!=="top"?()=>ge:null,title:Ee,value:Y,extra:r.extra})}}});const Field=withInstall(stdin_default$p);let lockCount=0;function lockClick(i){i?(lockCount||document.body.classList.add("van-toast--unclickable"),lockCount++):lockCount&&(lockCount--,lockCount||document.body.classList.remove("van-toast--unclickable"))}const[name$m,bem$k]=createNamespace$1("toast"),popupInheritProps=["show","overlay","teleport","transition","overlayClass","overlayStyle","closeOnClickOverlay"],toastProps={icon:String,show:Boolean,type:makeStringProp("text"),overlay:Boolean,message:numericProp,iconSize:numericProp,duration:makeNumberProp(2e3),position:makeStringProp("middle"),teleport:[String,Object],wordBreak:String,className:unknownProp,iconPrefix:String,transition:makeStringProp("van-fade"),loadingType:String,forbidClick:Boolean,overlayClass:unknownProp,overlayStyle:Object,closeOnClick:Boolean,closeOnClickOverlay:Boolean};var stdin_default$o=defineComponent({name:name$m,props:toastProps,emits:["update:show"],setup(i,{emit:e,slots:r}){let s,o=!1;const a=()=>{const d=i.show&&i.forbidClick;o!==d&&(o=d,lockClick(o))},l=d=>e("update:show",d),c=()=>{i.closeOnClick&&l(!1)},u=()=>clearTimeout(s),m=()=>{const{icon:d,type:y,iconSize:A,iconPrefix:b,loadingType:S}=i;if(d||y==="success"||y==="fail")return createVNode(Icon$1,{name:d||y,size:A,class:bem$k("icon"),classPrefix:b},null);if(y==="loading")return createVNode(Loading$2,{class:bem$k("loading"),size:A,type:S},null)},g=()=>{const{type:d,message:y}=i;if(r.message)return createVNode("div",{class:bem$k("text")},[r.message()]);if(isDef$1(y)&&y!=="")return d==="html"?createVNode("div",{key:0,class:bem$k("text"),innerHTML:String(y)},null):createVNode("div",{class:bem$k("text")},[y])};return watch(()=>[i.show,i.forbidClick],a),watch(()=>[i.show,i.type,i.message,i.duration],()=>{u(),i.show&&i.duration>0&&(s=setTimeout(()=>{l(!1)},i.duration))}),onMounted(a),onUnmounted(a),()=>createVNode(Popup,mergeProps({class:[bem$k([i.position,i.wordBreak==="normal"?"break-normal":i.wordBreak,{[i.type]:!i.icon}]),i.className],lockScroll:!1,onClick:c,onClosed:u,"onUpdate:show":l},pick$1(i,popupInheritProps)),{default:()=>[m(),g()]})}});function usePopupState(){const i=reactive({show:!1}),e=o=>{i.show=o},r=o=>{extend$2(i,o,{transitionAppear:!0}),e(!0)},s=()=>e(!1);return useExpose({open:r,close:s,toggle:e}),{open:r,close:s,state:i,toggle:e}}function mountComponent(i){const e=createApp(i),r=document.createElement("div");return document.body.appendChild(r),{instance:e.mount(r),unmount(){e.unmount(),document.body.removeChild(r)}}}const defaultOptions$1={icon:"",type:"text",message:"",className:"",overlay:!1,onClose:void 0,onOpened:void 0,duration:2e3,teleport:"body",iconSize:void 0,iconPrefix:void 0,position:"middle",transition:"van-fade",forbidClick:!1,loadingType:void 0,overlayClass:"",overlayStyle:void 0,closeOnClick:!1,closeOnClickOverlay:!1};let queue=[],allowMultiple=!1,currentOptions$1=extend$2({},defaultOptions$1);const defaultOptionsMap=new Map;function parseOptions(i){return isObject$4(i)?i:{message:i}}function createInstance(){const{instance:i,unmount:e}=mountComponent({setup(){const r=ref(""),{open:s,state:o,close:a,toggle:l}=usePopupState(),c=()=>{},u=()=>createVNode(stdin_default$o,mergeProps(o,{onClosed:c,"onUpdate:show":l}),null);return watch(r,m=>{o.message=m}),getCurrentInstance().render=u,{open:s,close:a,message:r}}});return i}function getInstance(){if(!queue.length||allowMultiple){const i=createInstance();queue.push(i)}return queue[queue.length-1]}function showToast(i={}){if(!inBrowser$2)return{};const e=getInstance(),r=parseOptions(i);return e.open(extend$2({},currentOptions$1,defaultOptionsMap.get(r.type||currentOptions$1.type),r)),e}const createMethod=i=>e=>showToast(extend$2({type:i},parseOptions(e))),showLoadingToast=createMethod("loading"),closeToast=i=>{queue.length&&(i?(queue.forEach(e=>{e.close()}),queue=[]):queue[0].close())};withInstall(stdin_default$o);const[name$l,bem$j]=createNamespace$1("switch"),switchProps={size:numericProp,loading:Boolean,disabled:Boolean,modelValue:unknownProp,activeColor:String,inactiveColor:String,activeValue:{type:unknownProp,default:!0},inactiveValue:{type:unknownProp,default:!1}};var stdin_default$n=defineComponent({name:name$l,props:switchProps,emits:["change","update:modelValue"],setup(i,{emit:e,slots:r}){const s=()=>i.modelValue===i.activeValue,o=()=>{if(!i.disabled&&!i.loading){const l=s()?i.inactiveValue:i.activeValue;e("update:modelValue",l),e("change",l)}},a=()=>{if(i.loading){const l=s()?i.activeColor:i.inactiveColor;return createVNode(Loading$2,{class:bem$j("loading"),color:l},null)}if(r.node)return r.node()};return useCustomFieldValue(()=>i.modelValue),()=>{var l;const{size:c,loading:u,disabled:m,activeColor:g,inactiveColor:d}=i,y=s(),A={fontSize:addUnit(c),backgroundColor:y?g:d};return createVNode("div",{role:"switch",class:bem$j({on:y,loading:u,disabled:m}),style:A,tabindex:m?void 0:0,"aria-checked":y,onClick:o},[createVNode("div",{class:bem$j("node")},[a()]),(l=r.background)==null?void 0:l.call(r)])}}});const Switch$1=withInstall(stdin_default$n),[name$k,bem$i]=createNamespace$1("image"),imageProps={src:String,alt:String,fit:String,position:String,round:Boolean,block:Boolean,width:numericProp,height:numericProp,radius:numericProp,lazyLoad:Boolean,iconSize:numericProp,showError:truthProp,errorIcon:makeStringProp("photo-fail"),iconPrefix:String,showLoading:truthProp,loadingIcon:makeStringProp("photo")};var stdin_default$m=defineComponent({name:name$k,props:imageProps,emits:["load","error"],setup(i,{emit:e,slots:r}){const s=ref(!1),o=ref(!0),a=ref(),{$Lazyload:l}=getCurrentInstance().proxy,c=computed(()=>{const E={width:addUnit(i.width),height:addUnit(i.height)};return isDef$1(i.radius)&&(E.overflow="hidden",E.borderRadius=addUnit(i.radius)),E});watch(()=>i.src,()=>{s.value=!1,o.value=!0});const u=E=>{o.value&&(o.value=!1,e("load",E))},m=()=>{const E=new Event("load");Object.defineProperty(E,"target",{value:a.value,enumerable:!0}),u(E)},g=E=>{s.value=!0,o.value=!1,e("error",E)},d=(E,x,C)=>C?C():createVNode(Icon$1,{name:E,size:i.iconSize,class:x,classPrefix:i.iconPrefix},null),y=()=>{if(o.value&&i.showLoading)return createVNode("div",{class:bem$i("loading")},[d(i.loadingIcon,bem$i("loading-icon"),r.loading)]);if(s.value&&i.showError)return createVNode("div",{class:bem$i("error")},[d(i.errorIcon,bem$i("error-icon"),r.error)])},A=()=>{if(s.value||!i.src)return;const E={alt:i.alt,class:bem$i("img"),style:{objectFit:i.fit,objectPosition:i.position}};return i.lazyLoad?withDirectives(createVNode("img",mergeProps({ref:a},E),null),[[resolveDirective("lazy"),i.src]]):createVNode("img",mergeProps({ref:a,src:i.src,onLoad:u,onError:g},E),null)},b=({el:E})=>{const x=()=>{E===a.value&&o.value&&m()};a.value?x():nextTick(x)},S=({el:E})=>{E===a.value&&!s.value&&g()};return l&&inBrowser$2&&(l.$on("loaded",b),l.$on("error",S),onBeforeUnmount(()=>{l.$off("loaded",b),l.$off("error",S)})),onMounted(()=>{nextTick(()=>{var E;(E=a.value)!=null&&E.complete&&m()})}),()=>{var E;return createVNode("div",{class:bem$i({round:i.round,block:i.block}),style:c.value},[A(),y(),(E=r.default)==null?void 0:E.call(r)])}}});const Image$1=withInstall(stdin_default$m),[name$j,bem$h]=createNamespace$1("circle");let uid=0;const format=i=>Math.min(Math.max(+i,0),100);function getPath(i,e){const r=i?1:0;return`M ${e/2} ${e/2} m 0, -500 a 500, 500 0 1, ${r} 0, 1000 a 500, 500 0 1, ${r} 0, -1000`}const circleProps={text:String,size:numericProp,fill:makeStringProp("none"),rate:makeNumericProp(100),speed:makeNumericProp(0),color:[String,Object],clockwise:truthProp,layerColor:String,currentRate:makeNumberProp(0),strokeWidth:makeNumericProp(40),strokeLinecap:String,startPosition:makeStringProp("top")};var stdin_default$l=defineComponent({name:name$j,props:circleProps,emits:["update:currentRate"],setup(i,{emit:e,slots:r}){const s=`van-circle-${uid++}`,o=computed(()=>+i.strokeWidth+1e3),a=computed(()=>getPath(i.clockwise,o.value)),l=computed(()=>{const y={top:0,right:90,bottom:180,left:270}[i.startPosition];if(y)return{transform:`rotate(${y}deg)`}});watch(()=>i.rate,d=>{let y;const A=Date.now(),b=i.currentRate,S=format(d),E=Math.abs((b-S)*1e3/+i.speed),x=()=>{const C=Date.now(),k=Math.min((C-A)/E,1)*(S-b)+b;e("update:currentRate",format(parseFloat(k.toFixed(1)))),(S>b?kS)&&(y=raf(x))};i.speed?(y&&cancelRaf(y),y=raf(x)):e("update:currentRate",S)},{immediate:!0});const c=()=>{const{strokeWidth:y,currentRate:A,strokeLinecap:b}=i,S=3140*A/100,E=isObject$4(i.color)?`url(#${s})`:i.color,x={stroke:E,strokeWidth:`${+y+1}px`,strokeLinecap:b,strokeDasharray:`${S}px 3140px`};return createVNode("path",{d:a.value,style:x,class:bem$h("hover"),stroke:E},null)},u=()=>{const d={fill:i.fill,stroke:i.layerColor,strokeWidth:`${i.strokeWidth}px`};return createVNode("path",{class:bem$h("layer"),style:d,d:a.value},null)},m=()=>{const{color:d}=i;if(!isObject$4(d))return;const y=Object.keys(d).sort((A,b)=>parseFloat(A)-parseFloat(b)).map((A,b)=>createVNode("stop",{key:b,offset:A,"stop-color":d[A]},null));return createVNode("defs",null,[createVNode("linearGradient",{id:s,x1:"100%",y1:"0%",x2:"0%",y2:"0%"},[y])])},g=()=>{if(r.default)return r.default();if(i.text)return createVNode("div",{class:bem$h("text")},[i.text])};return()=>createVNode("div",{class:bem$h(),style:getSizeStyle(i.size)},[createVNode("svg",{viewBox:`0 0 ${o.value} ${o.value}`,style:l.value},[m(),u(),c()]),g()])}});const Circle=withInstall(stdin_default$l),[name$i,bem$g]=createNamespace$1("empty"),emptyProps={image:makeStringProp("default"),imageSize:[Number,String,Array],description:String};var stdin_default$k=defineComponent({name:name$i,props:emptyProps,setup(i,{slots:e}){const r=()=>{const x=e.description?e.description():i.description;if(x)return createVNode("p",{class:bem$g("description")},[x])},s=()=>{if(e.default)return createVNode("div",{class:bem$g("bottom")},[e.default()])},o=useId(),a=x=>`${o}-${x}`,l=x=>`url(#${a(x)})`,c=(x,C,P)=>createVNode("stop",{"stop-color":x,offset:`${C}%`,"stop-opacity":P},null),u=(x,C)=>[c(x,0),c(C,100)],m=x=>[createVNode("defs",null,[createVNode("radialGradient",{id:a(x),cx:"50%",cy:"54%",fx:"50%",fy:"54%",r:"297%",gradientTransform:"matrix(-.16 0 0 -.33 .58 .72)"},[c("#EBEDF0",0),c("#F2F3F5",100,.3)])]),createVNode("ellipse",{fill:l(x),opacity:".8",cx:"80",cy:"140",rx:"46",ry:"8"},null)],g=()=>[createVNode("defs",null,[createVNode("linearGradient",{id:a("a"),x1:"64%",y1:"100%",x2:"64%"},[c("#FFF",0,.5),c("#F2F3F5",100)])]),createVNode("g",{opacity:".8"},[createVNode("path",{d:"M36 131V53H16v20H2v58h34z",fill:l("a")},null),createVNode("path",{d:"M123 15h22v14h9v77h-31V15z",fill:l("a")},null)])],d=()=>[createVNode("defs",null,[createVNode("linearGradient",{id:a("b"),x1:"64%",y1:"97%",x2:"64%",y2:"0%"},[c("#F2F3F5",0,.3),c("#F2F3F5",100)])]),createVNode("g",{opacity:".8"},[createVNode("path",{d:"M87 6c3 0 7 3 8 6a8 8 0 1 1-1 16H80a7 7 0 0 1-8-6c0-4 3-7 6-7 0-5 4-9 9-9Z",fill:l("b")},null),createVNode("path",{d:"M19 23c2 0 3 1 4 3 2 0 4 2 4 4a4 4 0 0 1-4 3v1h-7v-1l-1 1c-2 0-3-2-3-4 0-1 1-3 3-3 0-2 2-4 4-4Z",fill:l("b")},null)])],y=()=>createVNode("svg",{viewBox:"0 0 160 160"},[createVNode("defs",null,[createVNode("linearGradient",{id:a(1),x1:"64%",y1:"100%",x2:"64%"},[c("#FFF",0,.5),c("#F2F3F5",100)]),createVNode("linearGradient",{id:a(2),x1:"50%",x2:"50%",y2:"84%"},[c("#EBEDF0",0),c("#DCDEE0",100,0)]),createVNode("linearGradient",{id:a(3),x1:"100%",x2:"100%",y2:"100%"},[u("#EAEDF0","#DCDEE0")]),createVNode("radialGradient",{id:a(4),cx:"50%",cy:"0%",fx:"50%",fy:"0%",r:"100%",gradientTransform:"matrix(0 1 -.54 0 .5 -.5)"},[c("#EBEDF0",0),c("#FFF",100,0)])]),createVNode("g",{fill:"none"},[g(),createVNode("path",{fill:l(4),d:"M0 139h160v21H0z"},null),createVNode("path",{d:"M80 54a7 7 0 0 1 3 13v27l-2 2h-2a2 2 0 0 1-2-2V67a7 7 0 0 1 3-13z",fill:l(2)},null),createVNode("g",{opacity:".6","stroke-linecap":"round","stroke-width":"7"},[createVNode("path",{d:"M64 47a19 19 0 0 0-5 13c0 5 2 10 5 13",stroke:l(3)},null),createVNode("path",{d:"M53 36a34 34 0 0 0 0 48",stroke:l(3)},null),createVNode("path",{d:"M95 73a19 19 0 0 0 6-13c0-5-2-9-6-13",stroke:l(3)},null),createVNode("path",{d:"M106 84a34 34 0 0 0 0-48",stroke:l(3)},null)]),createVNode("g",{transform:"translate(31 105)"},[createVNode("rect",{fill:"#EBEDF0",width:"98",height:"34",rx:"2"},null),createVNode("rect",{fill:"#FFF",x:"9",y:"8",width:"80",height:"18",rx:"1.1"},null),createVNode("rect",{fill:"#EBEDF0",x:"15",y:"12",width:"18",height:"6",rx:"1.1"},null)])])]),A=()=>createVNode("svg",{viewBox:"0 0 160 160"},[createVNode("defs",null,[createVNode("linearGradient",{x1:"50%",x2:"50%",y2:"100%",id:a(5)},[u("#F2F3F5","#DCDEE0")]),createVNode("linearGradient",{x1:"95%",y1:"48%",x2:"5.5%",y2:"51%",id:a(6)},[u("#EAEDF1","#DCDEE0")]),createVNode("linearGradient",{y1:"45%",x2:"100%",y2:"54%",id:a(7)},[u("#EAEDF1","#DCDEE0")])]),g(),d(),createVNode("g",{transform:"translate(36 50)",fill:"none"},[createVNode("g",{transform:"translate(8)"},[createVNode("rect",{fill:"#EBEDF0",opacity:".6",x:"38",y:"13",width:"36",height:"53",rx:"2"},null),createVNode("rect",{fill:l(5),width:"64",height:"66",rx:"2"},null),createVNode("rect",{fill:"#FFF",x:"6",y:"6",width:"52",height:"55",rx:"1"},null),createVNode("g",{transform:"translate(15 17)",fill:l(6)},[createVNode("rect",{width:"34",height:"6",rx:"1"},null),createVNode("path",{d:"M0 14h34v6H0z"},null),createVNode("rect",{y:"28",width:"34",height:"6",rx:"1"},null)])]),createVNode("rect",{fill:l(7),y:"61",width:"88",height:"28",rx:"1"},null),createVNode("rect",{fill:"#F7F8FA",x:"29",y:"72",width:"30",height:"6",rx:"1"},null)])]),b=()=>createVNode("svg",{viewBox:"0 0 160 160"},[createVNode("defs",null,[createVNode("linearGradient",{x1:"50%",x2:"50%",y2:"100%",id:a(8)},[u("#EAEDF1","#DCDEE0")])]),g(),d(),m("c"),createVNode("path",{d:"m59 60 21 21 21-21h3l9 9v3L92 93l21 21v3l-9 9h-3l-21-21-21 21h-3l-9-9v-3l21-21-21-21v-3l9-9h3Z",fill:l(8)},null)]),S=()=>createVNode("svg",{viewBox:"0 0 160 160"},[createVNode("defs",null,[createVNode("linearGradient",{x1:"50%",y1:"100%",x2:"50%",id:a(9)},[u("#EEE","#D8D8D8")]),createVNode("linearGradient",{x1:"100%",y1:"50%",y2:"50%",id:a(10)},[u("#F2F3F5","#DCDEE0")]),createVNode("linearGradient",{x1:"50%",x2:"50%",y2:"100%",id:a(11)},[u("#F2F3F5","#DCDEE0")]),createVNode("linearGradient",{x1:"50%",x2:"50%",y2:"100%",id:a(12)},[u("#FFF","#F7F8FA")])]),g(),d(),m("d"),createVNode("g",{transform:"rotate(-45 113 -4)",fill:"none"},[createVNode("rect",{fill:l(9),x:"24",y:"52.8",width:"5.8",height:"19",rx:"1"},null),createVNode("rect",{fill:l(10),x:"22.1",y:"67.3",width:"9.9",height:"28",rx:"1"},null),createVNode("circle",{stroke:l(11),"stroke-width":"8",cx:"27",cy:"27",r:"27"},null),createVNode("circle",{fill:l(12),cx:"27",cy:"27",r:"16"},null),createVNode("path",{d:"M37 7c-8 0-15 5-16 12",stroke:l(11),"stroke-width":"3",opacity:".5","stroke-linecap":"round",transform:"rotate(45 29 13)"},null)])]),E=()=>{var x;if(e.image)return e.image();const C={error:b,search:S,network:y,default:A};return((x=C[i.image])==null?void 0:x.call(C))||createVNode("img",{src:i.image},null)};return()=>createVNode("div",{class:bem$g()},[createVNode("div",{class:bem$g("image"),style:getSizeStyle(i.imageSize)},[E()]),r(),s()])}});const Empty=withInstall(stdin_default$k),[name$h,bem$f,t$2]=createNamespace$1("dialog"),dialogProps=extend$2({},popupSharedProps,{title:String,theme:String,width:numericProp,message:[String,Function],callback:Function,allowHtml:Boolean,className:unknownProp,transition:makeStringProp("van-dialog-bounce"),messageAlign:String,closeOnPopstate:truthProp,showCancelButton:Boolean,cancelButtonText:String,cancelButtonColor:String,cancelButtonDisabled:Boolean,confirmButtonText:String,confirmButtonColor:String,confirmButtonDisabled:Boolean,showConfirmButton:truthProp,closeOnClickOverlay:Boolean}),popupInheritKeys=[...popupSharedPropKeys,"transition","closeOnPopstate"];var stdin_default$j=defineComponent({name:name$h,props:dialogProps,emits:["confirm","cancel","keydown","update:show"],setup(i,{emit:e,slots:r}){const s=ref(),o=reactive({confirm:!1,cancel:!1}),a=x=>e("update:show",x),l=x=>{var C;a(!1),(C=i.callback)==null||C.call(i,x)},c=x=>()=>{i.show&&(e(x),i.beforeClose?(o[x]=!0,callInterceptor(i.beforeClose,{args:[x],done(){l(x),o[x]=!1},canceled(){o[x]=!1}})):l(x))},u=c("cancel"),m=c("confirm"),g=withKeys(x=>{var C,P;if(x.target!==((P=(C=s.value)==null?void 0:C.popupRef)==null?void 0:P.value))return;({Enter:i.showConfirmButton?m:noop$1,Escape:i.showCancelButton?u:noop$1})[x.key](),e("keydown",x)},["enter","esc"]),d=()=>{const x=r.title?r.title():i.title;if(x)return createVNode("div",{class:bem$f("header",{isolated:!i.message&&!r.default})},[x])},y=x=>{const{message:C,allowHtml:P,messageAlign:k}=i,I=bem$f("message",{"has-title":x,[k]:k}),M=isFunction$5(C)?C():C;return P&&typeof M=="string"?createVNode("div",{class:I,innerHTML:M},null):createVNode("div",{class:I},[M])},A=()=>{if(r.default)return createVNode("div",{class:bem$f("content")},[r.default()]);const{title:x,message:C,allowHtml:P}=i;if(C){const k=!!(x||r.title);return createVNode("div",{key:P?1:0,class:bem$f("content",{isolated:!k})},[y(k)])}},b=()=>createVNode("div",{class:[BORDER_TOP,bem$f("footer")]},[i.showCancelButton&&createVNode(Button$1,{size:"large",text:i.cancelButtonText||t$2("cancel"),class:bem$f("cancel"),style:{color:i.cancelButtonColor},loading:o.cancel,disabled:i.cancelButtonDisabled,onClick:u},null),i.showConfirmButton&&createVNode(Button$1,{size:"large",text:i.confirmButtonText||t$2("confirm"),class:[bem$f("confirm"),{[BORDER_LEFT]:i.showCancelButton}],style:{color:i.confirmButtonColor},loading:o.confirm,disabled:i.confirmButtonDisabled,onClick:m},null)]),S=()=>createVNode(ActionBar,{class:bem$f("footer")},{default:()=>[i.showCancelButton&&createVNode(ActionBarButton,{type:"warning",text:i.cancelButtonText||t$2("cancel"),class:bem$f("cancel"),color:i.cancelButtonColor,loading:o.cancel,disabled:i.cancelButtonDisabled,onClick:u},null),i.showConfirmButton&&createVNode(ActionBarButton,{type:"danger",text:i.confirmButtonText||t$2("confirm"),class:bem$f("confirm"),color:i.confirmButtonColor,loading:o.confirm,disabled:i.confirmButtonDisabled,onClick:m},null)]}),E=()=>r.footer?r.footer():i.theme==="round-button"?S():b();return()=>{const{width:x,title:C,theme:P,message:k,className:I}=i;return createVNode(Popup,mergeProps({ref:s,role:"dialog",class:[bem$f([P]),I],style:{width:addUnit(x)},tabindex:0,"aria-labelledby":C||k,onKeydown:g,"onUpdate:show":a},pick$1(i,popupInheritKeys)),{default:()=>[d(),A(),E()]})}}});let instance$2;const DEFAULT_OPTIONS={title:"",width:"",theme:null,message:"",overlay:!0,callback:null,teleport:"body",className:"",allowHtml:!1,lockScroll:!0,transition:void 0,beforeClose:null,overlayClass:"",overlayStyle:void 0,messageAlign:"",cancelButtonText:"",cancelButtonColor:null,cancelButtonDisabled:!1,confirmButtonText:"",confirmButtonColor:null,confirmButtonDisabled:!1,showConfirmButton:!0,showCancelButton:!1,closeOnPopstate:!0,closeOnClickOverlay:!1};let currentOptions=extend$2({},DEFAULT_OPTIONS);function initInstance$1(){({instance:instance$2}=mountComponent({setup(){const{state:e,toggle:r}=usePopupState();return()=>createVNode(stdin_default$j,mergeProps(e,{"onUpdate:show":r}),null)}}))}function showDialog(i){return inBrowser$2?new Promise((e,r)=>{instance$2||initInstance$1(),instance$2.open(extend$2({},currentOptions,i,{callback:s=>{(s==="confirm"?e:r)(s)}}))}):Promise.resolve()}const showConfirmDialog=i=>showDialog(extend$2({showCancelButton:!0},i));withInstall(stdin_default$j);const[name$g,bem$e]=createNamespace$1("dropdown-menu"),dropdownMenuProps={overlay:truthProp,zIndex:numericProp,duration:makeNumericProp(.2),direction:makeStringProp("down"),activeColor:String,closeOnClickOutside:truthProp,closeOnClickOverlay:truthProp},DROPDOWN_KEY=Symbol(name$g);var stdin_default$i=defineComponent({name:name$g,props:dropdownMenuProps,setup(i,{slots:e}){const r=useId(),s=ref(),o=ref(),a=ref(0),{children:l,linkChildren:c}=useChildren$1(DROPDOWN_KEY),u=useScrollParent(s),m=computed(()=>l.some(E=>E.state.showWrapper)),g=computed(()=>{if(m.value&&isDef$1(i.zIndex))return{zIndex:+i.zIndex+1}}),d=()=>{i.closeOnClickOutside&&l.forEach(E=>{E.toggle(!1)})},y=()=>{if(o.value){const E=useRect(o);i.direction==="down"?a.value=E.bottom:a.value=windowHeight.value-E.top}},A=()=>{m.value&&y()},b=E=>{l.forEach((x,C)=>{C===E?x.toggle():x.state.showPopup&&x.toggle(!1,{immediate:!0})})},S=(E,x)=>{const{showPopup:C}=E.state,{disabled:P,titleClass:k}=E;return createVNode("div",{id:`${r}-${x}`,role:"button",tabindex:P?void 0:0,class:[bem$e("item",{disabled:P}),{[HAPTICS_FEEDBACK]:!P}],onClick:()=>{P||b(x)}},[createVNode("span",{class:[bem$e("title",{down:C===(i.direction==="down"),active:C}),k],style:{color:C?i.activeColor:""}},[createVNode("div",{class:"van-ellipsis"},[E.renderTitle()])])])};return c({id:r,props:i,offset:a,updateOffset:y}),useClickAway(s,d),useEventListener$1("scroll",A,{target:u,passive:!0}),()=>{var E;return createVNode("div",{ref:s,class:bem$e()},[createVNode("div",{ref:o,style:g.value,class:bem$e("bar",{opened:m.value})},[l.map(S)]),(E=e.default)==null?void 0:E.call(e)])}}});const[name$f,bem$d]=createNamespace$1("dropdown-item"),dropdownItemProps={title:String,options:makeArrayProp(),disabled:Boolean,teleport:[String,Object],lazyRender:truthProp,modelValue:unknownProp,titleClass:unknownProp};var stdin_default$h=defineComponent({name:name$f,inheritAttrs:!1,props:dropdownItemProps,emits:["open","opened","close","closed","change","update:modelValue"],setup(i,{emit:e,slots:r,attrs:s}){const o=reactive({showPopup:!1,transition:!0,showWrapper:!1}),{parent:a,index:l}=useParent$1(DROPDOWN_KEY);if(!a)return;const c=x=>()=>e(x),u=c("open"),m=c("close"),g=c("opened"),d=()=>{o.showWrapper=!1,e("closed")},y=x=>{i.teleport&&x.stopPropagation()},A=(x=!o.showPopup,C={})=>{x!==o.showPopup&&(o.showPopup=x,o.transition=!C.immediate,x&&(a.updateOffset(),o.showWrapper=!0))},b=()=>{if(r.title)return r.title();if(i.title)return i.title;const x=i.options.find(C=>C.value===i.modelValue);return x?x.text:""},S=x=>{const{activeColor:C}=a.props,P=x.value===i.modelValue,k=()=>{o.showPopup=!1,x.value!==i.modelValue&&(e("update:modelValue",x.value),e("change",x.value))},I=()=>{if(P)return createVNode(Icon$1,{class:bem$d("icon"),color:C,name:"success"},null)};return createVNode(Cell,{role:"menuitem",key:x.value,icon:x.icon,title:x.text,class:bem$d("option",{active:P}),style:{color:P?C:""},tabindex:P?0:-1,clickable:!0,onClick:k},{value:I})},E=()=>{const{offset:x}=a,{zIndex:C,overlay:P,duration:k,direction:I,closeOnClickOverlay:M}=a.props,T=getZIndexStyle(C);return I==="down"?T.top=`${x.value}px`:T.bottom=`${x.value}px`,withDirectives(createVNode("div",mergeProps({style:T,class:bem$d([I]),onClick:y},s),[createVNode(Popup,{show:o.showPopup,"onUpdate:show":F=>o.showPopup=F,role:"menu",class:bem$d("content"),overlay:P,position:I==="down"?"top":"bottom",duration:o.transition?k:0,lazyRender:i.lazyRender,overlayStyle:{position:"absolute"},"aria-labelledby":`${a.id}-${l.value}`,closeOnClickOverlay:M,onOpen:u,onClose:m,onOpened:g,onClosed:d},{default:()=>{var F;return[i.options.map(S),(F=r.default)==null?void 0:F.call(r)]}})]),[[vShow,o.showWrapper]])};return useExpose({state:o,toggle:A,renderTitle:b}),()=>i.teleport?createVNode(Teleport,{to:i.teleport},{default:()=>[E()]}):E()}});const DropdownItem=withInstall(stdin_default$h),DropdownMenu=withInstall(stdin_default$i),getDistance=i=>Math.sqrt((i[0].clientX-i[1].clientX)**2+(i[0].clientY-i[1].clientY)**2),bem$c=createNamespace$1("image-preview")[1];var stdin_default$g=defineComponent({props:{src:String,show:Boolean,active:Number,minZoom:makeRequiredProp(numericProp),maxZoom:makeRequiredProp(numericProp),rootWidth:makeRequiredProp(Number),rootHeight:makeRequiredProp(Number),disableZoom:Boolean},emits:["scale","close","longPress"],setup(i,{emit:e,slots:r}){const s=reactive({scale:1,moveX:0,moveY:0,moving:!1,zooming:!1,imageRatio:0,displayWidth:0,displayHeight:0}),o=useTouch(),a=ref(),l=computed(()=>{const{rootWidth:N,rootHeight:O}=i,B=O/N;return s.imageRatio>B}),c=computed(()=>{const{scale:N,moveX:O,moveY:B,moving:V,zooming:R}=s,Q={transitionDuration:R||V?"0s":".3s"};if(N!==1){const _=O/N,K=B/N;Q.transform=`scale(${N}, ${N}) translate(${_}px, ${K}px)`}return Q}),u=computed(()=>{if(s.imageRatio){const{rootWidth:N,rootHeight:O}=i,B=l.value?O/s.imageRatio:N;return Math.max(0,(s.scale*B-N)/2)}return 0}),m=computed(()=>{if(s.imageRatio){const{rootWidth:N,rootHeight:O}=i,B=l.value?O:N*s.imageRatio;return Math.max(0,(s.scale*B-O)/2)}return 0}),g=N=>{N=clamp(N,+i.minZoom,+i.maxZoom+1),N!==s.scale&&(s.scale=N,e("scale",{scale:N,index:i.active}))},d=()=>{g(1),s.moveX=0,s.moveY=0},y=()=>{const N=s.scale>1?1:2;g(N),s.moveX=0,s.moveY=0};let A,b,S,E,x,C,P,k=!1;const I=N=>{const{touches:O}=N;if(A=O.length,A===2&&i.disableZoom)return;const{offsetX:B}=o;o.start(N),b=s.moveX,S=s.moveY,P=Date.now(),k=!1,s.moving=A===1&&s.scale!==1,s.zooming=A===2&&!B.value,s.zooming&&(E=s.scale,x=getDistance(N.touches))},M=N=>{const{touches:O}=N;if(o.move(N),s.moving){const{deltaX:B,deltaY:V}=o,R=B.value+b,Q=V.value+S;if((R>u.value||R<-u.value)&&!k&&o.isHorizontal()){s.moving=!1;return}k=!0,preventDefault(N,!0),s.moveX=clamp(R,-u.value,u.value),s.moveY=clamp(Q,-m.value,m.value)}if(s.zooming&&(preventDefault(N,!0),O.length===2)){const B=getDistance(O),V=E*B/x;g(V)}},T=()=>{if(A>1)return;const{offsetX:N,offsetY:O}=o,B=Date.now()-P,V=250,R=5;N.value{e("close"),C=null},V):B>LONG_PRESS_START_TIME&&e("longPress"))},F=N=>{let O=!1;if((s.moving||s.zooming)&&(O=!0,s.moving&&b===s.moveX&&S===s.moveY&&(O=!1),!N.touches.length)){s.zooming&&(s.moveX=clamp(s.moveX,-u.value,u.value),s.moveY=clamp(s.moveY,-m.value,m.value),s.zooming=!1),s.moving=!1,b=0,S=0,E=1,s.scale<1&&d();const B=+i.maxZoom;s.scale>B&&(s.scale=B)}preventDefault(N,O),T(),o.reset()},D=N=>{const{naturalWidth:O,naturalHeight:B}=N.target;s.imageRatio=B/O};return watch(()=>i.active,d),watch(()=>i.show,N=>{N||d()}),useEventListener$1("touchmove",M,{target:computed(()=>{var N;return(N=a.value)==null?void 0:N.$el})}),()=>{const N={loading:()=>createVNode(Loading$2,{type:"spinner"},null)};return createVNode(SwipeItem,{ref:a,class:bem$c("swipe-item"),onTouchstartPassive:I,onTouchend:F,onTouchcancel:F},{default:()=>[r.image?createVNode("div",{class:bem$c("image-wrap")},[r.image({src:i.src})]):createVNode(Image$1,{src:i.src,fit:"contain",class:bem$c("image",{vertical:l.value}),style:c.value,onLoad:D},N)]})}}});const[name$e,bem$b]=createNamespace$1("image-preview"),popupProps=["show","teleport","transition","overlayStyle","closeOnPopstate"],imagePreviewProps={show:Boolean,loop:truthProp,images:makeArrayProp(),minZoom:makeNumericProp(1/3),maxZoom:makeNumericProp(3),overlay:truthProp,closeable:Boolean,showIndex:truthProp,className:unknownProp,closeIcon:makeStringProp("clear"),transition:String,beforeClose:Function,overlayClass:unknownProp,overlayStyle:Object,swipeDuration:makeNumericProp(300),startPosition:makeNumericProp(0),showIndicators:Boolean,closeOnPopstate:truthProp,closeIconPosition:makeStringProp("top-right"),teleport:[String,Object]};var stdin_default$f=defineComponent({name:name$e,props:imagePreviewProps,emits:["scale","close","closed","change","longPress","update:show"],setup(i,{emit:e,slots:r}){const s=ref(),o=reactive({active:0,rootWidth:0,rootHeight:0,disableZoom:!1}),a=()=>{if(s.value){const C=useRect(s.value.$el);o.rootWidth=C.width,o.rootHeight=C.height,s.value.resize()}},l=C=>e("scale",C),c=C=>e("update:show",C),u=()=>{callInterceptor(i.beforeClose,{args:[o.active],done:()=>c(!1)})},m=C=>{C!==o.active&&(o.active=C,e("change",C))},g=()=>{if(i.showIndex)return createVNode("div",{class:bem$b("index")},[r.index?r.index({index:o.active}):`${o.active+1} / ${i.images.length}`])},d=()=>{if(r.cover)return createVNode("div",{class:bem$b("cover")},[r.cover()])},y=()=>{o.disableZoom=!0},A=()=>{o.disableZoom=!1},b=()=>createVNode(Swipe,{ref:s,lazyRender:!0,loop:i.loop,class:bem$b("swipe"),duration:i.swipeDuration,initialSwipe:i.startPosition,showIndicators:i.showIndicators,indicatorColor:"white",onChange:m,onDragEnd:A,onDragStart:y},{default:()=>[i.images.map((C,P)=>createVNode(stdin_default$g,{src:C,show:i.show,active:o.active,maxZoom:i.maxZoom,minZoom:i.minZoom,rootWidth:o.rootWidth,rootHeight:o.rootHeight,disableZoom:o.disableZoom,onScale:l,onClose:u,onLongPress:()=>e("longPress",{index:P})},{image:r.image}))]}),S=()=>{if(i.closeable)return createVNode(Icon$1,{role:"button",name:i.closeIcon,class:[bem$b("close-icon",i.closeIconPosition),HAPTICS_FEEDBACK],onClick:u},null)},E=()=>e("closed"),x=(C,P)=>{var k;return(k=s.value)==null?void 0:k.swipeTo(C,P)};return useExpose({swipeTo:x}),onMounted(a),watch([windowWidth,windowHeight],a),watch(()=>i.startPosition,C=>m(+C)),watch(()=>i.show,C=>{const{images:P,startPosition:k}=i;C?(m(+k),nextTick(()=>{a(),x(+k,{immediate:!0})})):e("close",{index:o.active,url:P[o.active]})}),()=>createVNode(Popup,mergeProps({class:[bem$b(),i.className],overlayClass:[bem$b("overlay"),i.overlayClass],onClosed:E,"onUpdate:show":c},pick$1(i,popupProps)),{default:()=>[S(),b(),g(),d()]})}});let instance$1;const defaultConfig={loop:!0,images:[],maxZoom:3,minZoom:1/3,onScale:void 0,onClose:void 0,onChange:void 0,teleport:"body",className:"",showIndex:!0,closeable:!1,closeIcon:"clear",transition:void 0,beforeClose:void 0,overlayStyle:void 0,overlayClass:void 0,startPosition:0,swipeDuration:300,showIndicators:!1,closeOnPopstate:!0,closeIconPosition:"top-right"};function initInstance(){({instance:instance$1}=mountComponent({setup(){const{state:i,toggle:e}=usePopupState(),r=()=>{i.images=[]};return()=>createVNode(stdin_default$f,mergeProps(i,{onClosed:r,"onUpdate:show":e}),null)}}))}const showImagePreview=(i,e=0)=>{if(inBrowser$2)return instance$1||initInstance(),i=Array.isArray(i)?{images:i,startPosition:e}:i,instance$1.open(extend$2({},defaultConfig,i)),instance$1};withInstall(stdin_default$f);const[name$d,bem$a,t$1]=createNamespace$1("list"),listProps={error:Boolean,offset:makeNumericProp(300),loading:Boolean,disabled:Boolean,finished:Boolean,errorText:String,direction:makeStringProp("down"),loadingText:String,finishedText:String,immediateCheck:truthProp};var stdin_default$e=defineComponent({name:name$d,props:listProps,emits:["load","update:error","update:loading"],setup(i,{emit:e,slots:r}){const s=ref(i.loading),o=ref(),a=ref(),l=useTabStatus(),c=useScrollParent(o),u=()=>{nextTick(()=>{if(s.value||i.finished||i.disabled||i.error||(l==null?void 0:l.value)===!1)return;const{direction:A}=i,b=+i.offset,S=useRect(c);if(!S.height||isHidden(o))return;let E=!1;const x=useRect(a);A==="up"?E=S.top-x.top<=b:E=x.bottom-S.bottom<=b,E&&(s.value=!0,e("update:loading",!0),e("load"))})},m=()=>{if(i.finished){const A=r.finished?r.finished():i.finishedText;if(A)return createVNode("div",{class:bem$a("finished-text")},[A])}},g=()=>{e("update:error",!1),u()},d=()=>{if(i.error){const A=r.error?r.error():i.errorText;if(A)return createVNode("div",{role:"button",class:bem$a("error-text"),tabindex:0,onClick:g},[A])}},y=()=>{if(s.value&&!i.finished&&!i.disabled)return createVNode("div",{class:bem$a("loading")},[r.loading?r.loading():createVNode(Loading$2,{class:bem$a("loading-icon")},{default:()=>[i.loadingText||t$1("loading")]})])};return watch(()=>[i.loading,i.finished,i.error],u),l&&watch(l,A=>{A&&u()}),onUpdated(()=>{s.value=i.loading}),onMounted(()=>{i.immediateCheck&&u()}),useExpose({check:u}),useEventListener$1("scroll",u,{target:c,passive:!0}),()=>{var A;const b=(A=r.default)==null?void 0:A.call(r),S=createVNode("div",{ref:a,class:bem$a("placeholder")},null);return createVNode("div",{ref:o,role:"feed",class:bem$a(),"aria-busy":s.value},[i.direction==="down"?b:S,y(),m(),d(),i.direction==="up"?b:S])}}});const List$1=withInstall(stdin_default$e),[name$c,bem$9]=createNamespace$1("nav-bar"),navBarProps={title:String,fixed:Boolean,zIndex:numericProp,border:truthProp,leftText:String,rightText:String,leftArrow:Boolean,placeholder:Boolean,safeAreaInsetTop:Boolean,clickable:truthProp};var stdin_default$d=defineComponent({name:name$c,props:navBarProps,emits:["clickLeft","clickRight"],setup(i,{emit:e,slots:r}){const s=ref(),o=usePlaceholder(s,bem$9),a=g=>e("clickLeft",g),l=g=>e("clickRight",g),c=()=>r.left?r.left():[i.leftArrow&&createVNode(Icon$1,{class:bem$9("arrow"),name:"arrow-left"},null),i.leftText&&createVNode("span",{class:bem$9("text")},[i.leftText])],u=()=>r.right?r.right():createVNode("span",{class:bem$9("text")},[i.rightText]),m=()=>{const{title:g,fixed:d,border:y,zIndex:A}=i,b=getZIndexStyle(A),S=i.leftArrow||i.leftText||r.left,E=i.rightText||r.right;return createVNode("div",{ref:s,style:b,class:[bem$9({fixed:d}),{[BORDER_BOTTOM]:y,"van-safe-area-top":i.safeAreaInsetTop}]},[createVNode("div",{class:bem$9("content")},[S&&createVNode("div",{class:[bem$9("left"),i.clickable?HAPTICS_FEEDBACK:""],onClick:a},[c()]),createVNode("div",{class:[bem$9("title"),"van-ellipsis"]},[r.title?r.title():g]),E&&createVNode("div",{class:[bem$9("right"),i.clickable?HAPTICS_FEEDBACK:""],onClick:l},[u()])])])};return()=>i.fixed&&i.placeholder?o(m):m()}});const NavBar=withInstall(stdin_default$d),[name$b,bem$8]=createNamespace$1("notice-bar"),noticeBarProps={text:String,mode:String,color:String,delay:makeNumericProp(1),speed:makeNumericProp(60),leftIcon:String,wrapable:Boolean,background:String,scrollable:{type:Boolean,default:null}};var stdin_default$c=defineComponent({name:name$b,props:noticeBarProps,emits:["close","replay"],setup(i,{emit:e,slots:r}){let s=0,o=0,a;const l=ref(),c=ref(),u=reactive({show:!0,offset:0,duration:0}),m=()=>{if(r["left-icon"])return r["left-icon"]();if(i.leftIcon)return createVNode(Icon$1,{class:bem$8("left-icon"),name:i.leftIcon},null)},g=()=>{if(i.mode==="closeable")return"cross";if(i.mode==="link")return"arrow"},d=E=>{i.mode==="closeable"&&(u.show=!1,e("close",E))},y=()=>{if(r["right-icon"])return r["right-icon"]();const E=g();if(E)return createVNode(Icon$1,{name:E,class:bem$8("right-icon"),onClick:d},null)},A=()=>{u.offset=s,u.duration=0,raf(()=>{doubleRaf(()=>{u.offset=-o,u.duration=(o+s)/+i.speed,e("replay")})})},b=()=>{const E=i.scrollable===!1&&!i.wrapable,x={transform:u.offset?`translateX(${u.offset}px)`:"",transitionDuration:`${u.duration}s`};return createVNode("div",{ref:l,role:"marquee",class:bem$8("wrap")},[createVNode("div",{ref:c,style:x,class:[bem$8("content"),{"van-ellipsis":E}],onTransitionend:A},[r.default?r.default():i.text])])},S=()=>{const{delay:E,speed:x,scrollable:C}=i,P=isDef$1(E)?+E*1e3:0;s=0,o=0,u.offset=0,u.duration=0,clearTimeout(a),a=setTimeout(()=>{if(!l.value||!c.value||C===!1)return;const k=useRect(l).width,I=useRect(c).width;(C||I>k)&&doubleRaf(()=>{s=k,o=I,u.offset=-o,u.duration=o/+x})},P)};return onPopupReopen(S),onMountedOrActivated(S),useEventListener$1("pageshow",S),useExpose({reset:S}),watch(()=>[i.text,i.scrollable],S),()=>{const{color:E,wrapable:x,background:C}=i;return withDirectives(createVNode("div",{role:"alert",class:bem$8({wrapable:x}),style:{color:E,background:C}},[m(),b(),y()]),[[vShow,u.show]])}}});const NoticeBar=withInstall(stdin_default$c),[name$a,bem$7]=createNamespace$1("progress"),progressProps={color:String,inactive:Boolean,pivotText:String,textColor:String,showPivot:truthProp,pivotColor:String,trackColor:String,strokeWidth:numericProp,percentage:{type:numericProp,default:0,validator:i=>+i>=0&&+i<=100}};var stdin_default$b=defineComponent({name:name$a,props:progressProps,setup(i){const e=computed(()=>i.inactive?void 0:i.color),r=()=>{const{textColor:s,pivotText:o,pivotColor:a,percentage:l}=i,c=o!=null?o:`${l}%`;if(i.showPivot&&c){const u={color:s,left:`${+l}%`,transform:`translate(-${+l}%,-50%)`,background:a||e.value};return createVNode("span",{style:u,class:bem$7("pivot",{inactive:i.inactive})},[c])}};return()=>{const{trackColor:s,percentage:o,strokeWidth:a}=i,l={background:s,height:addUnit(a)},c={width:`${o}%`,background:e.value};return createVNode("div",{class:bem$7(),style:l},[createVNode("span",{class:bem$7("portion",{inactive:i.inactive}),style:c},null),r()])}}});const Progress=withInstall(stdin_default$b),[name$9,bem$6]=createNamespace$1("skeleton-title"),skeletonTitleProps={round:Boolean,titleWidth:numericProp};var stdin_default$a=defineComponent({name:name$9,props:skeletonTitleProps,setup(i){return()=>createVNode("h3",{class:bem$6([{round:i.round}]),style:{width:addUnit(i.titleWidth)}},null)}});const SkeletonTitle=withInstall(stdin_default$a);var stdin_default$9=SkeletonTitle;const[name$8,bem$5]=createNamespace$1("skeleton-avatar"),skeletonAvatarProps={avatarSize:numericProp,avatarShape:makeStringProp("round")};var stdin_default$8=defineComponent({name:name$8,props:skeletonAvatarProps,setup(i){return()=>createVNode("div",{class:bem$5([i.avatarShape]),style:getSizeStyle(i.avatarSize)},null)}});const SkeletonAvatar=withInstall(stdin_default$8);var stdin_default$7=SkeletonAvatar;const DEFAULT_ROW_WIDTH="100%",skeletonParagraphProps={round:Boolean,rowWidth:{type:numericProp,default:DEFAULT_ROW_WIDTH}},[name$7,bem$4]=createNamespace$1("skeleton-paragraph");var stdin_default$6=defineComponent({name:name$7,props:skeletonParagraphProps,setup(i){return()=>createVNode("div",{class:bem$4([{round:i.round}]),style:{width:i.rowWidth}},null)}});const SkeletonParagraph=withInstall(stdin_default$6);var stdin_default$5=SkeletonParagraph;const[name$6,bem$3]=createNamespace$1("skeleton"),DEFAULT_LAST_ROW_WIDTH="60%",skeletonProps={row:makeNumericProp(0),round:Boolean,title:Boolean,titleWidth:numericProp,avatar:Boolean,avatarSize:numericProp,avatarShape:makeStringProp("round"),loading:truthProp,animate:truthProp,rowWidth:{type:[Number,String,Array],default:DEFAULT_ROW_WIDTH}};var stdin_default$4=defineComponent({name:name$6,inheritAttrs:!1,props:skeletonProps,setup(i,{slots:e,attrs:r}){const s=()=>{if(i.avatar)return createVNode(stdin_default$7,{avatarShape:i.avatarShape,avatarSize:i.avatarSize},null)},o=()=>{if(i.title)return createVNode(stdin_default$9,{round:i.round,titleWidth:i.titleWidth},null)},a=u=>{const{rowWidth:m}=i;return m===DEFAULT_ROW_WIDTH&&u===+i.row-1?DEFAULT_LAST_ROW_WIDTH:Array.isArray(m)?m[u]:m},l=()=>Array(+i.row).fill("").map((u,m)=>createVNode(stdin_default$5,{key:m,round:i.round,rowWidth:addUnit(a(m))},null)),c=()=>e.template?e.template():createVNode(Fragment,null,[s(),createVNode("div",{class:bem$3("content")},[o(),l()])]);return()=>{var u;return i.loading?createVNode("div",mergeProps({class:bem$3({animate:i.animate,round:i.round})},r),[c()]):(u=e.default)==null?void 0:u.call(e)}}});const Skeleton=withInstall(stdin_default$4),[name$5,bem$2]=createNamespace$1("slider"),sliderProps={min:makeNumericProp(0),max:makeNumericProp(100),step:makeNumericProp(1),range:Boolean,reverse:Boolean,disabled:Boolean,readonly:Boolean,vertical:Boolean,barHeight:numericProp,buttonSize:numericProp,activeColor:String,inactiveColor:String,modelValue:{type:[Number,Array],default:0}};var stdin_default$3=defineComponent({name:name$5,props:sliderProps,emits:["change","dragEnd","dragStart","update:modelValue"],setup(i,{emit:e,slots:r}){let s,o,a;const l=ref(),c=[ref(),ref()],u=ref(),m=useTouch(),g=computed(()=>Number(i.max)-Number(i.min)),d=computed(()=>{const N=i.vertical?"width":"height";return{background:i.inactiveColor,[N]:addUnit(i.barHeight)}}),y=N=>i.range&&Array.isArray(N),A=()=>{const{modelValue:N,min:O}=i;return y(N)?`${(N[1]-N[0])*100/g.value}%`:`${(N-Number(O))*100/g.value}%`},b=()=>{const{modelValue:N,min:O}=i;return y(N)?`${(N[0]-Number(O))*100/g.value}%`:"0%"},S=computed(()=>{const O={[i.vertical?"height":"width"]:A(),background:i.activeColor};u.value&&(O.transition="none");const B=()=>i.vertical?i.reverse?"bottom":"top":i.reverse?"right":"left";return O[B()]=b(),O}),E=N=>{const O=+i.min,B=+i.max,V=+i.step;N=clamp(N,O,B);const R=Math.round((N-O)/V)*V;return addNumber(O,R)},x=N=>{var O,B;const V=(O=N[0])!=null?O:Number(i.min),R=(B=N[1])!=null?B:Number(i.max);return V>R?[R,V]:[V,R]},C=(N,O)=>{y(N)?N=x(N).map(E):N=E(N),isSameValue(N,i.modelValue)||e("update:modelValue",N),O&&!isSameValue(N,a)&&e("change",N)},P=N=>{if(N.stopPropagation(),i.disabled||i.readonly)return;const{min:O,reverse:B,vertical:V,modelValue:R}=i,Q=useRect(l),_=()=>V?B?Q.bottom-N.clientY:N.clientY-Q.top:B?Q.right-N.clientX:N.clientX-Q.left,K=V?Q.height:Q.width,G=Number(O)+_()/K*g.value;if(y(R)){const[U,$]=R,q=(U+$)/2;G<=q?C([G,$],!0):C([U,G],!0)}else C(G,!0)},k=N=>{i.disabled||i.readonly||(m.start(N),o=i.modelValue,y(o)?a=o.map(E):a=E(o),u.value="start")},I=N=>{if(i.disabled||i.readonly)return;u.value==="start"&&e("dragStart",N),preventDefault(N,!0),m.move(N),u.value="dragging";const O=useRect(l),B=i.vertical?m.deltaY.value:m.deltaX.value,V=i.vertical?O.height:O.width;let R=B/V*g.value;if(i.reverse&&(R=-R),y(a)){const Q=i.reverse?1-s:s;o[Q]=a[Q]+R}else o=a+R;C(o)},M=N=>{i.disabled||i.readonly||(u.value==="dragging"&&(C(o,!0),e("dragEnd",N)),u.value="")},T=N=>typeof N=="number"?bem$2("button-wrapper",["left","right"][N]):bem$2("button-wrapper",i.reverse?"left":"right"),F=(N,O)=>{if(typeof O=="number"){const B=r[O===0?"left-button":"right-button"];if(B)return B({value:N})}return r.button?r.button({value:N}):createVNode("div",{class:bem$2("button"),style:getSizeStyle(i.buttonSize)},null)},D=N=>{const O=typeof N=="number"?i.modelValue[N]:i.modelValue;return createVNode("div",{ref:c[N!=null?N:0],role:"slider",class:T(N),tabindex:i.disabled?void 0:0,"aria-valuemin":i.min,"aria-valuenow":O,"aria-valuemax":i.max,"aria-disabled":i.disabled||void 0,"aria-readonly":i.readonly||void 0,"aria-orientation":i.vertical?"vertical":"horizontal",onTouchstartPassive:B=>{typeof N=="number"&&(s=N),k(B)},onTouchend:M,onTouchcancel:M,onClick:stopPropagation},[F(O,N)])};return C(i.modelValue),useCustomFieldValue(()=>i.modelValue),c.forEach(N=>{useEventListener$1("touchmove",I,{target:N})}),()=>createVNode("div",{ref:l,style:d.value,class:bem$2({vertical:i.vertical,disabled:i.disabled}),onClick:P},[createVNode("div",{class:bem$2("bar"),style:S.value},[i.range?[D(0),D(1)]:D()])])}});const Slider=withInstall(stdin_default$3),[name$4,bem$1]=createNamespace$1("space"),spaceProps={align:String,direction:{type:String,default:"horizontal"},size:{type:[Number,String,Array],default:8},wrap:Boolean,fill:Boolean};function filterEmpty(i=[]){const e=[];return i.forEach(r=>{Array.isArray(r)?e.push(...r):r.type===Fragment?e.push(...filterEmpty(r.children)):e.push(r)}),e.filter(r=>{var s;return!(r&&(r.type===Comment||r.type===Fragment&&((s=r.children)==null?void 0:s.length)===0||r.type===Text&&r.children.trim()===""))})}var stdin_default$2=defineComponent({name:name$4,props:spaceProps,setup(i,{slots:e}){const r=computed(()=>{var a;return(a=i.align)!=null?a:i.direction==="horizontal"?"center":""}),s=a=>typeof a=="number"?a+"px":a,o=a=>{const l={},c=`${s(Array.isArray(i.size)?i.size[0]:i.size)}`,u=`${s(Array.isArray(i.size)?i.size[1]:i.size)}`;return a?i.wrap?{marginBottom:u}:{}:(i.direction==="horizontal"&&(l.marginRight=c),(i.direction==="vertical"||i.wrap)&&(l.marginBottom=u),l)};return()=>{var a;const l=filterEmpty((a=e.default)==null?void 0:a.call(e));return createVNode("div",{class:[bem$1({[i.direction]:i.direction,[`align-${r.value}`]:r.value,wrap:i.wrap,fill:i.fill})]},[l.map((c,u)=>createVNode("div",{key:`item-${u}`,class:`${name$4}-item`,style:o(u===l.length-1)},[c]))])}}});const Space=withInstall(stdin_default$2),[name$3,bem,t]=createNamespace$1("uploader");function readFileContent(i,e){return new Promise(r=>{if(e==="file"){r();return}const s=new FileReader;s.onload=o=>{r(o.target.result)},e==="dataUrl"?s.readAsDataURL(i):e==="text"&&s.readAsText(i)})}function isOversize(i,e){return toArray(i).some(r=>r.file?isFunction$5(e)?e(r.file):r.file.size>+e:!1)}function filterFiles(i,e){const r=[],s=[];return i.forEach(o=>{isOversize(o,e)?s.push(o):r.push(o)}),{valid:r,invalid:s}}const IMAGE_REGEXP=/\.(jpeg|jpg|gif|png|svg|webp|jfif|bmp|dpg|avif)/i,isImageUrl=i=>IMAGE_REGEXP.test(i);function isImageFile(i){return i.isImage?!0:i.file&&i.file.type?i.file.type.indexOf("image")===0:i.url?isImageUrl(i.url):typeof i.content=="string"?i.content.indexOf("data:image")===0:!1}var stdin_default$1=defineComponent({props:{name:numericProp,item:makeRequiredProp(Object),index:Number,imageFit:String,lazyLoad:Boolean,deletable:Boolean,previewSize:[Number,String,Array],beforeDelete:Function},emits:["delete","preview"],setup(i,{emit:e,slots:r}){const s=()=>{const{status:m,message:g}=i.item;if(m==="uploading"||m==="failed"){const d=m==="failed"?createVNode(Icon$1,{name:"close",class:bem("mask-icon")},null):createVNode(Loading$2,{class:bem("loading")},null),y=isDef$1(g)&&g!=="";return createVNode("div",{class:bem("mask")},[d,y&&createVNode("div",{class:bem("mask-message")},[g])])}},o=m=>{const{name:g,item:d,index:y,beforeDelete:A}=i;m.stopPropagation(),callInterceptor(A,{args:[d,{name:g,index:y}],done:()=>e("delete")})},a=()=>e("preview"),l=()=>{if(i.deletable&&i.item.status!=="uploading"){const m=r["preview-delete"];return createVNode("div",{role:"button",class:bem("preview-delete",{shadow:!m}),tabindex:0,"aria-label":t("delete"),onClick:o},[m?m():createVNode(Icon$1,{name:"cross",class:bem("preview-delete-icon")},null)])}},c=()=>{if(r["preview-cover"]){const{index:m,item:g}=i;return createVNode("div",{class:bem("preview-cover")},[r["preview-cover"](extend$2({index:m},g))])}},u=()=>{const{item:m,lazyLoad:g,imageFit:d,previewSize:y}=i;return isImageFile(m)?createVNode(Image$1,{fit:d,src:m.content||m.url,class:bem("preview-image"),width:Array.isArray(y)?y[0]:y,height:Array.isArray(y)?y[1]:y,lazyLoad:g,onClick:a},{default:c}):createVNode("div",{class:bem("file"),style:getSizeStyle(i.previewSize)},[createVNode(Icon$1,{class:bem("file-icon"),name:"description"},null),createVNode("div",{class:[bem("file-name"),"van-ellipsis"]},[m.file?m.file.name:m.url]),c()])};return()=>createVNode("div",{class:bem("preview")},[u(),s(),l()])}});const uploaderProps={name:makeNumericProp(""),accept:makeStringProp("image/*"),capture:String,multiple:Boolean,disabled:Boolean,readonly:Boolean,lazyLoad:Boolean,maxCount:makeNumericProp(1/0),imageFit:makeStringProp("cover"),resultType:makeStringProp("dataUrl"),uploadIcon:makeStringProp("photograph"),uploadText:String,deletable:truthProp,afterRead:Function,showUpload:truthProp,modelValue:makeArrayProp(),beforeRead:Function,beforeDelete:Function,previewSize:[Number,String,Array],previewImage:truthProp,previewOptions:Object,previewFullImage:truthProp,maxSize:{type:[Number,String,Function],default:1/0}};var stdin_default=defineComponent({name:name$3,props:uploaderProps,emits:["delete","oversize","clickUpload","closePreview","clickPreview","update:modelValue"],setup(i,{emit:e,slots:r}){const s=ref(),o=[],a=(k=i.modelValue.length)=>({name:i.name,index:k}),l=()=>{s.value&&(s.value.value="")},c=k=>{if(l(),isOversize(k,i.maxSize))if(Array.isArray(k)){const I=filterFiles(k,i.maxSize);if(k=I.valid,e("oversize",I.invalid,a()),!k.length)return}else{e("oversize",k,a());return}k=reactive(k),e("update:modelValue",[...i.modelValue,...toArray(k)]),i.afterRead&&i.afterRead(k,a())},u=k=>{const{maxCount:I,modelValue:M,resultType:T}=i;if(Array.isArray(k)){const F=+I-M.length;k.length>F&&(k=k.slice(0,F)),Promise.all(k.map(D=>readFileContent(D,T))).then(D=>{const N=k.map((O,B)=>{const V={file:O,status:"",message:""};return D[B]&&(V.content=D[B]),V});c(N)})}else readFileContent(k,T).then(F=>{const D={file:k,status:"",message:""};F&&(D.content=F),c(D)})},m=k=>{const{files:I}=k.target;if(i.disabled||!I||!I.length)return;const M=I.length===1?I[0]:[].slice.call(I);if(i.beforeRead){const T=i.beforeRead(M,a());if(!T){l();return}if(isPromise(T)){T.then(F=>{u(F||M)}).catch(l);return}}u(M)};let g;const d=()=>e("closePreview"),y=k=>{if(i.previewFullImage){const I=i.modelValue.filter(isImageFile),M=I.map(T=>(T.file&&!T.url&&T.status!=="failed"&&(T.url=URL.createObjectURL(T.file),o.push(T.url)),T.url)).filter(Boolean);g=showImagePreview(extend$2({images:M,startPosition:I.indexOf(k),onClose:d},i.previewOptions))}},A=()=>{g&&g.close()},b=(k,I)=>{const M=i.modelValue.slice(0);M.splice(I,1),e("update:modelValue",M),e("delete",k,a(I))},S=(k,I)=>{const M=["imageFit","deletable","previewSize","beforeDelete"],T=extend$2(pick$1(i,M),pick$1(k,M,!0));return createVNode(stdin_default$1,mergeProps({item:k,index:I,onClick:()=>e("clickPreview",k,a(I)),onDelete:()=>b(k,I),onPreview:()=>y(k)},pick$1(i,["name","lazyLoad"]),T),pick$1(r,["preview-cover","preview-delete"]))},E=()=>{if(i.previewImage)return i.modelValue.map(S)},x=k=>e("clickUpload",k),C=()=>{if(i.modelValue.length>=+i.maxCount)return;const k=i.readonly?null:createVNode("input",{ref:s,type:"file",class:bem("input"),accept:i.accept,capture:i.capture,multiple:i.multiple,disabled:i.disabled,onChange:m},null);return r.default?createVNode("div",{class:bem("input-wrapper"),onClick:x},[r.default(),k]):withDirectives(createVNode("div",{class:bem("upload",{readonly:i.readonly}),style:getSizeStyle(i.previewSize),onClick:x},[createVNode(Icon$1,{name:i.uploadIcon,class:bem("upload-icon")},null),i.uploadText&&createVNode("span",{class:bem("upload-text")},[i.uploadText]),k]),[[vShow,i.showUpload]])},P=()=>{s.value&&!i.disabled&&s.value.click()};return onBeforeUnmount(()=>{o.forEach(k=>URL.revokeObjectURL(k))}),useExpose({chooseFile:P,closeImagePreview:A}),useCustomFieldValue(()=>i.modelValue),()=>createVNode("div",{class:bem()},[createVNode("div",{class:bem("wrapper",{disabled:i.disabled})},[E(),C()])])}});const Uploader=withInstall(stdin_default),storeData=reactive({status:"init",user:{},platformType:"STUDENT",platformApi:"/api-student",proxy:"",isApp:!1}),setStoreData=i=>{Object.assign(storeData,i)},setUserInfo=i=>{storeData.status="login",storeData.user=i||{}};var commonjsGlobal=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function getDefaultExportFromCjs(i){return i&&i.__esModule&&Object.prototype.hasOwnProperty.call(i,"default")?i.default:i}function getAugmentedNamespace(i){if(i.__esModule)return i;var e=i.default;if(typeof e=="function"){var r=function s(){if(this instanceof s){var o=[null];o.push.apply(o,arguments);var a=Function.bind.apply(e,o);return new a}return e.apply(this,arguments)};r.prototype=e.prototype}else r={};return Object.defineProperty(r,"__esModule",{value:!0}),Object.keys(i).forEach(function(s){var o=Object.getOwnPropertyDescriptor(i,s);Object.defineProperty(r,s,o.get?o:{enumerable:!0,get:function(){return i[s]}})}),r}var assign$1=make_assign(),create$1=make_create(),trim$1=make_trim(),Global$5=typeof window<"u"?window:commonjsGlobal,util$i={assign:assign$1,create:create$1,trim:trim$1,bind:bind$3,slice:slice$3,each:each$8,map,pluck:pluck$1,isList:isList$1,isFunction:isFunction$4,isObject:isObject$3,Global:Global$5};function make_assign(){return Object.assign?Object.assign:function(e,r,s,o){for(var a=1;a"u"?null:console;if(i){var e=i.warn?i.warn:i.log;e.apply(i,arguments)}}function createStore(i,e,r){r||(r=""),i&&!isList(i)&&(i=[i]),e&&!isList(e)&&(e=[e]);var s=r?"__storejs_"+r+"_":"",o=r?new RegExp("^"+s):null,a=/^[a-zA-Z0-9_\-]*$/;if(!a.test(r))throw new Error("store.js namespaces can only have alphanumerics + underscores and dashes");var l={_namespacePrefix:s,_namespaceRegexp:o,_testStorage:function(u){try{var m="__storejs__test__";u.write(m,m);var g=u.read(m)===m;return u.remove(m),g}catch(d){return!1}},_assignPluginFnProp:function(u,m){var g=this[m];this[m]=function(){var y=slice$2(arguments,0),A=this;function b(){if(g)return each$7(arguments,function(E,x){y[x]=E}),g.apply(A,y)}var S=[b].concat(y);return u.apply(A,S)}},_serialize:function(u){return JSON.stringify(u)},_deserialize:function(u,m){if(!u)return m;var g="";try{g=JSON.parse(u)}catch(d){g=u}return g!==void 0?g:m},_addStorage:function(u){this.enabled||this._testStorage(u)&&(this.storage=u,this.enabled=!0)},_addPlugin:function(u){var m=this;if(isList(u)){each$7(u,function(y){m._addPlugin(y)});return}var g=pluck(this.plugins,function(y){return u===y});if(!g){if(this.plugins.push(u),!isFunction$3(u))throw new Error("Plugins must be function values that return objects");var d=u.call(this);if(!isObject$2(d))throw new Error("Plugins must return an object of function properties");each$7(d,function(y,A){if(!isFunction$3(y))throw new Error("Bad plugin property: "+A+" from plugin "+u.name+". Plugins should only return functions.");m._assignPluginFnProp(y,A)})}},addStorage:function(u){_warn("store.addStorage(storage) is deprecated. Use createStore([storages])"),this._addStorage(u)}},c=create(l,storeAPI,{plugins:[]});return c.raw={},each$7(c,function(u,m){isFunction$3(u)&&(c.raw[m]=bind$2(c,u))}),each$7(i,function(u){c._addStorage(u)}),each$7(e,function(u){c._addPlugin(u)}),c}var util$g=util$i,Global$4=util$g.Global,localStorage_1={name:"localStorage",read:read$5,write:write$5,each:each$6,remove:remove$6,clearAll:clearAll$5};function localStorage$1(){return Global$4.localStorage}function read$5(i){return localStorage$1().getItem(i)}function write$5(i,e){return localStorage$1().setItem(i,e)}function each$6(i){for(var e=localStorage$1().length-1;e>=0;e--){var r=localStorage$1().key(e);i(read$5(r),r)}}function remove$6(i){return localStorage$1().removeItem(i)}function clearAll$5(){return localStorage$1().clear()}var util$f=util$i,Global$3=util$f.Global,oldFFGlobalStorage={name:"oldFF-globalStorage",read:read$4,write:write$4,each:each$5,remove:remove$5,clearAll:clearAll$4},globalStorage=Global$3.globalStorage;function read$4(i){return globalStorage[i]}function write$4(i,e){globalStorage[i]=e}function each$5(i){for(var e=globalStorage.length-1;e>=0;e--){var r=globalStorage.key(e);i(globalStorage[r],r)}}function remove$5(i){return globalStorage.removeItem(i)}function clearAll$4(){each$5(function(i,e){delete globalStorage[i]})}var util$e=util$i,Global$2=util$e.Global,oldIEUserDataStorage={name:"oldIE-userDataStorage",write:write$3,read:read$3,each:each$4,remove:remove$4,clearAll:clearAll$3},storageName="storejs",doc$1=Global$2.document,_withStorageEl=_makeIEStorageElFunction(),disable$1=(Global$2.navigator?Global$2.navigator.userAgent:"").match(/ (MSIE 8|MSIE 9|MSIE 10)\./);function write$3(i,e){if(!disable$1){var r=fixKey(i);_withStorageEl(function(s){s.setAttribute(r,e),s.save(storageName)})}}function read$3(i){if(!disable$1){var e=fixKey(i),r=null;return _withStorageEl(function(s){r=s.getAttribute(e)}),r}}function each$4(i){_withStorageEl(function(e){for(var r=e.XMLDocument.documentElement.attributes,s=r.length-1;s>=0;s--){var o=r[s];i(e.getAttribute(o.name),o.name)}})}function remove$4(i){var e=fixKey(i);_withStorageEl(function(r){r.removeAttribute(e),r.save(storageName)})}function clearAll$3(){_withStorageEl(function(i){var e=i.XMLDocument.documentElement.attributes;i.load(storageName);for(var r=e.length-1;r>=0;r--)i.removeAttribute(e[r].name);i.save(storageName)})}var forbiddenCharsRegex=new RegExp("[!\"#$%&'()*+,/\\\\:;<=>?@[\\]^`{|}~]","g");function fixKey(i){return i.replace(/^\d/,"___$&").replace(forbiddenCharsRegex,"___")}function _makeIEStorageElFunction(){if(!doc$1||!doc$1.documentElement||!doc$1.documentElement.addBehavior)return null;var i="script",e,r,s;try{r=new ActiveXObject("htmlfile"),r.open(),r.write("<"+i+">document.w=window'),r.close(),e=r.w.frames[0].document,s=e.createElement("div")}catch(o){s=doc$1.createElement("div"),e=doc$1.body}return function(o){var a=[].slice.call(arguments,0);a.unshift(s),e.appendChild(s),s.addBehavior("#default#userData"),s.load(storageName),o.apply(this,a),e.removeChild(s)}}var util$d=util$i,Global$1=util$d.Global,trim=util$d.trim,cookieStorage={name:"cookieStorage",read:read$2,write:write$2,each:each$3,remove:remove$3,clearAll:clearAll$2},doc=Global$1.document;function read$2(i){if(!i||!_has(i))return null;var e="(?:^|.*;\\s*)"+escape(i).replace(/[\-\.\+\*]/g,"\\$&")+"\\s*\\=\\s*((?:[^;](?!;))*[^;]?).*";return unescape(doc.cookie.replace(new RegExp(e),"$1"))}function each$3(i){for(var e=doc.cookie.split(/; ?/g),r=e.length-1;r>=0;r--)if(trim(e[r])){var s=e[r].split("="),o=unescape(s[0]),a=unescape(s[1]);i(a,o)}}function write$2(i,e){i&&(doc.cookie=escape(i)+"="+escape(e)+"; expires=Tue, 19 Jan 2038 03:14:07 GMT; path=/")}function remove$3(i){!i||!_has(i)||(doc.cookie=escape(i)+"=; expires=Thu, 01 Jan 1970 00:00:00 GMT; path=/")}function clearAll$2(){each$3(function(i,e){remove$3(e)})}function _has(i){return new RegExp("(?:^|;\\s*)"+escape(i).replace(/[\-\.\+\*]/g,"\\$&")+"\\s*\\=").test(doc.cookie)}var util$c=util$i,Global=util$c.Global,sessionStorage_1={name:"sessionStorage",read:read$1,write:write$1,each:each$2,remove:remove$2,clearAll:clearAll$1};function sessionStorage$1(){return Global.sessionStorage}function read$1(i){return sessionStorage$1().getItem(i)}function write$1(i,e){return sessionStorage$1().setItem(i,e)}function each$2(i){for(var e=sessionStorage$1().length-1;e>=0;e--){var r=sessionStorage$1().key(e);i(read$1(r),r)}}function remove$2(i){return sessionStorage$1().removeItem(i)}function clearAll$1(){return sessionStorage$1().clear()}var memoryStorage_1={name:"memoryStorage",read,write,each:each$1,remove:remove$1,clearAll},memoryStorage={};function read(i){return memoryStorage[i]}function write(i,e){memoryStorage[i]=e}function each$1(i){for(var e in memoryStorage)memoryStorage.hasOwnProperty(e)&&i(memoryStorage[e],e)}function remove$1(i){delete memoryStorage[i]}function clearAll(i){memoryStorage={}}var all=[localStorage_1,oldFFGlobalStorage,oldIEUserDataStorage,cookieStorage,sessionStorage_1,memoryStorage_1],json2$1={},hasRequiredJson2;function requireJson2(){return hasRequiredJson2||(hasRequiredJson2=1,typeof JSON!="object"&&(JSON={}),function(){var rx_one=/^[\],:{}\s]*$/,rx_two=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,rx_three=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,rx_four=/(?:^|:|,)(?:\s*\[)+/g,rx_escapable=/[\\"\u0000-\u001f\u007f-\u009f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,rx_dangerous=/[\u0000\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g;function f(i){return i<10?"0"+i:i}function this_value(){return this.valueOf()}typeof Date.prototype.toJSON!="function"&&(Date.prototype.toJSON=function(){return isFinite(this.valueOf())?this.getUTCFullYear()+"-"+f(this.getUTCMonth()+1)+"-"+f(this.getUTCDate())+"T"+f(this.getUTCHours())+":"+f(this.getUTCMinutes())+":"+f(this.getUTCSeconds())+"Z":null},Boolean.prototype.toJSON=this_value,Number.prototype.toJSON=this_value,String.prototype.toJSON=this_value);var gap,indent,meta,rep;function quote(i){return rx_escapable.lastIndex=0,rx_escapable.test(i)?'"'+i.replace(rx_escapable,function(e){var r=meta[e];return typeof r=="string"?r:"\\u"+("0000"+e.charCodeAt(0).toString(16)).slice(-4)})+'"':'"'+i+'"'}function str(i,e){var r,s,o,a,l=gap,c,u=e[i];switch(u&&typeof u=="object"&&typeof u.toJSON=="function"&&(u=u.toJSON(i)),typeof rep=="function"&&(u=rep.call(e,i,u)),typeof u){case"string":return quote(u);case"number":return isFinite(u)?String(u):"null";case"boolean":case"null":return String(u);case"object":if(!u)return"null";if(gap+=indent,c=[],Object.prototype.toString.apply(u)==="[object Array]"){for(a=u.length,r=0;ri==null,strictUriEncode=i=>encodeURIComponent(i).replace(/[!'()*]/g,e=>`%${e.charCodeAt(0).toString(16).toUpperCase()}`),encodeFragmentIdentifier=Symbol("encodeFragmentIdentifier");function encoderForArrayFormat(i){switch(i.arrayFormat){case"index":return e=>(r,s)=>{const o=r.length;return s===void 0||i.skipNull&&s===null||i.skipEmptyString&&s===""?r:s===null?[...r,[encode$1(e,i),"[",o,"]"].join("")]:[...r,[encode$1(e,i),"[",encode$1(o,i),"]=",encode$1(s,i)].join("")]};case"bracket":return e=>(r,s)=>s===void 0||i.skipNull&&s===null||i.skipEmptyString&&s===""?r:s===null?[...r,[encode$1(e,i),"[]"].join("")]:[...r,[encode$1(e,i),"[]=",encode$1(s,i)].join("")];case"colon-list-separator":return e=>(r,s)=>s===void 0||i.skipNull&&s===null||i.skipEmptyString&&s===""?r:s===null?[...r,[encode$1(e,i),":list="].join("")]:[...r,[encode$1(e,i),":list=",encode$1(s,i)].join("")];case"comma":case"separator":case"bracket-separator":{const e=i.arrayFormat==="bracket-separator"?"[]=":"=";return r=>(s,o)=>o===void 0||i.skipNull&&o===null||i.skipEmptyString&&o===""?s:(o=o===null?"":o,s.length===0?[[encode$1(r,i),e,encode$1(o,i)].join("")]:[[s,encode$1(o,i)].join(i.arrayFormatSeparator)])}default:return e=>(r,s)=>s===void 0||i.skipNull&&s===null||i.skipEmptyString&&s===""?r:s===null?[...r,encode$1(e,i)]:[...r,[encode$1(e,i),"=",encode$1(s,i)].join("")]}}function parserForArrayFormat(i){let e;switch(i.arrayFormat){case"index":return(r,s,o)=>{if(e=/\[(\d*)]$/.exec(r),r=r.replace(/\[\d*]$/,""),!e){o[r]=s;return}o[r]===void 0&&(o[r]={}),o[r][e[1]]=s};case"bracket":return(r,s,o)=>{if(e=/(\[])$/.exec(r),r=r.replace(/\[]$/,""),!e){o[r]=s;return}if(o[r]===void 0){o[r]=[s];return}o[r]=[...o[r],s]};case"colon-list-separator":return(r,s,o)=>{if(e=/(:list)$/.exec(r),r=r.replace(/:list$/,""),!e){o[r]=s;return}if(o[r]===void 0){o[r]=[s];return}o[r]=[...o[r],s]};case"comma":case"separator":return(r,s,o)=>{const a=typeof s=="string"&&s.includes(i.arrayFormatSeparator),l=typeof s=="string"&&!a&&decode$3(s,i).includes(i.arrayFormatSeparator);s=l?decode$3(s,i):s;const c=a||l?s.split(i.arrayFormatSeparator).map(u=>decode$3(u,i)):s===null?s:decode$3(s,i);o[r]=c};case"bracket-separator":return(r,s,o)=>{const a=/(\[])$/.test(r);if(r=r.replace(/\[]$/,""),!a){o[r]=s&&decode$3(s,i);return}const l=s===null?[]:s.split(i.arrayFormatSeparator).map(c=>decode$3(c,i));if(o[r]===void 0){o[r]=l;return}o[r]=[...o[r],...l]};default:return(r,s,o)=>{if(o[r]===void 0){o[r]=s;return}o[r]=[...[o[r]].flat(),s]}}}function validateArrayFormatSeparator(i){if(typeof i!="string"||i.length!==1)throw new TypeError("arrayFormatSeparator must be single character string")}function encode$1(i,e){return e.encode?e.strict?strictUriEncode(i):encodeURIComponent(i):i}function decode$3(i,e){return e.decode?decodeUriComponent(i):i}function keysSorter(i){return Array.isArray(i)?i.sort():typeof i=="object"?keysSorter(Object.keys(i)).sort((e,r)=>Number(e)-Number(r)).map(e=>i[e]):i}function removeHash(i){const e=i.indexOf("#");return e!==-1&&(i=i.slice(0,e)),i}function getHash(i){let e="";const r=i.indexOf("#");return r!==-1&&(e=i.slice(r)),e}function parseValue(i,e){return e.parseNumbers&&!Number.isNaN(Number(i))&&typeof i=="string"&&i.trim()!==""?i=Number(i):e.parseBooleans&&i!==null&&(i.toLowerCase()==="true"||i.toLowerCase()==="false")&&(i=i.toLowerCase()==="true"),i}function extract(i){i=removeHash(i);const e=i.indexOf("?");return e===-1?"":i.slice(e+1)}function parse$5(i,e){e={decode:!0,sort:!0,arrayFormat:"none",arrayFormatSeparator:",",parseNumbers:!1,parseBooleans:!1,...e},validateArrayFormatSeparator(e.arrayFormatSeparator);const r=parserForArrayFormat(e),s=Object.create(null);if(typeof i!="string"||(i=i.trim().replace(/^[?#&]/,""),!i))return s;for(const o of i.split("&")){if(o==="")continue;const a=e.decode?o.replace(/\+/g," "):o;let[l,c]=splitOnFirst(a,"=");l===void 0&&(l=a),c=c===void 0?null:["comma","separator","bracket-separator"].includes(e.arrayFormat)?c:decode$3(c,e),r(decode$3(l,e),c,s)}for(const[o,a]of Object.entries(s))if(typeof a=="object"&&a!==null)for(const[l,c]of Object.entries(a))a[l]=parseValue(c,e);else s[o]=parseValue(a,e);return e.sort===!1?s:(e.sort===!0?Object.keys(s).sort():Object.keys(s).sort(e.sort)).reduce((o,a)=>{const l=s[a];return l&&typeof l=="object"&&!Array.isArray(l)?o[a]=keysSorter(l):o[a]=l,o},Object.create(null))}function stringify$2(i,e){if(!i)return"";e={encode:!0,strict:!0,arrayFormat:"none",arrayFormatSeparator:",",...e},validateArrayFormatSeparator(e.arrayFormatSeparator);const r=l=>e.skipNull&&isNullOrUndefined(i[l])||e.skipEmptyString&&i[l]==="",s=encoderForArrayFormat(e),o={};for(const[l,c]of Object.entries(i))r(l)||(o[l]=c);const a=Object.keys(o);return e.sort!==!1&&a.sort(e.sort),a.map(l=>{const c=i[l];return c===void 0?"":c===null?encode$1(l,e):Array.isArray(c)?c.length===0&&e.arrayFormat==="bracket-separator"?encode$1(l,e)+"[]":c.reduce(s(l),[]).join("&"):encode$1(l,e)+"="+encode$1(c,e)}).filter(l=>l.length>0).join("&")}function parseUrl(i,e){var o,a;e={decode:!0,...e};let[r,s]=splitOnFirst(i,"#");return r===void 0&&(r=i),{url:(a=(o=r==null?void 0:r.split("?"))==null?void 0:o[0])!=null?a:"",query:parse$5(extract(i),e),...e&&e.parseFragmentIdentifier&&s?{fragmentIdentifier:decode$3(s,e)}:{}}}function stringifyUrl(i,e){e={encode:!0,strict:!0,[encodeFragmentIdentifier]:!0,...e};const r=removeHash(i.url).split("?")[0]||"",s=extract(i.url),o={...parse$5(s,{sort:!1}),...i.query};let a=stringify$2(o,e);a&&(a=`?${a}`);let l=getHash(i.url);if(i.fragmentIdentifier){const c=new URL(r);c.hash=i.fragmentIdentifier,l=e[encodeFragmentIdentifier]?c.hash:`#${i.fragmentIdentifier}`}return`${r}${a}${l}`}function pick(i,e,r){r={parseFragmentIdentifier:!0,[encodeFragmentIdentifier]:!1,...r};const{url:s,query:o,fragmentIdentifier:a}=parseUrl(i,r);return stringifyUrl({url:s,query:includeKeys(o,e),fragmentIdentifier:a},r)}function exclude(i,e,r){const s=Array.isArray(e)?o=>!e.includes(o):(o,a)=>!e(o,a);return pick(i,s,r)}const queryString=Object.freeze(Object.defineProperty({__proto__:null,exclude,extract,parse:parse$5,parseUrl,pick,stringify:stringify$2,stringifyUrl},Symbol.toStringTag,{value:"Module"})),getQuery=()=>{let i={};try{i={...queryString.parse(location.search),...queryString.parse(location.hash.split("?")[1])}}catch(e){}return{...i}},browser=()=>{const i=navigator.userAgent;return{trident:i.indexOf("Trident")>-1,presto:i.indexOf("Presto")>-1,webKit:i.indexOf("AppleWebKit")>-1,gecko:i.indexOf("Gecko")>-1&&i.indexOf("KHTML")==-1,mobile:!!i.match(/AppleWebKit.*Mobile.*/),ios:!!i.match(/Mac OS X/)||/(iPhone|iPad|iPod|iOS)/i.test(i),android:i.indexOf("Android")>-1||i.indexOf("Adr")>-1,iPhone:i.indexOf("ORCHESTRAAPPI")>-1,isApp:i.includes("DAYAAPPA")||i.includes("DAYAAPPI")||i.includes("COLEXIUAPPA")||i.includes("COLEXIUAPPI")||i.includes("ORCHESTRAAPPI")||i.includes("ORCHESTRAAPPA"),isTeacher:i.indexOf("ORCHESTRATEACHER")>-1||i.includes("COLEXIUTEACHER"),isStudent:i.indexOf("ORCHESTRASTUDENT")>-1||i.includes("COLEXIUSTUDENT"),isSchool:i.indexOf("ORCHESTRASCHOOL")>-1,iPad:i.indexOf("iPad")>-1,webApp:i.indexOf("Safari")==-1,weixin:i.indexOf("MicroMessenger")>-1,alipay:i.indexOf("AlipayClient")>-1,huawei:!!i.match(/huawei/i)||!!i.match(/honor/i),xiaomi:!!i.match(/mi\s/i)||!!i.match(/redmi/i)||!!i.match(/mix/i)}},getRandomKey=()=>""+Date.now()+Math.floor(Math.random()*1e6),AuthorizationKey="AUTHORIZATION",setToken=i=>{sessionStorage.setItem(AuthorizationKey,i)},getToken=()=>sessionStorage.getItem(AuthorizationKey)||"",setGlobalData=(i,e)=>{if(!i||!e)return;const r=window.GYM||{};r[i]=e,window.GYM=r},BEHAVIORIDKEY="BEHAVIORID",setBehaviorId=i=>{localStorage.setItem(BEHAVIORIDKEY,i)},getBehaviorId=()=>localStorage.getItem(BEHAVIORIDKEY),campIdKey="CAMPID",setCampId=i=>{sessionStorage.setItem(campIdKey,i)},getCampId=()=>sessionStorage.getItem(campIdKey)||"",getSecondRPM=(i,e)=>{if(isNaN(i))return"00:00";let r=Math.floor(i/60/60%24),s=Math.floor(i/60%60),o=Math.floor(i%60);return e==="cn"?`${r>0?r.toString().padStart(2,"0")+"时":""}${s.toString().padStart(2,"0")}分${o.toString().padStart(2,"0")}秒`:`${r>0?r.toString().padStart(2,"0")+":":""}${s.toString().padStart(2,"0")}:${o.toString().padStart(2,"0")}`},SPEEDKEY="speeds",setStorageSpeed=(i,e)=>{const r=store_legacy.get(SPEEDKEY)||{};r[i]=e,store_legacy.set(SPEEDKEY,r)},getStorageSpeed=i=>(store_legacy.get(SPEEDKEY)||{})[i]||0,matchProductApiUrl=()=>{const i=getQuery(),e={cbs:{dev:"https://dev.resource.colexiu.com",test:"https://test.resource.colexiu.com",online:"https://mec.colexiu.com"},gym:{dev:"https://dev.dayaedu.com",test:"https://test.dayaedu.com",online:"https://online.dayaedu.com"},colexiu:{dev:"https://dev.colexiu.com/",test:"https://test.colexiu.com",online:"https://online.colexiu.com"},orchestra:{dev:"https://dev.lexiaoya.cn",test:"https://test.lexiaoya.cn",online:"https://online.lexiaoya.cn"},instrument:{dev:"https://dev.kt.colexiu.com",test:"https://test.kt.colexiu.com",test2:"https://test.lexiaoya.cn",online:"https://kt.colexiu.com"}};let r=location.origin.includes("//dev")?"dev":location.origin.includes("//test")?"test":location.origin.includes("//online")||location.origin.includes("//kt")||location.origin.includes("//mec")?"online":"dev";if(i.isCbs)return e.cbs[r]+"/cbs-app";{const s=location.pathname.includes("gym")?"gym":location.pathname.includes("colexiu")?"colexiu":location.pathname.includes("orchestra")?"orchestra":"instrument";return s==="instrument"&&r==="test"&&(r=location.origin.includes("//test.kt")?"test":"test2"),e[s][r]+"/edu-app"}},debounce=(i,e=0)=>{let r;return function(...s){clearTimeout(r),r=setTimeout(()=>i.apply(this,s),e)}},originalPostMessage=window.postMessage;window.postMessage=i=>{originalPostMessage(i,"*")};const loop=()=>{},calls={};var _i,Ui,Hi,zi,Ki,Qi;const instance=window.DAYA||((Ui=(_i=window.webkit)==null?void 0:_i.messageHandlers)==null?void 0:Ui.DAYA)||window.COLEXIU||((zi=(Hi=window.webkit)==null?void 0:Hi.messageHandlers)==null?void 0:zi.COLEXIU)||window.ORCHESTRA||((Qi=(Ki=window.webkit)==null?void 0:Ki.messageHandlers)==null?void 0:Qi.ORCHESTRA);instance&&window.addEventListener("message",i=>{var e,r;try{const s=i.data?typeof i.data=="object"?i.data:JSON.parse(i.data):{},o=((e=s.content)==null?void 0:e.uuid)||s.uuid;try{s.content&&(s.content=JSON.parse(s.content))}catch(c){}if(!o){const c=Object.keys(calls).filter(u=>u.indexOf(s.api)===0);for(const u of c){const m=calls[u]||loop;typeof m=="function"&&m(s),Array.isArray(m)&&m.forEach(g=>{typeof g=="function"&&g(s)})}return}const a=((r=s.content)==null?void 0:r.uuid)||s.uuid||s.api+s.uuid,l=calls[a]||loop;typeof l=="function"&&l(s)}catch(s){console.error("通信消息解析错误",s)}});const postMessage$1=(i,e)=>{if(instance){const r=getRandomKey();calls[r]=e||loop,i.content=i.content?{...i.content,uuid:r}:{uuid:r},instance.postMessage(JSON.stringify(i)),console.log("h5_请求_api:",i)}},listenerMessage=(i,e)=>{const r=i;calls[r]||(calls[r]=[]),calls[r].push(e||loop)},removeListenerMessage=(i,e)=>{const r=i;if(Array.isArray(calls[r])){const s=calls[r].indexOf(e);calls[r].splice(s,1)}},promisefiyPostMessage=i=>new Promise(e=>{postMessage$1(i,r=>e(r))}),api_getToken=()=>storeData.isApp?promisefiyPostMessage({api:"getToken"}):Promise.resolve({}),getEarphone=()=>storeData.isApp?promisefiyPostMessage({api:"isWiredHeadsetOn"}):Promise.resolve({}),isSpecialShapedScreen=()=>storeData.isApp?promisefiyPostMessage({api:"isSpecialShapedScreen"}):Promise.resolve({}),sendResult=i=>{listenerMessage("sendResult",i)},removeResult=i=>{removeListenerMessage("sendResult",i)},endSoundCheck=()=>{postMessage$1({api:"endSoundCheck"})},startEvaluating=i=>storeData.isApp?promisefiyPostMessage({api:"startEvaluating",content:i}):Promise.resolve({}),endEvaluating=i=>storeData.isApp?promisefiyPostMessage({api:"endEvaluating",content:i}):Promise.resolve({}),cancelEvaluating=()=>{postMessage$1({api:"cancelEvaluating"})},api_startRecordingCb=(i,e)=>{postMessage$1({api:"startRecording",content:i},e)},api_proxyServiceMessage=i=>storeData.isApp?promisefiyPostMessage({api:"proxyServiceMessage",content:i}):Promise.resolve({}),api_recordStartTime=i=>{listenerMessage("recordStartTime",i)},api_remove_recordStartTime=i=>{removeListenerMessage("recordStartTime",i)},api_videoUpdate=i=>{postMessage$1({api:"videoUpdate"},i)},api_shareAchievements=i=>storeData.isApp?promisefiyPostMessage({api:"shareAchievements",content:i}):Promise.resolve({}),api_openWebView=i=>storeData.isApp?promisefiyPostMessage({api:"openWebView",content:i}):Promise.resolve({}),api_openCamera=()=>storeData.isApp?promisefiyPostMessage({api:"openCamera"}):Promise.resolve({}),api_closeCamera=()=>storeData.isApp?promisefiyPostMessage({api:"closeCamera"}):Promise.resolve({}),api_setStatusBarVisibility=()=>{postMessage$1({api:"setStatusBarVisibility",content:{isVisibility:0}})},api_cloudToggleFollow=i=>storeData.isApp?promisefiyPostMessage({api:"cloudToggleFollow",content:{state:i}}):Promise.resolve({}),api_cloudFollowTime=(i,e=!0)=>{e?listenerMessage("cloudFollowTime",i):removeListenerMessage("cloudFollowTime",i)},api_goback=()=>{postMessage$1({api:"goBack"})},api_back=()=>{postMessage$1({api:"back"})},api_cloudLoading=(i=!1)=>{postMessage$1({api:"cloudLoading",content:{show:i,type:"fullscreen"}})},api_cloudDestroy=()=>{postMessage$1({api:"cloudDestroy"})},api_setEventTracking=()=>{postMessage$1({api:"setEventTracking",content:{type:"klx_xiaokuAI"}})},api_savePicture=i=>storeData.isApp?promisefiyPostMessage({api:"savePicture",content:i}):Promise.resolve({}),api_setCache=i=>{postMessage$1({api:"setCache",content:i})},api_suspendPlay=i=>{listenerMessage("suspendPlay",i)},api_startCapture=()=>{postMessage$1({api:"startCapture"})},api_endCapture=()=>{postMessage$1({api:"endCapture"})},api_getDeviceDelay=()=>storeData.isApp?promisefiyPostMessage({api:"getDeviceDelay"}):Promise.resolve({}),api_toggleTune=(i,e)=>{if(!storeData.isApp)return Promise.resolve({});if(i==="start")return promisefiyPostMessage({api:"startTune",content:{count:e+""}});if(i==="stop")return promisefiyPostMessage({api:"endTune"});if(i==="finishTune")return promisefiyPostMessage({api:"finishTune"})},api_createMusicPlayer=i=>storeData.isApp?promisefiyPostMessage({api:"createMusicPlayer",content:i}):Promise.resolve({}),api_keepScreenLongLight=()=>{postMessage$1({api:"keepScreenLongLight",content:{isOpenLight:!0}})},api_setRequestedOrientation=i=>{postMessage$1({api:"setRequestedOrientation",content:{orientation:i}})},api_playProgress=i=>{listenerMessage("playProgress",i)},api_openAdjustRecording=i=>{postMessage$1({api:"openAdjustRecording",content:i})},hideComplexButton=(i,e)=>{e?listenerMessage("hideComplexButton",i):removeListenerMessage("hideComplexButton",i)},addCheckPlayEnd=i=>{listenerMessage("checkPlayEnd",i)},removeCheckPlayEnd=i=>{removeListenerMessage("checkPlayEnd",i)},api_checkSocketStatus=()=>promisefiyPostMessage({api:"checkSocketStatus"}),addAccompanyError=i=>{listenerMessage("accompanyError",i)},removeAccompanyError=i=>{removeListenerMessage("accompanyError",i)},addSocketStatus=i=>{listenerMessage("socketConnectSuccessReport",i)},removeSocketStatus=i=>{removeListenerMessage("socketConnectSuccessReport",i)},api_disconnectSocket=()=>promisefiyPostMessage({api:"disconnectSocket"}),api_cloudDetail=(i,e)=>{postMessage$1({api:"cloudDetail",content:i},e)},api_cloudGetMediaStatus=()=>promisefiyPostMessage({api:"cloudGetMediaStatus"}),api_cloudPlay=i=>{promisefiyPostMessage({api:"cloudPlay",content:i})},api_cloudSuspend=i=>{promisefiyPostMessage({api:"cloudSuspend",content:i})},api_cloudSetCurrentTime=i=>{promisefiyPostMessage({api:"cloudSetCurrentTime",content:i})},api_cloudChangeSpeed=i=>{promisefiyPostMessage({api:"cloudChangeSpeed",content:i})},api_cloudVolume=i=>{promisefiyPostMessage({api:"cloudVolume",content:i})},api_cloudTimeUpdae=i=>{listenerMessage("cloudTimeUpdae",i)},api_remove_cloudTimeUpdae=i=>{removeListenerMessage("cloudTimeUpdae",i)},api_cloudplayed=i=>{listenerMessage("cloudplayed",i)},api_remove_cloudplayed=i=>{removeListenerMessage("cloudplayed",i)},api_midiMicDelay=i=>{postMessage$1({api:"proxyServiceMessage",content:i})},TheError=defineComponent({name:"The-error",setup(i,e){return()=>createVNode("div",null,[createVNode(NavBar,{leftArrow:!0,onClickLeft:()=>{api_back()}},null),createVNode(Empty,{image:"error",description:"网络开小差,请稍后重试"},{default:()=>[createVNode(Button$1,{type:"primary",size:"small",onClick:()=>history.go(0)},{default:()=>[createTextVNode("重新加载")]})]})])}});var shams=function i(){if(typeof Symbol!="function"||typeof Object.getOwnPropertySymbols!="function")return!1;if(typeof Symbol.iterator=="symbol")return!0;var e={},r=Symbol("test"),s=Object(r);if(typeof r=="string"||Object.prototype.toString.call(r)!=="[object Symbol]"||Object.prototype.toString.call(s)!=="[object Symbol]")return!1;var o=42;e[r]=o;for(r in e)return!1;if(typeof Object.keys=="function"&&Object.keys(e).length!==0||typeof Object.getOwnPropertyNames=="function"&&Object.getOwnPropertyNames(e).length!==0)return!1;var a=Object.getOwnPropertySymbols(e);if(a.length!==1||a[0]!==r||!Object.prototype.propertyIsEnumerable.call(e,r))return!1;if(typeof Object.getOwnPropertyDescriptor=="function"){var l=Object.getOwnPropertyDescriptor(e,r);if(l.value!==o||l.enumerable!==!0)return!1}return!0},origSymbol=typeof Symbol<"u"&&Symbol,hasSymbolSham=shams,hasSymbols$1=function i(){return typeof origSymbol!="function"||typeof Symbol!="function"||typeof origSymbol("foo")!="symbol"||typeof Symbol("bar")!="symbol"?!1:hasSymbolSham()},ERROR_MESSAGE="Function.prototype.bind called on incompatible ",slice$1=Array.prototype.slice,toStr$1=Object.prototype.toString,funcType="[object Function]",implementation$1=function i(e){var r=this;if(typeof r!="function"||toStr$1.call(r)!==funcType)throw new TypeError(ERROR_MESSAGE+r);for(var s=slice$1.call(arguments,1),o,a=function(){if(this instanceof o){var g=r.apply(this,s.concat(slice$1.call(arguments)));return Object(g)===g?g:this}else return r.apply(e,s.concat(slice$1.call(arguments)))},l=Math.max(0,r.length-s.length),c=[],u=0;u"u"?undefined$1:getProto(Uint8Array),INTRINSICS={"%AggregateError%":typeof AggregateError>"u"?undefined$1:AggregateError,"%Array%":Array,"%ArrayBuffer%":typeof ArrayBuffer>"u"?undefined$1:ArrayBuffer,"%ArrayIteratorPrototype%":hasSymbols?getProto([][Symbol.iterator]()):undefined$1,"%AsyncFromSyncIteratorPrototype%":undefined$1,"%AsyncFunction%":needsEval,"%AsyncGenerator%":needsEval,"%AsyncGeneratorFunction%":needsEval,"%AsyncIteratorPrototype%":needsEval,"%Atomics%":typeof Atomics>"u"?undefined$1:Atomics,"%BigInt%":typeof BigInt>"u"?undefined$1:BigInt,"%BigInt64Array%":typeof BigInt64Array>"u"?undefined$1:BigInt64Array,"%BigUint64Array%":typeof BigUint64Array>"u"?undefined$1:BigUint64Array,"%Boolean%":Boolean,"%DataView%":typeof DataView>"u"?undefined$1:DataView,"%Date%":Date,"%decodeURI%":decodeURI,"%decodeURIComponent%":decodeURIComponent,"%encodeURI%":encodeURI,"%encodeURIComponent%":encodeURIComponent,"%Error%":Error,"%eval%":eval,"%EvalError%":EvalError,"%Float32Array%":typeof Float32Array>"u"?undefined$1:Float32Array,"%Float64Array%":typeof Float64Array>"u"?undefined$1:Float64Array,"%FinalizationRegistry%":typeof FinalizationRegistry>"u"?undefined$1:FinalizationRegistry,"%Function%":$Function,"%GeneratorFunction%":needsEval,"%Int8Array%":typeof Int8Array>"u"?undefined$1:Int8Array,"%Int16Array%":typeof Int16Array>"u"?undefined$1:Int16Array,"%Int32Array%":typeof Int32Array>"u"?undefined$1:Int32Array,"%isFinite%":isFinite,"%isNaN%":isNaN,"%IteratorPrototype%":hasSymbols?getProto(getProto([][Symbol.iterator]())):undefined$1,"%JSON%":typeof JSON=="object"?JSON:undefined$1,"%Map%":typeof Map>"u"?undefined$1:Map,"%MapIteratorPrototype%":typeof Map>"u"||!hasSymbols?undefined$1:getProto(new Map()[Symbol.iterator]()),"%Math%":Math,"%Number%":Number,"%Object%":Object,"%parseFloat%":parseFloat,"%parseInt%":parseInt,"%Promise%":typeof Promise>"u"?undefined$1:Promise,"%Proxy%":typeof Proxy>"u"?undefined$1:Proxy,"%RangeError%":RangeError,"%ReferenceError%":ReferenceError,"%Reflect%":typeof Reflect>"u"?undefined$1:Reflect,"%RegExp%":RegExp,"%Set%":typeof Set>"u"?undefined$1:Set,"%SetIteratorPrototype%":typeof Set>"u"||!hasSymbols?undefined$1:getProto(new Set()[Symbol.iterator]()),"%SharedArrayBuffer%":typeof SharedArrayBuffer>"u"?undefined$1:SharedArrayBuffer,"%String%":String,"%StringIteratorPrototype%":hasSymbols?getProto(""[Symbol.iterator]()):undefined$1,"%Symbol%":hasSymbols?Symbol:undefined$1,"%SyntaxError%":$SyntaxError,"%ThrowTypeError%":ThrowTypeError,"%TypedArray%":TypedArray,"%TypeError%":$TypeError$1,"%Uint8Array%":typeof Uint8Array>"u"?undefined$1:Uint8Array,"%Uint8ClampedArray%":typeof Uint8ClampedArray>"u"?undefined$1:Uint8ClampedArray,"%Uint16Array%":typeof Uint16Array>"u"?undefined$1:Uint16Array,"%Uint32Array%":typeof Uint32Array>"u"?undefined$1:Uint32Array,"%URIError%":URIError,"%WeakMap%":typeof WeakMap>"u"?undefined$1:WeakMap,"%WeakRef%":typeof WeakRef>"u"?undefined$1:WeakRef,"%WeakSet%":typeof WeakSet>"u"?undefined$1:WeakSet};try{null.error}catch(i){var errorProto=getProto(getProto(i));INTRINSICS["%Error.prototype%"]=errorProto}var doEval=function i(e){var r;if(e==="%AsyncFunction%")r=getEvalledConstructor("async function () {}");else if(e==="%GeneratorFunction%")r=getEvalledConstructor("function* () {}");else if(e==="%AsyncGeneratorFunction%")r=getEvalledConstructor("async function* () {}");else if(e==="%AsyncGenerator%"){var s=i("%AsyncGeneratorFunction%");s&&(r=s.prototype)}else if(e==="%AsyncIteratorPrototype%"){var o=i("%AsyncGenerator%");o&&(r=getProto(o.prototype))}return INTRINSICS[e]=r,r},LEGACY_ALIASES={"%ArrayBufferPrototype%":["ArrayBuffer","prototype"],"%ArrayPrototype%":["Array","prototype"],"%ArrayProto_entries%":["Array","prototype","entries"],"%ArrayProto_forEach%":["Array","prototype","forEach"],"%ArrayProto_keys%":["Array","prototype","keys"],"%ArrayProto_values%":["Array","prototype","values"],"%AsyncFunctionPrototype%":["AsyncFunction","prototype"],"%AsyncGenerator%":["AsyncGeneratorFunction","prototype"],"%AsyncGeneratorPrototype%":["AsyncGeneratorFunction","prototype","prototype"],"%BooleanPrototype%":["Boolean","prototype"],"%DataViewPrototype%":["DataView","prototype"],"%DatePrototype%":["Date","prototype"],"%ErrorPrototype%":["Error","prototype"],"%EvalErrorPrototype%":["EvalError","prototype"],"%Float32ArrayPrototype%":["Float32Array","prototype"],"%Float64ArrayPrototype%":["Float64Array","prototype"],"%FunctionPrototype%":["Function","prototype"],"%Generator%":["GeneratorFunction","prototype"],"%GeneratorPrototype%":["GeneratorFunction","prototype","prototype"],"%Int8ArrayPrototype%":["Int8Array","prototype"],"%Int16ArrayPrototype%":["Int16Array","prototype"],"%Int32ArrayPrototype%":["Int32Array","prototype"],"%JSONParse%":["JSON","parse"],"%JSONStringify%":["JSON","stringify"],"%MapPrototype%":["Map","prototype"],"%NumberPrototype%":["Number","prototype"],"%ObjectPrototype%":["Object","prototype"],"%ObjProto_toString%":["Object","prototype","toString"],"%ObjProto_valueOf%":["Object","prototype","valueOf"],"%PromisePrototype%":["Promise","prototype"],"%PromiseProto_then%":["Promise","prototype","then"],"%Promise_all%":["Promise","all"],"%Promise_reject%":["Promise","reject"],"%Promise_resolve%":["Promise","resolve"],"%RangeErrorPrototype%":["RangeError","prototype"],"%ReferenceErrorPrototype%":["ReferenceError","prototype"],"%RegExpPrototype%":["RegExp","prototype"],"%SetPrototype%":["Set","prototype"],"%SharedArrayBufferPrototype%":["SharedArrayBuffer","prototype"],"%StringPrototype%":["String","prototype"],"%SymbolPrototype%":["Symbol","prototype"],"%SyntaxErrorPrototype%":["SyntaxError","prototype"],"%TypedArrayPrototype%":["TypedArray","prototype"],"%TypeErrorPrototype%":["TypeError","prototype"],"%Uint8ArrayPrototype%":["Uint8Array","prototype"],"%Uint8ClampedArrayPrototype%":["Uint8ClampedArray","prototype"],"%Uint16ArrayPrototype%":["Uint16Array","prototype"],"%Uint32ArrayPrototype%":["Uint32Array","prototype"],"%URIErrorPrototype%":["URIError","prototype"],"%WeakMapPrototype%":["WeakMap","prototype"],"%WeakSetPrototype%":["WeakSet","prototype"]},bind=functionBind,hasOwn$1=src$1,$concat$1=bind.call(Function.call,Array.prototype.concat),$spliceApply=bind.call(Function.apply,Array.prototype.splice),$replace$1=bind.call(Function.call,String.prototype.replace),$strSlice=bind.call(Function.call,String.prototype.slice),$exec=bind.call(Function.call,RegExp.prototype.exec),rePropName=/[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g,reEscapeChar=/\\(\\)?/g,stringToPath=function i(e){var r=$strSlice(e,0,1),s=$strSlice(e,-1);if(r==="%"&&s!=="%")throw new $SyntaxError("invalid intrinsic syntax, expected closing `%`");if(s==="%"&&r!=="%")throw new $SyntaxError("invalid intrinsic syntax, expected opening `%`");var o=[];return $replace$1(e,rePropName,function(a,l,c,u){o[o.length]=c?$replace$1(u,reEscapeChar,"$1"):l||a}),o},getBaseIntrinsic=function i(e,r){var s=e,o;if(hasOwn$1(LEGACY_ALIASES,s)&&(o=LEGACY_ALIASES[s],s="%"+o[0]+"%"),hasOwn$1(INTRINSICS,s)){var a=INTRINSICS[s];if(a===needsEval&&(a=doEval(s)),typeof a>"u"&&!r)throw new $TypeError$1("intrinsic "+e+" exists, but is not available. Please file an issue!");return{alias:o,name:s,value:a}}throw new $SyntaxError("intrinsic "+e+" does not exist!")},getIntrinsic=function i(e,r){if(typeof e!="string"||e.length===0)throw new $TypeError$1("intrinsic name must be a non-empty string");if(arguments.length>1&&typeof r!="boolean")throw new $TypeError$1('"allowMissing" argument must be a boolean');if($exec(/^%?[^%]*%?$/,e)===null)throw new $SyntaxError("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var s=stringToPath(e),o=s.length>0?s[0]:"",a=getBaseIntrinsic("%"+o+"%",r),l=a.name,c=a.value,u=!1,m=a.alias;m&&(o=m[0],$spliceApply(s,$concat$1([0,1],m)));for(var g=1,d=!0;g=s.length){var S=$gOPD(c,y);d=!!S,d&&"get"in S&&!("originalValue"in S.get)?c=S.get:c=c[y]}else d=hasOwn$1(c,y),c=c[y];d&&!u&&(INTRINSICS[l]=c)}}return c},callBindExports={},callBind$1={get exports(){return callBindExports},set exports(i){callBindExports=i}};(function(i){var e=functionBind,r=getIntrinsic,s=r("%Function.prototype.apply%"),o=r("%Function.prototype.call%"),a=r("%Reflect.apply%",!0)||e.call(o,s),l=r("%Object.getOwnPropertyDescriptor%",!0),c=r("%Object.defineProperty%",!0),u=r("%Math.max%");if(c)try{c({},"a",{value:1})}catch(g){c=null}i.exports=function(d){var y=a(e,o,arguments);if(l&&c){var A=l(y,"length");A.configurable&&c(y,"length",{value:1+u(0,d.length-(arguments.length-1))})}return y};var m=function(){return a(e,s,arguments)};c?c(i.exports,"apply",{value:m}):i.exports.apply=m})(callBind$1);var GetIntrinsic$1=getIntrinsic,callBind=callBindExports,$indexOf=callBind(GetIntrinsic$1("String.prototype.indexOf")),callBound$1=function i(e,r){var s=GetIntrinsic$1(e,!!r);return typeof s=="function"&&$indexOf(e,".prototype.")>-1?callBind(s):s};const __viteBrowserExternal={},__viteBrowserExternal$1=Object.freeze(Object.defineProperty({__proto__:null,default:__viteBrowserExternal},Symbol.toStringTag,{value:"Module"})),require$$0$1=getAugmentedNamespace(__viteBrowserExternal$1);var hasMap=typeof Map=="function"&&Map.prototype,mapSizeDescriptor=Object.getOwnPropertyDescriptor&&hasMap?Object.getOwnPropertyDescriptor(Map.prototype,"size"):null,mapSize=hasMap&&mapSizeDescriptor&&typeof mapSizeDescriptor.get=="function"?mapSizeDescriptor.get:null,mapForEach=hasMap&&Map.prototype.forEach,hasSet=typeof Set=="function"&&Set.prototype,setSizeDescriptor=Object.getOwnPropertyDescriptor&&hasSet?Object.getOwnPropertyDescriptor(Set.prototype,"size"):null,setSize=hasSet&&setSizeDescriptor&&typeof setSizeDescriptor.get=="function"?setSizeDescriptor.get:null,setForEach=hasSet&&Set.prototype.forEach,hasWeakMap=typeof WeakMap=="function"&&WeakMap.prototype,weakMapHas=hasWeakMap?WeakMap.prototype.has:null,hasWeakSet=typeof WeakSet=="function"&&WeakSet.prototype,weakSetHas=hasWeakSet?WeakSet.prototype.has:null,hasWeakRef=typeof WeakRef=="function"&&WeakRef.prototype,weakRefDeref=hasWeakRef?WeakRef.prototype.deref:null,booleanValueOf=Boolean.prototype.valueOf,objectToString$2=Object.prototype.toString,functionToString=Function.prototype.toString,$match=String.prototype.match,$slice=String.prototype.slice,$replace=String.prototype.replace,$toUpperCase=String.prototype.toUpperCase,$toLowerCase=String.prototype.toLowerCase,$test=RegExp.prototype.test,$concat=Array.prototype.concat,$join=Array.prototype.join,$arrSlice=Array.prototype.slice,$floor=Math.floor,bigIntValueOf=typeof BigInt=="function"?BigInt.prototype.valueOf:null,gOPS=Object.getOwnPropertySymbols,symToString=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?Symbol.prototype.toString:null,hasShammedSymbols=typeof Symbol=="function"&&typeof Symbol.iterator=="object",toStringTag=typeof Symbol=="function"&&Symbol.toStringTag&&(typeof Symbol.toStringTag===hasShammedSymbols||"symbol")?Symbol.toStringTag:null,isEnumerable=Object.prototype.propertyIsEnumerable,gPO=(typeof Reflect=="function"?Reflect.getPrototypeOf:Object.getPrototypeOf)||([].__proto__===Array.prototype?function(i){return i.__proto__}:null);function addNumericSeparator(i,e){if(i===1/0||i===-1/0||i!==i||i&&i>-1e3&&i<1e3||$test.call(/e/,e))return e;var r=/[0-9](?=(?:[0-9]{3})+(?![0-9]))/g;if(typeof i=="number"){var s=i<0?-$floor(-i):$floor(i);if(s!==i){var o=String(s),a=$slice.call(e,o.length+1);return $replace.call(o,r,"$&_")+"."+$replace.call($replace.call(a,/([0-9]{3})/g,"$&_"),/_$/,"")}}return $replace.call(e,r,"$&_")}var utilInspect=require$$0$1,inspectCustom=utilInspect.custom,inspectSymbol=isSymbol(inspectCustom)?inspectCustom:null,objectInspect=function i(e,r,s,o){var a=r||{};if(has$3(a,"quoteStyle")&&a.quoteStyle!=="single"&&a.quoteStyle!=="double")throw new TypeError('option "quoteStyle" must be "single" or "double"');if(has$3(a,"maxStringLength")&&(typeof a.maxStringLength=="number"?a.maxStringLength<0&&a.maxStringLength!==1/0:a.maxStringLength!==null))throw new TypeError('option "maxStringLength", if provided, must be a positive integer, Infinity, or `null`');var l=has$3(a,"customInspect")?a.customInspect:!0;if(typeof l!="boolean"&&l!=="symbol")throw new TypeError("option \"customInspect\", if provided, must be `true`, `false`, or `'symbol'`");if(has$3(a,"indent")&&a.indent!==null&&a.indent!==" "&&!(parseInt(a.indent,10)===a.indent&&a.indent>0))throw new TypeError('option "indent" must be "\\t", an integer > 0, or `null`');if(has$3(a,"numericSeparator")&&typeof a.numericSeparator!="boolean")throw new TypeError('option "numericSeparator", if provided, must be `true` or `false`');var c=a.numericSeparator;if(typeof e>"u")return"undefined";if(e===null)return"null";if(typeof e=="boolean")return e?"true":"false";if(typeof e=="string")return inspectString(e,a);if(typeof e=="number"){if(e===0)return 1/0/e>0?"0":"-0";var u=String(e);return c?addNumericSeparator(e,u):u}if(typeof e=="bigint"){var m=String(e)+"n";return c?addNumericSeparator(e,m):m}var g=typeof a.depth>"u"?5:a.depth;if(typeof s>"u"&&(s=0),s>=g&&g>0&&typeof e=="object")return isArray$7(e)?"[Array]":"[Object]";var d=getIndent(a,s);if(typeof o>"u")o=[];else if(indexOf$2(o,e)>=0)return"[Circular]";function y(V,R,Q){if(R&&(o=$arrSlice.call(o),o.push(R)),Q){var _={depth:a.depth};return has$3(a,"quoteStyle")&&(_.quoteStyle=a.quoteStyle),i(V,_,s+1,o)}return i(V,a,s+1,o)}if(typeof e=="function"&&!isRegExp$1(e)){var A=nameOf(e),b=arrObjKeys(e,y);return"[Function"+(A?": "+A:" (anonymous)")+"]"+(b.length>0?" { "+$join.call(b,", ")+" }":"")}if(isSymbol(e)){var S=hasShammedSymbols?$replace.call(String(e),/^(Symbol\(.*\))_[^)]*$/,"$1"):symToString.call(e);return typeof e=="object"&&!hasShammedSymbols?markBoxed(S):S}if(isElement(e)){for(var E="<"+$toLowerCase.call(String(e.nodeName)),x=e.attributes||[],C=0;C",E}if(isArray$7(e)){if(e.length===0)return"[]";var P=arrObjKeys(e,y);return d&&!singleLineValues(P)?"["+indentedJoin(P,d)+"]":"[ "+$join.call(P,", ")+" ]"}if(isError(e)){var k=arrObjKeys(e,y);return!("cause"in Error.prototype)&&"cause"in e&&!isEnumerable.call(e,"cause")?"{ ["+String(e)+"] "+$join.call($concat.call("[cause]: "+y(e.cause),k),", ")+" }":k.length===0?"["+String(e)+"]":"{ ["+String(e)+"] "+$join.call(k,", ")+" }"}if(typeof e=="object"&&l){if(inspectSymbol&&typeof e[inspectSymbol]=="function"&&utilInspect)return utilInspect(e,{depth:g-s});if(l!=="symbol"&&typeof e.inspect=="function")return e.inspect()}if(isMap$2(e)){var I=[];return mapForEach&&mapForEach.call(e,function(V,R){I.push(y(R,e,!0)+" => "+y(V,e))}),collectionOf("Map",mapSize.call(e),I,d)}if(isSet$2(e)){var M=[];return setForEach&&setForEach.call(e,function(V){M.push(y(V,e))}),collectionOf("Set",setSize.call(e),M,d)}if(isWeakMap(e))return weakCollectionOf("WeakMap");if(isWeakSet(e))return weakCollectionOf("WeakSet");if(isWeakRef(e))return weakCollectionOf("WeakRef");if(isNumber$1(e))return markBoxed(y(Number(e)));if(isBigInt(e))return markBoxed(y(bigIntValueOf.call(e)));if(isBoolean$1(e))return markBoxed(booleanValueOf.call(e));if(isString$1(e))return markBoxed(y(String(e)));if(!isDate$1(e)&&!isRegExp$1(e)){var T=arrObjKeys(e,y),F=gPO?gPO(e)===Object.prototype:e instanceof Object||e.constructor===Object,D=e instanceof Object?"":"null prototype",N=!F&&toStringTag&&Object(e)===e&&toStringTag in e?$slice.call(toStr(e),8,-1):D?"Object":"",O=F||typeof e.constructor!="function"?"":e.constructor.name?e.constructor.name+" ":"",B=O+(N||D?"["+$join.call($concat.call([],N||[],D||[]),": ")+"] ":"");return T.length===0?B+"{}":d?B+"{"+indentedJoin(T,d)+"}":B+"{ "+$join.call(T,", ")+" }"}return String(e)};function wrapQuotes(i,e,r){var s=(r.quoteStyle||e)==="double"?'"':"'";return s+i+s}function quote(i){return $replace.call(String(i),/"/g,""")}function isArray$7(i){return toStr(i)==="[object Array]"&&(!toStringTag||!(typeof i=="object"&&toStringTag in i))}function isDate$1(i){return toStr(i)==="[object Date]"&&(!toStringTag||!(typeof i=="object"&&toStringTag in i))}function isRegExp$1(i){return toStr(i)==="[object RegExp]"&&(!toStringTag||!(typeof i=="object"&&toStringTag in i))}function isError(i){return toStr(i)==="[object Error]"&&(!toStringTag||!(typeof i=="object"&&toStringTag in i))}function isString$1(i){return toStr(i)==="[object String]"&&(!toStringTag||!(typeof i=="object"&&toStringTag in i))}function isNumber$1(i){return toStr(i)==="[object Number]"&&(!toStringTag||!(typeof i=="object"&&toStringTag in i))}function isBoolean$1(i){return toStr(i)==="[object Boolean]"&&(!toStringTag||!(typeof i=="object"&&toStringTag in i))}function isSymbol(i){if(hasShammedSymbols)return i&&typeof i=="object"&&i instanceof Symbol;if(typeof i=="symbol")return!0;if(!i||typeof i!="object"||!symToString)return!1;try{return symToString.call(i),!0}catch(e){}return!1}function isBigInt(i){if(!i||typeof i!="object"||!bigIntValueOf)return!1;try{return bigIntValueOf.call(i),!0}catch(e){}return!1}var hasOwn=Object.prototype.hasOwnProperty||function(i){return i in this};function has$3(i,e){return hasOwn.call(i,e)}function toStr(i){return objectToString$2.call(i)}function nameOf(i){if(i.name)return i.name;var e=$match.call(functionToString.call(i),/^function\s*([\w$]+)/);return e?e[1]:null}function indexOf$2(i,e){if(i.indexOf)return i.indexOf(e);for(var r=0,s=i.length;re.maxStringLength){var r=i.length-e.maxStringLength,s="... "+r+" more character"+(r>1?"s":"");return inspectString($slice.call(i,0,e.maxStringLength),e)+s}var o=$replace.call($replace.call(i,/(['\\])/g,"\\$1"),/[\x00-\x1f]/g,lowbyte);return wrapQuotes(o,"single",e)}function lowbyte(i){var e=i.charCodeAt(0),r={8:"b",9:"t",10:"n",12:"f",13:"r"}[e];return r?"\\"+r:"\\x"+(e<16?"0":"")+$toUpperCase.call(e.toString(16))}function markBoxed(i){return"Object("+i+")"}function weakCollectionOf(i){return i+" { ? }"}function collectionOf(i,e,r,s){var o=s?indentedJoin(r,s):$join.call(r,", ");return i+" ("+e+") {"+o+"}"}function singleLineValues(i){for(var e=0;e=0)return!1;return!0}function getIndent(i,e){var r;if(i.indent===" ")r=" ";else if(typeof i.indent=="number"&&i.indent>0)r=$join.call(Array(i.indent+1)," ");else return null;return{base:r,prev:$join.call(Array(e+1),r)}}function indentedJoin(i,e){if(i.length===0)return"";var r=` `+e.prev+e.base;return r+$join.call(i,","+r)+` `+e.prev}function arrObjKeys(i,e){var r=isArray$7(i),s=[];if(r){s.length=i.length;for(var o=0;o1;){var r=e.pop(),s=r.obj[r.prop];if(isArray$6(s)){for(var o=[],a=0;a=48&&m<=57||m>=65&&m<=90||m>=97&&m<=122||a===formats$2.RFC1738&&(m===40||m===41)){c+=l.charAt(u);continue}if(m<128){c=c+hexTable[m];continue}if(m<2048){c=c+(hexTable[192|m>>6]+hexTable[128|m&63]);continue}if(m<55296||m>=57344){c=c+(hexTable[224|m>>12]+hexTable[128|m>>6&63]+hexTable[128|m&63]);continue}u+=1,m=65536+((m&1023)<<10|l.charCodeAt(u)&1023),c+=hexTable[240|m>>18]+hexTable[128|m>>12&63]+hexTable[128|m>>6&63]+hexTable[128|m&63]}return c},compact=function i(e){for(var r=[{obj:{o:e},prop:"o"}],s=[],o=0;o"u"&&(P=0)}if(typeof u=="function"?x=u(r,x):x instanceof Date?x=d(x):s==="comma"&&isArray$5(x)&&(x=utils$2.maybeMap(x,function(_){return _ instanceof Date?d(_):_})),x===null){if(a)return c&&!b?c(r,defaults$1.encoder,S,"key",y):r;x=""}if(isNonNullishPrimitive(x)||utils$2.isBuffer(x)){if(c){var M=b?r:c(r,defaults$1.encoder,S,"key",y);return[A(M)+"="+A(c(x,defaults$1.encoder,S,"value",y))]}return[A(r)+"="+A(String(x))]}var T=[];if(typeof x>"u")return T;var F;if(s==="comma"&&isArray$5(x))b&&c&&(x=utils$2.maybeMap(x,c)),F=[{value:x.length>0?x.join(",")||null:void 0}];else if(isArray$5(u))F=u;else{var D=Object.keys(x);F=m?D.sort(m):D}for(var N=o&&isArray$5(x)&&x.length===1?r+"[]":r,O=0;O"u"?defaults$1.allowDots:!!e.allowDots,charset:r,charsetSentinel:typeof e.charsetSentinel=="boolean"?e.charsetSentinel:defaults$1.charsetSentinel,delimiter:typeof e.delimiter>"u"?defaults$1.delimiter:e.delimiter,encode:typeof e.encode=="boolean"?e.encode:defaults$1.encode,encoder:typeof e.encoder=="function"?e.encoder:defaults$1.encoder,encodeValuesOnly:typeof e.encodeValuesOnly=="boolean"?e.encodeValuesOnly:defaults$1.encodeValuesOnly,filter:a,format:s,formatter:o,serializeDate:typeof e.serializeDate=="function"?e.serializeDate:defaults$1.serializeDate,skipNulls:typeof e.skipNulls=="boolean"?e.skipNulls:defaults$1.skipNulls,sort:typeof e.sort=="function"?e.sort:null,strictNullHandling:typeof e.strictNullHandling=="boolean"?e.strictNullHandling:defaults$1.strictNullHandling}},stringify_1=function(i,e){var r=i,s=normalizeStringifyOptions(e),o,a;typeof s.filter=="function"?(a=s.filter,r=a("",r)):isArray$5(s.filter)&&(a=s.filter,o=a);var l=[];if(typeof r!="object"||r===null)return"";var c;e&&e.arrayFormat in arrayPrefixGenerators?c=e.arrayFormat:e&&"indices"in e?c=e.indices?"indices":"repeat":c="indices";var u=arrayPrefixGenerators[c];if(e&&"commaRoundTrip"in e&&typeof e.commaRoundTrip!="boolean")throw new TypeError("`commaRoundTrip` must be a boolean, or absent");var m=u==="comma"&&e&&e.commaRoundTrip;o||(o=Object.keys(r)),s.sort&&o.sort(s.sort);for(var g=getSideChannel(),d=0;d0?b+A:""},utils$1=utils$3,has=Object.prototype.hasOwnProperty,isArray$4=Array.isArray,defaults={allowDots:!1,allowPrototypes:!1,allowSparse:!1,arrayLimit:20,charset:"utf-8",charsetSentinel:!1,comma:!1,decoder:utils$1.decode,delimiter:"&",depth:5,ignoreQueryPrefix:!1,interpretNumericEntities:!1,parameterLimit:1e3,parseArrays:!0,plainObjects:!1,strictNullHandling:!1},interpretNumericEntities=function(i){return i.replace(/&#(\d+);/g,function(e,r){return String.fromCharCode(parseInt(r,10))})},parseArrayValue=function(i,e){return i&&typeof i=="string"&&e.comma&&i.indexOf(",")>-1?i.split(","):i},isoSentinel="utf8=%26%2310003%3B",charsetSentinel="utf8=%E2%9C%93",parseValues=function i(e,r){var s={},o=r.ignoreQueryPrefix?e.replace(/^\?/,""):e,a=r.parameterLimit===1/0?void 0:r.parameterLimit,l=o.split(r.delimiter,a),c=-1,u,m=r.charset;if(r.charsetSentinel)for(u=0;u-1&&(b=isArray$4(b)?[b]:b),has.call(s,A)?s[A]=utils$1.combine(s[A],b):s[A]=b}return s},parseObject=function(i,e,r,s){for(var o=s?e:parseArrayValue(e,r),a=i.length-1;a>=0;--a){var l,c=i[a];if(c==="[]"&&r.parseArrays)l=[].concat(o);else{l=r.plainObjects?Object.create(null):{};var u=c.charAt(0)==="["&&c.charAt(c.length-1)==="]"?c.slice(1,-1):c,m=parseInt(u,10);!r.parseArrays&&u===""?l={0:o}:!isNaN(m)&&c!==u&&String(m)===u&&m>=0&&r.parseArrays&&m<=r.arrayLimit?(l=[],l[m]=o):u!=="__proto__"&&(l[u]=o)}o=l}return o},parseKeys=function i(e,r,s,o){if(e){var a=s.allowDots?e.replace(/\.([^.[]+)/g,"[$1]"):e,l=/(\[[^[\]]*])/,c=/(\[[^[\]]*])/g,u=s.depth>0&&l.exec(a),m=u?a.slice(0,u.index):a,g=[];if(m){if(!s.plainObjects&&has.call(Object.prototype,m)&&!s.allowPrototypes)return;g.push(m)}for(var d=0;s.depth>0&&(u=c.exec(a))!==null&&d"u"?defaults.charset:e.charset;return{allowDots:typeof e.allowDots>"u"?defaults.allowDots:!!e.allowDots,allowPrototypes:typeof e.allowPrototypes=="boolean"?e.allowPrototypes:defaults.allowPrototypes,allowSparse:typeof e.allowSparse=="boolean"?e.allowSparse:defaults.allowSparse,arrayLimit:typeof e.arrayLimit=="number"?e.arrayLimit:defaults.arrayLimit,charset:r,charsetSentinel:typeof e.charsetSentinel=="boolean"?e.charsetSentinel:defaults.charsetSentinel,comma:typeof e.comma=="boolean"?e.comma:defaults.comma,decoder:typeof e.decoder=="function"?e.decoder:defaults.decoder,delimiter:typeof e.delimiter=="string"||utils$1.isRegExp(e.delimiter)?e.delimiter:defaults.delimiter,depth:typeof e.depth=="number"||e.depth===!1?+e.depth:defaults.depth,ignoreQueryPrefix:e.ignoreQueryPrefix===!0,interpretNumericEntities:typeof e.interpretNumericEntities=="boolean"?e.interpretNumericEntities:defaults.interpretNumericEntities,parameterLimit:typeof e.parameterLimit=="number"?e.parameterLimit:defaults.parameterLimit,parseArrays:e.parseArrays!==!1,plainObjects:typeof e.plainObjects=="boolean"?e.plainObjects:defaults.plainObjects,strictNullHandling:typeof e.strictNullHandling=="boolean"?e.strictNullHandling:defaults.strictNullHandling}},parse$4=function(i,e){var r=normalizeParseOptions(e);if(i===""||i===null||typeof i>"u")return r.plainObjects?Object.create(null):{};for(var s=typeof i=="string"?parseValues(i,r):i,o=r.plainObjects?Object.create(null):{},a=Object.keys(s),l=0;l-1};function normalizeName(i){if(typeof i!="string"&&(i=String(i)),/[^a-z0-9\-#$%&'*+.^_`|~!]/i.test(i)||i==="")throw new TypeError('Invalid character in header field name: "'+i+'"');return i.toLowerCase()}function normalizeValue(i){return typeof i!="string"&&(i=String(i)),i}function iteratorFor(i){var e={next:function(){var r=i.shift();return{done:r===void 0,value:r}}};return support.iterable&&(e[Symbol.iterator]=function(){return e}),e}function Headers(i){this.map={},i instanceof Headers?i.forEach(function(e,r){this.append(r,e)},this):Array.isArray(i)?i.forEach(function(e){this.append(e[0],e[1])},this):i&&Object.getOwnPropertyNames(i).forEach(function(e){this.append(e,i[e])},this)}Headers.prototype.append=function(i,e){i=normalizeName(i),e=normalizeValue(e);var r=this.map[i];this.map[i]=r?r+", "+e:e};Headers.prototype.delete=function(i){delete this.map[normalizeName(i)]};Headers.prototype.get=function(i){return i=normalizeName(i),this.has(i)?this.map[i]:null};Headers.prototype.has=function(i){return this.map.hasOwnProperty(normalizeName(i))};Headers.prototype.set=function(i,e){this.map[normalizeName(i)]=normalizeValue(e)};Headers.prototype.forEach=function(i,e){for(var r in this.map)this.map.hasOwnProperty(r)&&i.call(e,this.map[r],r,this)};Headers.prototype.keys=function(){var i=[];return this.forEach(function(e,r){i.push(r)}),iteratorFor(i)};Headers.prototype.values=function(){var i=[];return this.forEach(function(e){i.push(e)}),iteratorFor(i)};Headers.prototype.entries=function(){var i=[];return this.forEach(function(e,r){i.push([r,e])}),iteratorFor(i)};support.iterable&&(Headers.prototype[Symbol.iterator]=Headers.prototype.entries);function consumed(i){if(i.bodyUsed)return Promise.reject(new TypeError("Already read"));i.bodyUsed=!0}function fileReaderReady(i){return new Promise(function(e,r){i.onload=function(){e(i.result)},i.onerror=function(){r(i.error)}})}function readBlobAsArrayBuffer(i){var e=new FileReader,r=fileReaderReady(e);return e.readAsArrayBuffer(i),r}function readBlobAsText(i){var e=new FileReader,r=fileReaderReady(e);return e.readAsText(i),r}function readArrayBufferAsText(i){for(var e=new Uint8Array(i),r=new Array(e.length),s=0;s-1?e:i}function Request(i,e){if(!(this instanceof Request))throw new TypeError('Please use the "new" operator, this DOM object constructor cannot be called as a function.');e=e||{};var r=e.body;if(i instanceof Request){if(i.bodyUsed)throw new TypeError("Already read");this.url=i.url,this.credentials=i.credentials,e.headers||(this.headers=new Headers(i.headers)),this.method=i.method,this.mode=i.mode,this.signal=i.signal,!r&&i._bodyInit!=null&&(r=i._bodyInit,i.bodyUsed=!0)}else this.url=String(i);if(this.credentials=e.credentials||this.credentials||"same-origin",(e.headers||!this.headers)&&(this.headers=new Headers(e.headers)),this.method=normalizeMethod(e.method||this.method||"GET"),this.mode=e.mode||this.mode||null,this.signal=e.signal||this.signal,this.referrer=null,(this.method==="GET"||this.method==="HEAD")&&r)throw new TypeError("Body not allowed for GET or HEAD requests");if(this._initBody(r),(this.method==="GET"||this.method==="HEAD")&&(e.cache==="no-store"||e.cache==="no-cache")){var s=/([?&])_=[^&]*/;if(s.test(this.url))this.url=this.url.replace(s,"$1_="+new Date().getTime());else{var o=/\?/;this.url+=(o.test(this.url)?"&":"?")+"_="+new Date().getTime()}}}Request.prototype.clone=function(){return new Request(this,{body:this._bodyInit})};function decode$1(i){var e=new FormData;return i.trim().split("&").forEach(function(r){if(r){var s=r.split("="),o=s.shift().replace(/\+/g," "),a=s.join("=").replace(/\+/g," ");e.append(decodeURIComponent(o),decodeURIComponent(a))}}),e}function parseHeaders(i){var e=new Headers,r=i.replace(/\r?\n[\t ]+/g," ");return r.split("\r").map(function(s){return s.indexOf(` `)===0?s.substr(1,s.length):s}).forEach(function(s){var o=s.split(":"),a=o.shift().trim();if(a){var l=o.join(":").trim();e.append(a,l)}}),e}Body.call(Request.prototype);function Response(i,e){if(!(this instanceof Response))throw new TypeError('Please use the "new" operator, this DOM object constructor cannot be called as a function.');e||(e={}),this.type="default",this.status=e.status===void 0?200:e.status,this.ok=this.status>=200&&this.status<300,this.statusText=e.statusText===void 0?"":""+e.statusText,this.headers=new Headers(e.headers),this.url=e.url||"",this._initBody(i)}Body.call(Response.prototype);Response.prototype.clone=function(){return new Response(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new Headers(this.headers),url:this.url})};Response.error=function(){var i=new Response(null,{status:0,statusText:""});return i.type="error",i};var redirectStatuses=[301,302,303,307,308];Response.redirect=function(i,e){if(redirectStatuses.indexOf(e)===-1)throw new RangeError("Invalid status code");return new Response(null,{status:e,headers:{location:i}})};var DOMException=global$1.DOMException;try{new DOMException}catch(i){DOMException=function(e,r){this.message=e,this.name=r;var s=Error(e);this.stack=s.stack},DOMException.prototype=Object.create(Error.prototype),DOMException.prototype.constructor=DOMException}function fetch$2(i,e){return new Promise(function(r,s){var o=new Request(i,e);if(o.signal&&o.signal.aborted)return s(new DOMException("Aborted","AbortError"));var a=new XMLHttpRequest;function l(){a.abort()}a.onload=function(){var u={status:a.status,statusText:a.statusText,headers:parseHeaders(a.getAllResponseHeaders()||"")};u.url="responseURL"in a?a.responseURL:u.headers.get("X-Request-URL");var m="response"in a?a.response:a.responseText;setTimeout(function(){r(new Response(m,u))},0)},a.onerror=function(){setTimeout(function(){s(new TypeError("Network request failed"))},0)},a.ontimeout=function(){setTimeout(function(){s(new TypeError("Network request failed"))},0)},a.onabort=function(){setTimeout(function(){s(new DOMException("Aborted","AbortError"))},0)};function c(u){try{return u===""&&global$1.location.href?global$1.location.href:u}catch(m){return u}}a.open(o.method,c(o.url),!0),o.credentials==="include"?a.withCredentials=!0:o.credentials==="omit"&&(a.withCredentials=!1),"responseType"in a&&(support.blob?a.responseType="blob":support.arrayBuffer&&o.headers.get("Content-Type")&&o.headers.get("Content-Type").indexOf("application/octet-stream")!==-1&&(a.responseType="arraybuffer")),e&&typeof e.headers=="object"&&!(e.headers instanceof Headers)?Object.getOwnPropertyNames(e.headers).forEach(function(u){a.setRequestHeader(u,normalizeValue(e.headers[u]))}):o.headers.forEach(function(u,m){a.setRequestHeader(m,u)}),o.signal&&(o.signal.addEventListener("abort",l),a.onreadystatechange=function(){a.readyState===4&&o.signal.removeEventListener("abort",l)}),a.send(typeof o._bodyInit>"u"?null:o._bodyInit)})}fetch$2.polyfill=!0;global$1.fetch||(global$1.fetch=fetch$2,global$1.Headers=Headers,global$1.Request=Request,global$1.Response=Response);self.fetch.bind(self);function ownKeys(i,e){var r=Object.keys(i);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(i);e&&(s=s.filter(function(o){return Object.getOwnPropertyDescriptor(i,o).enumerable})),r.push.apply(r,s)}return r}function _objectSpread2(i){for(var e=1;e"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch(i){return!1}}function _construct(i,e,r){return _isNativeReflectConstruct()?_construct=Reflect.construct:_construct=function(o,a,l){var c=[null];c.push.apply(c,a);var u=Function.bind.apply(o,c),m=new u;return l&&_setPrototypeOf(m,l.prototype),m},_construct.apply(null,arguments)}function _isNativeFunction(i){return Function.toString.call(i).indexOf("[native code]")!==-1}function _wrapNativeSuper(i){var e=typeof Map=="function"?new Map:void 0;return _wrapNativeSuper=function(s){if(s===null||!_isNativeFunction(s))return s;if(typeof s!="function")throw new TypeError("Super expression must either be null or a function");if(typeof e<"u"){if(e.has(s))return e.get(s);e.set(s,o)}function o(){return _construct(s,arguments,_getPrototypeOf(this).constructor)}return o.prototype=Object.create(s.prototype,{constructor:{value:o,enumerable:!1,writable:!0,configurable:!0}}),_setPrototypeOf(o,s)},_wrapNativeSuper(i)}function _assertThisInitialized(i){if(i===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return i}function _possibleConstructorReturn(i,e){if(e&&(typeof e=="object"||typeof e=="function"))return e;if(e!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return _assertThisInitialized(i)}function _createSuper(i){var e=_isNativeReflectConstruct();return function(){var s=_getPrototypeOf(i),o;if(e){var a=_getPrototypeOf(this).constructor;o=Reflect.construct(s,arguments,a)}else o=s.apply(this,arguments);return _possibleConstructorReturn(this,o)}}function _toConsumableArray(i){return _arrayWithoutHoles(i)||_iterableToArray(i)||_unsupportedIterableToArray(i)||_nonIterableSpread()}function _arrayWithoutHoles(i){if(Array.isArray(i))return _arrayLikeToArray(i)}function _iterableToArray(i){if(typeof Symbol<"u"&&i[Symbol.iterator]!=null||i["@@iterator"]!=null)return Array.from(i)}function _unsupportedIterableToArray(i,e){if(i){if(typeof i=="string")return _arrayLikeToArray(i,e);var r=Object.prototype.toString.call(i).slice(8,-1);if(r==="Object"&&i.constructor&&(r=i.constructor.name),r==="Map"||r==="Set")return Array.from(i);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return _arrayLikeToArray(i,e)}}function _arrayLikeToArray(i,e){(e==null||e>i.length)&&(e=i.length);for(var r=0,s=new Array(e);r1&&arguments[1]!==void 0?arguments[1]:{global:!1,core:!1,defaultInstance:!1},o=!1,a=!1,l=!1;if(typeof s=="number"?(process&&process.env,o=!0,a=!1):_typeof(s)==="object"&&s&&(a=s.global||!1,o=s.core||!1,l=s.defaultInstance||!1),a){i.globalMiddlewares.splice(i.globalMiddlewares.length-i.defaultGlobalMiddlewaresLength,0,r);return}if(o){i.coreMiddlewares.splice(i.coreMiddlewares.length-i.defaultCoreMiddlewaresLength,0,r);return}if(l){this.defaultMiddlewares.push(r);return}this.middlewares.push(r)}},{key:"execute",value:function(){var r=arguments.length>0&&arguments[0]!==void 0?arguments[0]:null,s=compose([].concat(_toConsumableArray(this.middlewares),_toConsumableArray(this.defaultMiddlewares),_toConsumableArray(i.globalMiddlewares),_toConsumableArray(i.coreMiddlewares)));return s(r)}}]),i}();Onion.globalMiddlewares=[];Onion.defaultGlobalMiddlewaresLength=0;Onion.coreMiddlewares=[];Onion.defaultCoreMiddlewaresLength=0;var MapCache$1=function(){function i(e){_classCallCheck(this,i),this.cache=new Map,this.timer={},this.extendOptions(e)}return _createClass(i,[{key:"extendOptions",value:function(r){this.maxCache=r.maxCache||0}},{key:"get",value:function(r){return this.cache.get(JSON.stringify(r))}},{key:"set",value:function(r,s){var o=this,a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:6e4;if(this.maxCache>0&&this.cache.size>=this.maxCache){var l=_toConsumableArray(this.cache.keys())[0];this.cache.delete(l),this.timer[l]&&clearTimeout(this.timer[l])}var c=JSON.stringify(r);this.cache.set(c,s),a>0&&(this.timer[c]=setTimeout(function(){o.cache.delete(c),delete o.timer[c]},a))}},{key:"delete",value:function(r){var s=JSON.stringify(r);return delete this.timer[s],this.cache.delete(s)}},{key:"clear",value:function(){return this.timer={},this.cache.clear()}}]),i}(),RequestError=function(i){_inherits(r,i);var e=_createSuper(r);function r(s,o){var a,l=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"RequestError";return _classCallCheck(this,r),a=e.call(this,s),a.name="RequestError",a.request=o,a.type=l,a}return r}(_wrapNativeSuper(Error)),ResponseError=function(i){_inherits(r,i);var e=_createSuper(r);function r(s,o,a,l){var c,u=arguments.length>4&&arguments[4]!==void 0?arguments[4]:"ResponseError";return _classCallCheck(this,r),c=e.call(this,o||s.statusText),c.name="ResponseError",c.data=a,c.response=s,c.request=l,c.type=u,c}return r}(_wrapNativeSuper(Error));function readerGBK(i){return new Promise(function(e,r){var s=new FileReader;s.onload=function(){e(s.result)},s.onerror=r,s.readAsText(i,"GBK")})}function safeJsonParse(i){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:null,s=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;try{return JSON.parse(i)}catch(o){if(e)throw new ResponseError(r,"JSON.parse fail",i,s,"ParseError")}return i}function timeout2Throw(i,e,r){return new Promise(function(s,o){setTimeout(function(){o(new RequestError(e||"timeout of ".concat(i,"ms exceeded"),r,"Timeout"))},i)})}function cancel2Throw(i){return new Promise(function(e,r){i.cancelToken&&i.cancelToken.promise.then(function(s){r(s)})})}var toString$2=Object.prototype.toString;function getEnv(){var i;return typeof process<"u"&&toString$2.call(process)==="[object process]"&&(i="NODE"),typeof XMLHttpRequest<"u"&&(i="BROWSER"),i}function isArray$3(i){return _typeof(i)==="object"&&Object.prototype.toString.call(i)==="[object Array]"}function isURLSearchParams(i){return typeof URLSearchParams<"u"&&i instanceof URLSearchParams}function isDate(i){return _typeof(i)==="object"&&Object.prototype.toString.call(i)==="[object Date]"}function isObject$1(i){return i!==null&&_typeof(i)==="object"}function forEach2ObjArr(i,e){if(i)if(_typeof(i)!=="object"&&(i=[i]),isArray$3(i))for(var r=0;r1&&arguments[1]!==void 0?arguments[1]:{},s=r.prefix,o=r.suffix;return s&&(e="".concat(s).concat(e)),o&&(e="".concat(e).concat(o)),{url:e,options:r}},warnedCoreType=!1;function __defaultValidateCache(i,e){var r=e.method,s=r===void 0?"get":r;return s.toLowerCase()==="get"}function fetchMiddleware(i,e){if(!i)return e();var r=i.req;r=r===void 0?{}:r;var s=r.options,o=s===void 0?{}:s,a=r.url,l=a===void 0?"":a,c=i.cache,u=i.responseInterceptors,m=o.timeout,g=m===void 0?0:m,d=o.timeoutMessage,y=o.__umiRequestCoreType__,A=y===void 0?"normal":y,b=o.useCache,S=b===void 0?!1:b,E=o.method,x=E===void 0?"get":E,C=o.params,P=o.ttl,k=o.validateCache,I=k===void 0?__defaultValidateCache:k;if(A!=="normal")return process&&process.env,e();var M=fetch;if(!M)throw new Error("Global fetch not exist!");var T=getEnv()==="BROWSER",F=I(l,o)&&S&&T;if(F){var D=c.get({url:l,params:C,method:x});if(D)return D=D.clone(),D.useCache=!0,i.res=D,e()}var N;return g>0?N=Promise.race([cancel2Throw(o),M(l,o),timeout2Throw(g,d,i.req)]):N=Promise.race([cancel2Throw(o),M(l,o)]),u.forEach(function(O){N=N.then(function(B){var V=typeof B.clone=="function"?B.clone():B;return O(V,o)})}),N.then(function(O){if(F&&O.status===200){var B=O.clone();B.useCache=!0,c.set({url:l,params:C,method:x},B,P)}return i.res=O,e()})}function parseResponseMiddleware(i,e){var r;return e().then(function(){if(i){var s=i.res,o=s===void 0?{}:s,a=i.req,l=a===void 0?{}:a,c=l||{},u=c.options;u=u===void 0?{}:u;var m=u.responseType,g=m===void 0?"json":m,d=u.charset,y=d===void 0?"utf8":d;u.getResponse;var A=u.throwErrIfParseFail,b=A===void 0?!1:A,S=u.parseResponse,E=S===void 0?!0:S;if(E&&!(!o||!o.clone)){if(r=getEnv()==="BROWSER"?o.clone():o,r.useCache=o.useCache||!1,y==="gbk")try{return o.blob().then(readerGBK).then(function(x){return safeJsonParse(x,!1,r,l)})}catch(x){throw new ResponseError(r,x.message,null,l,"ParseError")}else if(g==="json")return o.text().then(function(x){return safeJsonParse(x,b,r,l)});try{return o[g]()}catch(x){throw new ResponseError(r,"responseType not support",null,l,"ParseError")}}}}).then(function(s){if(i){i.res;var o=i.req,a=o===void 0?{}:o,l=a||{},c=l.options;c=c===void 0?{}:c;var u=c.getResponse,m=u===void 0?!1:u;if(r){if(r.status>=200&&r.status<300){if(m){i.res={data:s,response:r};return}i.res=s;return}throw new ResponseError(r,"http error",s,a,"HttpError")}}}).catch(function(s){if(s instanceof RequestError||s instanceof ResponseError)throw s;var o=i.req,a=i.res;throw s.request=s.request||o,s.response=s.response||a,s.type=s.type||s.name,s.data=s.data||void 0,s})}function simplePostMiddleware(i,e){if(!i)return e();var r=i.req;r=r===void 0?{}:r;var s=r.options,o=s===void 0?{}:s,a=o.method,l=a===void 0?"get":a;if(["post","put","patch","delete"].indexOf(l.toLowerCase())===-1)return e();var c=o.requestType,u=c===void 0?"json":c,m=o.data;if(m){var g=Object.prototype.toString.call(m);g==="[object Object]"||g==="[object Array]"?u==="json"?(o.headers=_objectSpread2({Accept:"application/json","Content-Type":"application/json;charset=UTF-8"},o.headers),o.body=JSON.stringify(m)):u==="form"&&(o.headers=_objectSpread2({Accept:"application/json","Content-Type":"application/x-www-form-urlencoded;charset=UTF-8"},o.headers),o.body=reqStringify(m)):(o.headers=_objectSpread2({Accept:"application/json"},o.headers),o.body=m)}return i.req.options=o,e()}function paramsSerialize(i,e){var r,s;if(i)if(e)r=e(i);else if(isURLSearchParams(i))r=i.toString();else if(isArray$3(i))s=[],forEach2ObjArr(i,function(a){a===null||typeof a>"u"?s.push(a):s.push(isObject$1(a)?JSON.stringify(a):a)}),r=reqStringify(s);else{s={},forEach2ObjArr(i,function(a,l){var c=a;a===null||typeof a>"u"?s[l]=a:isDate(a)?c=a.toISOString():isArray$3(a)?c=a:isObject$1(a)&&(c=JSON.stringify(a)),s[l]=c});var o=reqStringify(s);r=o}return r}function simpleGetMiddleware(i,e){if(!i)return e();var r=i.req;r=r===void 0?{}:r;var s=r.options,o=s===void 0?{}:s,a=o.paramsSerializer,l=o.params,c=i.req;c=c===void 0?{}:c;var u=c.url,m=u===void 0?"":u;o.method=o.method?o.method.toUpperCase():"GET",o.credentials=o.credentials||"same-origin";var g=paramsSerialize(l,a);if(i.req.originUrl=m,g){var d=m.indexOf("?")!==-1?"&":"?";i.req.url="".concat(m).concat(d).concat(g)}return i.req.options=o,e()}var globalMiddlewares=[simplePostMiddleware,simpleGetMiddleware,parseResponseMiddleware],coreMiddlewares=[fetchMiddleware];Onion.globalMiddlewares=globalMiddlewares;Onion.defaultGlobalMiddlewaresLength=globalMiddlewares.length;Onion.coreMiddlewares=coreMiddlewares;Onion.defaultCoreMiddlewaresLength=coreMiddlewares.length;var Core=function(){function i(e){_classCallCheck(this,i),this.onion=new Onion([]),this.fetchIndex=0,this.mapCache=new MapCache$1(e),this.initOptions=e,this.instanceRequestInterceptors=[],this.instanceResponseInterceptors=[]}return _createClass(i,[{key:"use",value:function(r){var s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{global:!1,core:!1};return this.onion.use(r,s),this}},{key:"extendOptions",value:function(r){this.initOptions=mergeRequestOptions(this.initOptions,r),this.mapCache.extendOptions(r)}},{key:"dealRequestInterceptors",value:function(r){var s=function(l,c){return l.then(function(){var u=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return r.req.url=u.url||r.req.url,r.req.options=u.options||r.req.options,c(r.req.url,r.req.options)})},o=[].concat(_toConsumableArray(i.requestInterceptors),_toConsumableArray(this.instanceRequestInterceptors));return o.reduce(s,Promise.resolve()).then(function(){var a=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return r.req.url=a.url||r.req.url,r.req.options=a.options||r.req.options,Promise.resolve()})}},{key:"request",value:function(r,s){var o=this,a=this.onion,l={req:{url:r,options:_objectSpread2(_objectSpread2({},s),{},{url:r})},res:null,cache:this.mapCache,responseInterceptors:[].concat(_toConsumableArray(i.responseInterceptors),_toConsumableArray(this.instanceResponseInterceptors))};if(typeof r!="string")throw new Error("url MUST be a string");return new Promise(function(c,u){o.dealRequestInterceptors(l).then(function(){return a.execute(l)}).then(function(){c(l.res)}).catch(function(m){var g=l.req.options.errorHandler;if(g)try{var d=g(m);c(d)}catch(y){u(y)}else u(m)})})}}],[{key:"requestUse",value:function(r){var s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{global:!0};if(typeof r!="function")throw new TypeError("Interceptor must be function!");s.global?i.requestInterceptors.push(r):this.instanceRequestInterceptors.push(r)}},{key:"responseUse",value:function(r){var s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{global:!0};if(typeof r!="function")throw new TypeError("Interceptor must be function!");s.global?i.responseInterceptors.push(r):this.instanceResponseInterceptors.push(r)}}]),i}();Core.requestInterceptors=[addfix];Core.responseInterceptors=[];function Cancel(i){this.message=i}Cancel.prototype.toString=function i(){return this.message?"Cancel: ".concat(this.message):"Cancel"};Cancel.prototype.__CANCEL__=!0;function CancelToken(i){if(typeof i!="function")throw new TypeError("executor must be a function.");var e;this.promise=new Promise(function(o){e=o});var r=this;i(function(o){r.reason||(r.reason=new Cancel(o),e(r.reason))})}CancelToken.prototype.throwIfRequested=function i(){if(this.reason)throw this.reason};CancelToken.source=function i(){var e,r=new CancelToken(function(o){e=o});return{token:r,cancel:e}};function isCancel(i){return!!(i&&i.__CANCEL__)}var request$1=function i(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=new Core(e),s=function(l){var c=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},u=mergeRequestOptions(r.initOptions,c);return r.request(l,u)};s.use=r.use.bind(r),s.fetchIndex=r.fetchIndex,s.interceptors={request:{use:Core.requestUse.bind(r)},response:{use:Core.responseUse.bind(r)}};var o=["get","post","delete","put","patch","head","options","rpc"];return o.forEach(function(a){s[a]=function(l,c){return s(l,_objectSpread2(_objectSpread2({},c),{},{method:a}))}}),s.Cancel=Cancel,s.CancelToken=CancelToken,s.isCancel=isCancel,s.extendOptions=r.extendOptions.bind(r),s.middlewares={instance:r.onion.middlewares,defaultInstance:r.onion.defaultMiddlewares,global:Onion.globalMiddlewares,core:Onion.coreMiddlewares},s},extend$1=function i(e){return request$1(e)};request$1({parseResponse:!1});var request$1$1=request$1({}),lodash_isemptyExports={},lodash_isempty={get exports(){return lodash_isemptyExports},set exports(i){lodash_isemptyExports=i}};(function(i,e){var r=9007199254740991,s="[object Arguments]",o="[object Function]",a="[object GeneratorFunction]",l="[object Map]",c="[object Object]",u="[object Promise]",m="[object Set]",g="[object WeakMap]",d="[object DataView]",y=/[\\^$.*+?()[\]{}|]/g,A=/^\[object .+?Constructor\]$/,b=typeof commonjsGlobal=="object"&&commonjsGlobal&&commonjsGlobal.Object===Object&&commonjsGlobal,S=typeof self=="object"&&self&&self.Object===Object&&self,E=b||S||Function("return this")(),x=e&&!e.nodeType&&e,C=x&&!0&&i&&!i.nodeType&&i,P=C&&C.exports===x;function k(ye,Ve){return ye==null?void 0:ye[Ve]}function I(ye){var Ve=!1;if(ye!=null&&typeof ye.toString!="function")try{Ve=!!(ye+"")}catch(Ue){}return Ve}function M(ye,Ve){return function(Ue){return ye(Ve(Ue))}}var T=Function.prototype,F=Object.prototype,D=E["__core-js_shared__"],N=function(){var ye=/[^.]+$/.exec(D&&D.keys&&D.keys.IE_PROTO||"");return ye?"Symbol(src)_1."+ye:""}(),O=T.toString,B=F.hasOwnProperty,V=F.toString,R=RegExp("^"+O.call(B).replace(y,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),Q=P?E.Buffer:void 0,_=F.propertyIsEnumerable,K=Q?Q.isBuffer:void 0,G=M(Object.keys,Object),U=ie(E,"DataView"),$=ie(E,"Map"),q=ie(E,"Promise"),W=ie(E,"Set"),xe=ie(E,"WeakMap"),ue=!_.call({valueOf:1},"valueOf"),Y=pe(U),J=pe($),ce=pe(q),ge=pe(W),Ee=pe(xe);function Ie(ye){return V.call(ye)}function De(ye){if(!Ce(ye)||H(ye))return!1;var Ve=Me(ye)||I(ye)?R:A;return Ve.test(pe(ye))}function ie(ye,Ve){var Ue=k(ye,Ve);return De(Ue)?Ue:void 0}var ae=Ie;(U&&ae(new U(new ArrayBuffer(1)))!=d||$&&ae(new $)!=l||q&&ae(q.resolve())!=u||W&&ae(new W)!=m||xe&&ae(new xe)!=g)&&(ae=function(ye){var Ve=V.call(ye),Ue=Ve==c?ye.constructor:void 0,je=Ue?pe(Ue):void 0;if(je)switch(je){case Y:return d;case J:return l;case ce:return u;case ge:return m;case Ee:return g}return Ve});function H(ye){return!!N&&N in ye}function ve(ye){var Ve=ye&&ye.constructor,Ue=typeof Ve=="function"&&Ve.prototype||F;return ye===Ue}function pe(ye){if(ye!=null){try{return O.call(ye)}catch(Ve){}try{return ye+""}catch(Ve){}}return""}function ee(ye){return Be(ye)&&B.call(ye,"callee")&&(!_.call(ye,"callee")||V.call(ye)==s)}var ne=Array.isArray;function me(ye){return ye!=null&&Le(ye.length)&&!Me(ye)}function Be(ye){return he(ye)&&me(ye)}var oe=K||Pe;function Ae(ye){if(me(ye)&&(ne(ye)||typeof ye=="string"||typeof ye.splice=="function"||oe(ye)||ee(ye)))return!ye.length;var Ve=ae(ye);if(Ve==l||Ve==m)return!ye.size;if(ue||ve(ye))return!G(ye).length;for(var Ue in ye)if(B.call(ye,Ue))return!1;return!0}function Me(ye){var Ve=Ce(ye)?V.call(ye):"";return Ve==o||Ve==a}function Le(ye){return typeof ye=="number"&&ye>-1&&ye%1==0&&ye<=r}function Ce(ye){var Ve=typeof ye;return!!ye&&(Ve=="object"||Ve=="function")}function he(ye){return!!ye&&typeof ye=="object"}function Pe(){return!1}i.exports=Ae})(lodash_isempty,lodash_isemptyExports);var objectTag$4="[object Object]";function isHostObject(i){var e=!1;if(i!=null&&typeof i.toString!="function")try{e=!!(i+"")}catch(r){}return e}function overArg$1(i,e){return function(r){return i(e(r))}}var funcProto$2=Function.prototype,objectProto$f=Object.prototype,funcToString$2=funcProto$2.toString,hasOwnProperty$c=objectProto$f.hasOwnProperty,objectCtorString=funcToString$2.call(Object),objectToString$1=objectProto$f.toString,getPrototype$2=overArg$1(Object.getPrototypeOf,Object);function isObjectLike$1(i){return!!i&&typeof i=="object"}function isPlainObject$2(i){if(!isObjectLike$1(i)||objectToString$1.call(i)!=objectTag$4||isHostObject(i))return!1;var e=getPrototype$2(i);if(e===null)return!0;var r=hasOwnProperty$c.call(e,"constructor")&&e.constructor;return typeof r=="function"&&r instanceof r&&funcToString$2.call(r)==objectCtorString}var lodash_isplainobject=isPlainObject$2,lodash_transformExports={},lodash_transform={get exports(){return lodash_transformExports},set exports(i){lodash_transformExports=i}};(function(i,e){var r=200,s="Expected a function",o="__lodash_hash_undefined__",a=1,l=2,c=1/0,u=9007199254740991,m="[object Arguments]",g="[object Array]",d="[object Boolean]",y="[object Date]",A="[object Error]",b="[object Function]",S="[object GeneratorFunction]",E="[object Map]",x="[object Number]",C="[object Object]",P="[object Promise]",k="[object RegExp]",I="[object Set]",M="[object String]",T="[object Symbol]",F="[object WeakMap]",D="[object ArrayBuffer]",N="[object DataView]",O="[object Float32Array]",B="[object Float64Array]",V="[object Int8Array]",R="[object Int16Array]",Q="[object Int32Array]",_="[object Uint8Array]",K="[object Uint8ClampedArray]",G="[object Uint16Array]",U="[object Uint32Array]",$=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,q=/^\w*$/,W=/^\./,xe=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,ue=/[\\^$.*+?()[\]{}|]/g,Y=/\\(\\)?/g,J=/^\[object .+?Constructor\]$/,ce=/^(?:0|[1-9]\d*)$/,ge={};ge[O]=ge[B]=ge[V]=ge[R]=ge[Q]=ge[_]=ge[K]=ge[G]=ge[U]=!0,ge[m]=ge[g]=ge[D]=ge[d]=ge[N]=ge[y]=ge[A]=ge[b]=ge[E]=ge[x]=ge[C]=ge[k]=ge[I]=ge[M]=ge[F]=!1;var Ee=typeof commonjsGlobal=="object"&&commonjsGlobal&&commonjsGlobal.Object===Object&&commonjsGlobal,Ie=typeof self=="object"&&self&&self.Object===Object&&self,De=Ee||Ie||Function("return this")(),ie=e&&!e.nodeType&&e,ae=ie&&!0&&i&&!i.nodeType&&i,H=ae&&ae.exports===ie,ve=H&&Ee.process,pe=function(){try{return ve&&ve.binding("util")}catch(se){}}(),ee=pe&&pe.isTypedArray;function ne(se,Ne){for(var ze=-1,Xe=se?se.length:0;++ze-1}function ft(se,Ne){var ze=this.__data__,Xe=Qt(ze,se);return Xe<0?ze.push([se,Ne]):ze[Xe][1]=Ne,this}Te.prototype.clear=Fe,Te.prototype.delete=He,Te.prototype.get=lt,Te.prototype.has=st,Te.prototype.set=ft;function Qe(se){var Ne=-1,ze=se?se.length:0;for(this.clear();++NeIt))return!1;var zt=ut.get(se);if(zt&&ut.get(Ne))return zt==Ne;var Yt=-1,Wt=!0,Kt=gt&a?new Nt:void 0;for(ut.set(se,Ne),ut.set(Ne,se);++Yt-1&&se%1==0&&se-1&&se%1==0&&se<=u}function mi(se){var Ne=typeof se;return!!se&&(Ne=="object"||Ne=="function")}function Ai(se){return!!se&&typeof se=="object"}function Ti(se){return typeof se=="symbol"||Ai(se)&&$e.call(se)==T}var Oi=ee?Ae(ee):be;function rn(se){return se==null?"":_t(se)}function sn(se,Ne,ze){var Xe=se==null?void 0:hi(se,Ne);return Xe===void 0?ze:Xe}function on(se,Ne){return se!=null&&Ji(se,Ne,Xt)}function bi(se){return Vi(se)?Vt(se):Ge(se)}function an(se,Ne,ze){var Xe=si(se)||Oi(se);if(Ne=Re(Ne),ze==null)if(Xe||mi(se)){var gt=se.constructor;Xe?ze=si(se)?new gt:[]:ze=ki(gt)?ni(dt(se)):{}}else ze={};return(Xe?ne:qt)(se,function(ut,wt,It){return Ne(ze,ut,wt,It)}),ze}function ln(se){return se}function cn(se){return yi(se)?Be(vi(se)):St(se)}i.exports=an})(lodash_transform,lodash_transformExports);const isEmpty$1=lodash_isemptyExports,isPlainObject$1=lodash_isplainobject,transform=lodash_transformExports;var src=function i(e,{cleanKeys:r=[],cleanValues:s=[],emptyArrays:o=!0,emptyObjects:a=!0,emptyStrings:l=!0,NaNValues:c=!1,nullValues:u=!0,undefinedValues:m=!0}={}){return transform(e,(g,d,y)=>{if(!r.includes(y)&&((Array.isArray(d)||isPlainObject$1(d))&&(d=i(d,{NaNValues:c,cleanKeys:r,cleanValues:s,emptyArrays:o,emptyObjects:a,emptyStrings:l,nullValues:u,undefinedValues:m})),!s.includes(d)&&!(a&&isPlainObject$1(d)&&isEmpty$1(d))&&!(o&&Array.isArray(d)&&!d.length)&&!(l&&d==="")&&!(c&&Number.isNaN(d))&&!(u&&d===null)&&!(m&&d===void 0))){if(Array.isArray(g))return g.push(d);g[y]=d}})};const whiteUrl=()=>({"/sysMusicScoreCategories/queryTree":"/eduMusicScore/queryTree","/sysMusicScoreAccompaniment/queryPage":queryString.parse(location.search).platform?"/sysMusicScoreAccompaniment/queryPage":"/eduMusicScore/queryPage","/sysMusicScoreAccompaniment/queryPageLimit":"/eduMusicScore/queryPageLimit","/sysMusicScoreAccompaniment/querySubjectIds":"/eduMusicScore/querySubjectIds"});whiteUrl();browser();getQuery();const request=extend$1({requestType:"form",timeout:1e4});request.interceptors.request.use((i,e)=>{const r=e.isContentCenter?"/cbs-app":storeData.platformApi;storeData.proxy+r,i=matchProductApiUrl()+i;const s=getToken(),o={};return s&&!e.isContentCenter&&(o.Authorization=s),{url:i,options:{...e,params:src(e.params),data:src(e.data),headers:{...e.headers,...o}}}},{global:!1});request.interceptors.response.use(async(i,e)=>{if(i.status>299||i.status<200){const s=i.statusText+", 状态码"+i.status;showToast(s)}const r=await i.clone().json();if(r.code===5e3)return r;if(r.code!==200&&r.errCode!==0){const s=r.msg||r.message||"处理失败,请重试";throw r.code===403||r.code,new Error(s)}return r},{global:!1});var dayjs_minExports={},dayjs_min={get exports(){return dayjs_minExports},set exports(i){dayjs_minExports=i}};(function(i,e){(function(r,s){i.exports=s()})(commonjsGlobal,function(){var r=1e3,s=6e4,o=36e5,a="millisecond",l="second",c="minute",u="hour",m="day",g="week",d="month",y="quarter",A="year",b="date",S="Invalid Date",E=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,x=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,C={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(V){var R=["th","st","nd","rd"],Q=V%100;return"["+V+(R[(Q-20)%10]||R[Q]||R[0])+"]"}},P=function(V,R,Q){var _=String(V);return!_||_.length>=R?V:""+Array(R+1-_.length).join(Q)+V},k={s:P,z:function(V){var R=-V.utcOffset(),Q=Math.abs(R),_=Math.floor(Q/60),K=Q%60;return(R<=0?"+":"-")+P(_,2,"0")+":"+P(K,2,"0")},m:function V(R,Q){if(R.date()1)return V(U[0])}else{var $=R.name;M[$]=R,K=$}return!_&&K&&(I=K),K||!_&&I},D=function(V,R){if(T(V))return V.clone();var Q=typeof R=="object"?R:{};return Q.date=V,Q.args=arguments,new O(Q)},N=k;N.l=F,N.i=T,N.w=function(V,R){return D(V,{locale:R.$L,utc:R.$u,x:R.$x,$offset:R.$offset})};var O=function(){function V(Q){this.$L=F(Q.locale,null,!0),this.parse(Q)}var R=V.prototype;return R.parse=function(Q){this.$d=function(_){var K=_.date,G=_.utc;if(K===null)return new Date(NaN);if(N.u(K))return new Date;if(K instanceof Date)return new Date(K);if(typeof K=="string"&&!/Z$/i.test(K)){var U=K.match(E);if(U){var $=U[2]-1||0,q=(U[7]||"0").substring(0,3);return G?new Date(Date.UTC(U[1],$,U[3]||1,U[4]||0,U[5]||0,U[6]||0,q)):new Date(U[1],$,U[3]||1,U[4]||0,U[5]||0,U[6]||0,q)}}return new Date(K)}(Q),this.$x=Q.x||{},this.init()},R.init=function(){var Q=this.$d;this.$y=Q.getFullYear(),this.$M=Q.getMonth(),this.$D=Q.getDate(),this.$W=Q.getDay(),this.$H=Q.getHours(),this.$m=Q.getMinutes(),this.$s=Q.getSeconds(),this.$ms=Q.getMilliseconds()},R.$utils=function(){return N},R.isValid=function(){return this.$d.toString()!==S},R.isSame=function(Q,_){var K=D(Q);return this.startOf(_)<=K&&K<=this.endOf(_)},R.isAfter=function(Q,_){return D(Q)=0&&d<=1){if(y._volume=d,y._muted)return y;y.usingWebAudio&&y.masterGain.gain.setValueAtTime(d,r.ctx.currentTime);for(var A=0;A=0;y--)d._howls[y].unload();return d.usingWebAudio&&d.ctx&&typeof d.ctx.close<"u"&&(d.ctx.close(),d.ctx=null,g()),d},codecs:function(d){return(this||r)._codecs[d.replace(/^x-/,"")]},_setup:function(){var d=this||r;if(d.state=d.ctx&&d.ctx.state||"suspended",d._autoSuspend(),!d.usingWebAudio)if(typeof Audio<"u")try{var y=new Audio;typeof y.oncanplaythrough>"u"&&(d._canPlayEvent="canplay")}catch(A){d.noAudio=!0}else d.noAudio=!0;try{var y=new Audio;y.muted&&(d.noAudio=!0)}catch(A){}return d.noAudio||d._setupCodecs(),d},_setupCodecs:function(){var d=this||r,y=null;try{y=typeof Audio<"u"?new Audio:null}catch(k){return d}if(!y||typeof y.canPlayType!="function")return d;var A=y.canPlayType("audio/mpeg;").replace(/^no$/,""),b=d._navigator?d._navigator.userAgent:"",S=b.match(/OPR\/([0-6].)/g),E=S&&parseInt(S[0].split("/")[1],10)<33,x=b.indexOf("Safari")!==-1&&b.indexOf("Chrome")===-1,C=b.match(/Version\/(.*?) /),P=x&&C&&parseInt(C[1],10)<15;return d._codecs={mp3:!!(!E&&(A||y.canPlayType("audio/mp3;").replace(/^no$/,""))),mpeg:!!A,opus:!!y.canPlayType('audio/ogg; codecs="opus"').replace(/^no$/,""),ogg:!!y.canPlayType('audio/ogg; codecs="vorbis"').replace(/^no$/,""),oga:!!y.canPlayType('audio/ogg; codecs="vorbis"').replace(/^no$/,""),wav:!!(y.canPlayType('audio/wav; codecs="1"')||y.canPlayType("audio/wav")).replace(/^no$/,""),aac:!!y.canPlayType("audio/aac;").replace(/^no$/,""),caf:!!y.canPlayType("audio/x-caf;").replace(/^no$/,""),m4a:!!(y.canPlayType("audio/x-m4a;")||y.canPlayType("audio/m4a;")||y.canPlayType("audio/aac;")).replace(/^no$/,""),m4b:!!(y.canPlayType("audio/x-m4b;")||y.canPlayType("audio/m4b;")||y.canPlayType("audio/aac;")).replace(/^no$/,""),mp4:!!(y.canPlayType("audio/x-mp4;")||y.canPlayType("audio/mp4;")||y.canPlayType("audio/aac;")).replace(/^no$/,""),weba:!!(!P&&y.canPlayType('audio/webm; codecs="vorbis"').replace(/^no$/,"")),webm:!!(!P&&y.canPlayType('audio/webm; codecs="vorbis"').replace(/^no$/,"")),dolby:!!y.canPlayType('audio/mp4; codecs="ec-3"').replace(/^no$/,""),flac:!!(y.canPlayType("audio/x-flac;")||y.canPlayType("audio/flac;")).replace(/^no$/,"")},d},_unlockAudio:function(){var d=this||r;if(!(d._audioUnlocked||!d.ctx)){d._audioUnlocked=!1,d.autoUnlock=!1,!d._mobileUnloaded&&d.ctx.sampleRate!==44100&&(d._mobileUnloaded=!0,d.unload()),d._scratchBuffer=d.ctx.createBuffer(1,1,22050);var y=function(A){for(;d._html5AudioPool.length"u"?P.noteOn(0):P.start(0),typeof d.ctx.resume=="function"&&d.ctx.resume(),P.onended=function(){P.disconnect(0),d._audioUnlocked=!0,document.removeEventListener("touchstart",y,!0),document.removeEventListener("touchend",y,!0),document.removeEventListener("click",y,!0),document.removeEventListener("keydown",y,!0);for(var k=0;k"u"||!r.usingWebAudio)){for(var y=0;y"u"||!r.usingWebAudio))return d.state==="running"&&d.ctx.state!=="interrupted"&&d._suspendTimer?(clearTimeout(d._suspendTimer),d._suspendTimer=null):d.state==="suspended"||d.state==="running"&&d.ctx.state==="interrupted"?(d.ctx.resume().then(function(){d.state="running";for(var y=0;y"u"&&(d="__default",!A._playLock)){for(var S=0,E=0;E0?x._seek:A._sprite[d][0]/1e3),k=Math.max(0,(A._sprite[d][0]+A._sprite[d][1])/1e3-P),I=k*1e3/Math.abs(x._rate),M=A._sprite[d][0]/1e3,T=(A._sprite[d][0]+A._sprite[d][1])/1e3;x._sprite=d,x._ended=!1;var F=function(){x._paused=!1,x._seek=P,x._start=M,x._stop=T,x._loop=!!(x._loop||A._sprite[d][2])};if(P>=T){A._ended(x);return}var D=x._node;if(A._webAudio){var N=function(){A._playLock=!1,F(),A._refreshBuffer(x);var R=x._muted||A._muted?0:x._volume;D.gain.setValueAtTime(R,r.ctx.currentTime),x._playStart=r.ctx.currentTime,typeof D.bufferSource.start>"u"?x._loop?D.bufferSource.noteGrainOn(0,P,86400):D.bufferSource.noteGrainOn(0,P,k):x._loop?D.bufferSource.start(0,P,86400):D.bufferSource.start(0,P,k),I!==1/0&&(A._endTimers[x._id]=setTimeout(A._ended.bind(A,x),I)),y||setTimeout(function(){A._emit("play",x._id),A._loadQueue()},0)};r.state==="running"&&r.ctx.state!=="interrupted"?N():(A._playLock=!0,A.once("resume",N),A._clearTimer(x._id))}else{var O=function(){D.currentTime=P,D.muted=x._muted||A._muted||r._muted||D.muted,D.volume=x._volume*r.volume(),D.playbackRate=x._rate;try{var R=D.play();if(R&&typeof Promise<"u"&&(R instanceof Promise||typeof R.then=="function")?(A._playLock=!0,F(),R.then(function(){A._playLock=!1,D._unlocked=!0,y?A._loadQueue():A._emit("play",x._id)}).catch(function(){A._playLock=!1,A._emit("playerror",x._id,"Playback was unable to start. This is most commonly an issue on mobile devices and Chrome where playback was not within a user interaction."),x._ended=!0,x._paused=!0})):y||(A._playLock=!1,F(),A._emit("play",x._id)),D.playbackRate=x._rate,D.paused){A._emit("playerror",x._id,"Playback was unable to start. This is most commonly an issue on mobile devices and Chrome where playback was not within a user interaction.");return}d!=="__default"||x._loop?A._endTimers[x._id]=setTimeout(A._ended.bind(A,x),I):(A._endTimers[x._id]=function(){A._ended(x),D.removeEventListener("ended",A._endTimers[x._id],!1)},D.addEventListener("ended",A._endTimers[x._id],!1))}catch(Q){A._emit("playerror",x._id,Q)}};D.src==="data:audio/wav;base64,UklGRigAAABXQVZFZm10IBIAAAABAAEARKwAAIhYAQACABAAAABkYXRhAgAAAAEA"&&(D.src=A._src,D.load());var B=window&&window.ejecta||!D.readyState&&r._navigator.isCocoonJS;if(D.readyState>=3||B)O();else{A._playLock=!0,A._state="loading";var V=function(){A._state="loaded",O(),D.removeEventListener(r._canPlayEvent,V,!1)};D.addEventListener(r._canPlayEvent,V,!1),A._clearTimer(x._id)}}return x._id},pause:function(d){var y=this;if(y._state!=="loaded"||y._playLock)return y._queue.push({event:"pause",action:function(){y.pause(d)}}),y;for(var A=y._getSoundIds(d),b=0;b"u"?S._node.bufferSource.noteOff(0):S._node.bufferSource.stop(0),y._cleanBuffer(S._node)}else(!isNaN(S._node.duration)||S._node.duration===1/0)&&S._node.pause();arguments[1]||y._emit("pause",S?S._id:null)}return y},stop:function(d,y){var A=this;if(A._state!=="loaded"||A._playLock)return A._queue.push({event:"stop",action:function(){A.stop(d)}}),A;for(var b=A._getSoundIds(d),S=0;S"u"?E._node.bufferSource.noteOff(0):E._node.bufferSource.stop(0),A._cleanBuffer(E._node)):(!isNaN(E._node.duration)||E._node.duration===1/0)&&(E._node.currentTime=E._start||0,E._node.pause(),E._node.duration===1/0&&A._clearSound(E._node))),y||A._emit("stop",E._id))}return A},mute:function(d,y){var A=this;if(A._state!=="loaded"||A._playLock)return A._queue.push({event:"mute",action:function(){A.mute(d,y)}}),A;if(typeof y>"u")if(typeof d=="boolean")A._muted=d;else return A._muted;for(var b=A._getSoundIds(y),S=0;S"u"){var S=d._getSoundIds(),E=S.indexOf(y[0]);E>=0?b=parseInt(y[0],10):A=parseFloat(y[0])}else y.length>=2&&(A=parseFloat(y[0]),b=parseInt(y[1],10));var x;if(typeof A<"u"&&A>=0&&A<=1){if(d._state!=="loaded"||d._playLock)return d._queue.push({event:"volume",action:function(){d.volume.apply(d,y)}}),d;typeof b>"u"&&(d._volume=A),b=d._getSoundIds(b);for(var C=0;C"u")}}return S},_startFadeInterval:function(d,y,A,b,S,E){var x=this,C=y,P=A-y,k=Math.abs(P/.01),I=Math.max(4,k>0?b/k:b),M=Date.now();d._fadeTo=A,d._interval=setInterval(function(){var T=(Date.now()-M)/b;M=Date.now(),C+=P*T,C=Math.round(C*100)/100,P<0?C=Math.max(A,C):C=Math.min(A,C),x._webAudio?d._volume=C:x.volume(C,d._id,!0),E&&(x._volume=C),(Ay&&C>=A)&&(clearInterval(d._interval),d._interval=null,d._fadeTo=null,x.volume(A,d._id),x._emit("fade",d._id))},I)},_stopFade:function(d){var y=this,A=y._soundById(d);return A&&A._interval&&(y._webAudio&&A._node.gain.cancelScheduledValues(r.ctx.currentTime),clearInterval(A._interval),A._interval=null,y.volume(A._fadeTo,d),A._fadeTo=null,y._emit("fade",d)),y},loop:function(){var d=this,y=arguments,A,b,S;if(y.length===0)return d._loop;if(y.length===1)if(typeof y[0]=="boolean")A=y[0],d._loop=A;else return S=d._soundById(parseInt(y[0],10)),S?S._loop:!1;else y.length===2&&(A=y[0],b=parseInt(y[1],10));for(var E=d._getSoundIds(b),x=0;x=0?b=parseInt(y[0],10):A=parseFloat(y[0])}else y.length===2&&(A=parseFloat(y[0]),b=parseInt(y[1],10));var x;if(typeof A=="number"){if(d._state!=="loaded"||d._playLock)return d._queue.push({event:"rate",action:function(){d.rate.apply(d,y)}}),d;typeof b>"u"&&(d._rate=A),b=d._getSoundIds(b);for(var C=0;C=0?b=parseInt(y[0],10):d._sounds.length&&(b=d._sounds[0]._id,A=parseFloat(y[0]))}else y.length===2&&(A=parseFloat(y[0]),b=parseInt(y[1],10));if(typeof b>"u")return 0;if(typeof A=="number"&&(d._state!=="loaded"||d._playLock))return d._queue.push({event:"seek",action:function(){d.seek.apply(d,y)}}),d;var x=d._soundById(b);if(x)if(typeof A=="number"&&A>=0){var C=d.playing(b);C&&d.pause(b,!0),x._seek=A,x._ended=!1,d._clearTimer(b),!d._webAudio&&x._node&&!isNaN(x._node.duration)&&(x._node.currentTime=A);var P=function(){C&&d.play(b,!0),d._emit("seek",b)};if(C&&!d._webAudio){var k=function(){d._playLock?setTimeout(k,0):P()};setTimeout(k,0)}else P()}else if(d._webAudio){var I=d.playing(b)?r.ctx.currentTime-x._playStart:0,M=x._rateSeek?x._rateSeek-x._seek:0;return x._seek+(M+I*Math.abs(x._rate))}else return x._node.currentTime;return d},playing:function(d){var y=this;if(typeof d=="number"){var A=y._soundById(d);return A?!A._paused:!1}for(var b=0;b=0&&r._howls.splice(b,1);var S=!0;for(A=0;A=0){S=!1;break}return a&&S&&delete a[d._src],r.noAudio=!1,d._state="unloaded",d._sounds=[],d=null,null},on:function(d,y,A,b){var S=this,E=S["_on"+d];return typeof y=="function"&&E.push(b?{id:A,fn:y,once:b}:{id:A,fn:y}),S},off:function(d,y,A){var b=this,S=b["_on"+d],E=0;if(typeof y=="number"&&(A=y,y=null),y||A)for(E=0;E=0;E--)(!S[E].id||S[E].id===y||d==="load")&&(setTimeout(function(x){x.call(this,y,A)}.bind(b,S[E].fn),0),S[E].once&&b.off(d,S[E].fn,S[E].id));return b._loadQueue(d),b},_loadQueue:function(d){var y=this;if(y._queue.length>0){var A=y._queue[0];A.event===d&&(y._queue.shift(),y._loadQueue()),d||A.action()}return y},_ended:function(d){var y=this,A=d._sprite;if(!y._webAudio&&d._node&&!d._node.paused&&!d._node.ended&&d._node.currentTime=0;b--){if(A<=y)return;d._sounds[b]._ended&&(d._webAudio&&d._sounds[b]._node&&d._sounds[b]._node.disconnect(0),d._sounds.splice(b,1),A--)}}},_getSoundIds:function(d){var y=this;if(typeof d>"u"){for(var A=[],b=0;b=0;if(r._scratchBuffer&&d.bufferSource&&(d.bufferSource.onended=null,d.bufferSource.disconnect(0),A))try{d.bufferSource.buffer=r._scratchBuffer}catch(b){}return d.bufferSource=null,y},_clearSound:function(d){var y=/MSIE |Trident\//.test(r._navigator&&r._navigator.userAgent);y||(d.src="data:audio/wav;base64,UklGRigAAABXQVZFZm10IBIAAAABAAEARKwAAIhYAQACABAAAABkYXRhAgAAAAEA")}};var o=function(d){this._parent=d,this.init()};o.prototype={init:function(){var d=this,y=d._parent;return d._muted=y._muted,d._loop=y._loop,d._volume=y._volume,d._rate=y._rate,d._seek=0,d._paused=!0,d._ended=!0,d._sprite="__default",d._id=++r._counter,y._sounds.push(d),d.create(),d},create:function(){var d=this,y=d._parent,A=r._muted||d._muted||d._parent._muted?0:d._volume;return y._webAudio?(d._node=typeof r.ctx.createGain>"u"?r.ctx.createGainNode():r.ctx.createGain(),d._node.gain.setValueAtTime(A,r.ctx.currentTime),d._node.paused=!0,d._node.connect(r.masterGain)):r.noAudio||(d._node=r._obtainHtml5Audio(),d._errorFn=d._errorListener.bind(d),d._node.addEventListener("error",d._errorFn,!1),d._loadFn=d._loadListener.bind(d),d._node.addEventListener(r._canPlayEvent,d._loadFn,!1),d._endFn=d._endListener.bind(d),d._node.addEventListener("ended",d._endFn,!1),d._node.src=y._src,d._node.preload=y._preload===!0?"auto":y._preload,d._node.volume=A*r.volume(),d._node.load()),d},reset:function(){var d=this,y=d._parent;return d._muted=y._muted,d._loop=y._loop,d._volume=y._volume,d._rate=y._rate,d._seek=0,d._rateSeek=0,d._paused=!0,d._ended=!0,d._sprite="__default",d._id=++r._counter,d},_errorListener:function(){var d=this;d._parent._emit("loaderror",d._id,d._node.error?d._node.error.code:0),d._node.removeEventListener("error",d._errorFn,!1)},_loadListener:function(){var d=this,y=d._parent;y._duration=Math.ceil(d._node.duration*10)/10,Object.keys(y._sprite).length===0&&(y._sprite={__default:[0,y._duration*1e3]}),y._state!=="loaded"&&(y._state="loaded",y._emit("load"),y._loadQueue()),d._node.removeEventListener(r._canPlayEvent,d._loadFn,!1)},_endListener:function(){var d=this,y=d._parent;y._duration===1/0&&(y._duration=Math.ceil(d._node.duration*10)/10,y._sprite.__default[1]===1/0&&(y._sprite.__default[1]=y._duration*1e3),y._ended(d)),d._node.removeEventListener("ended",d._endFn,!1)}};var a={},l=function(d){var y=d._src;if(a[y]){d._duration=a[y].duration,m(d);return}if(/^data:[^;]+;base64,/.test(y)){for(var A=atob(y.split(",")[1]),b=new Uint8Array(A.length),S=0;S0?(a[y._src]=S,m(y,S)):A()};typeof Promise<"u"&&r.ctx.decodeAudioData.length===1?r.ctx.decodeAudioData(d).then(b).catch(A):r.ctx.decodeAudioData(d,b,A)},m=function(d,y){y&&!d._duration&&(d._duration=y.duration),Object.keys(d._sprite).length===0&&(d._sprite={__default:[0,d._duration*1e3]}),d._state!=="loaded"&&(d._state="loaded",d._emit("load"),d._loadQueue())},g=function(){if(r.usingWebAudio){try{typeof AudioContext<"u"?r.ctx=new AudioContext:typeof webkitAudioContext<"u"?r.ctx=new webkitAudioContext:r.usingWebAudio=!1}catch(S){r.usingWebAudio=!1}r.ctx||(r.usingWebAudio=!1);var d=/iP(hone|od|ad)/.test(r._navigator&&r._navigator.platform),y=r._navigator&&r._navigator.appVersion.match(/OS (\d+)_(\d+)_?(\d+)?/),A=y?parseInt(y[1],10):null;if(d&&A&&A<9){var b=/safari/.test(r._navigator&&r._navigator.userAgent.toLowerCase());r._navigator&&!b&&(r.usingWebAudio=!1)}r.usingWebAudio&&(r.masterGain=typeof r.ctx.createGain>"u"?r.ctx.createGainNode():r.ctx.createGain(),r.masterGain.gain.setValueAtTime(r._muted?0:r._volume,r.ctx.currentTime),r.masterGain.connect(r.ctx.destination)),r._setup()}};i.Howler=r,i.Howl=s,typeof commonjsGlobal<"u"?(commonjsGlobal.HowlerGlobal=e,commonjsGlobal.Howler=r,commonjsGlobal.Howl=s,commonjsGlobal.Sound=o):typeof window<"u"&&(window.HowlerGlobal=e,window.Howler=r,window.Howl=s,window.Sound=o)})();/*! * Spatial Plugin - Adds support for stereo and 3D audio where Web Audio is supported. * * howler.js v2.2.3 * howlerjs.com * * (c) 2013-2020, James Simpson of GoldFire Studios * goldfirestudios.com * * MIT License */(function(){HowlerGlobal.prototype._pos=[0,0,0],HowlerGlobal.prototype._orientation=[0,0,-1,0,1,0],HowlerGlobal.prototype.stereo=function(r){var s=this;if(!s.ctx||!s.ctx.listener)return s;for(var o=s._howls.length-1;o>=0;o--)s._howls[o].stereo(r);return s},HowlerGlobal.prototype.pos=function(r,s,o){var a=this;if(!a.ctx||!a.ctx.listener)return a;if(s=typeof s!="number"?a._pos[1]:s,o=typeof o!="number"?a._pos[2]:o,typeof r=="number")a._pos=[r,s,o],typeof a.ctx.listener.positionX<"u"?(a.ctx.listener.positionX.setTargetAtTime(a._pos[0],Howler.ctx.currentTime,.1),a.ctx.listener.positionY.setTargetAtTime(a._pos[1],Howler.ctx.currentTime,.1),a.ctx.listener.positionZ.setTargetAtTime(a._pos[2],Howler.ctx.currentTime,.1)):a.ctx.listener.setPosition(a._pos[0],a._pos[1],a._pos[2]);else return a._pos;return a},HowlerGlobal.prototype.orientation=function(r,s,o,a,l,c){var u=this;if(!u.ctx||!u.ctx.listener)return u;var m=u._orientation;if(s=typeof s!="number"?m[1]:s,o=typeof o!="number"?m[2]:o,a=typeof a!="number"?m[3]:a,l=typeof l!="number"?m[4]:l,c=typeof c!="number"?m[5]:c,typeof r=="number")u._orientation=[r,s,o,a,l,c],typeof u.ctx.listener.forwardX<"u"?(u.ctx.listener.forwardX.setTargetAtTime(r,Howler.ctx.currentTime,.1),u.ctx.listener.forwardY.setTargetAtTime(s,Howler.ctx.currentTime,.1),u.ctx.listener.forwardZ.setTargetAtTime(o,Howler.ctx.currentTime,.1),u.ctx.listener.upX.setTargetAtTime(a,Howler.ctx.currentTime,.1),u.ctx.listener.upY.setTargetAtTime(l,Howler.ctx.currentTime,.1),u.ctx.listener.upZ.setTargetAtTime(c,Howler.ctx.currentTime,.1)):u.ctx.listener.setOrientation(r,s,o,a,l,c);else return m;return u},Howl.prototype.init=function(r){return function(s){var o=this;return o._orientation=s.orientation||[1,0,0],o._stereo=s.stereo||null,o._pos=s.pos||null,o._pannerAttr={coneInnerAngle:typeof s.coneInnerAngle<"u"?s.coneInnerAngle:360,coneOuterAngle:typeof s.coneOuterAngle<"u"?s.coneOuterAngle:360,coneOuterGain:typeof s.coneOuterGain<"u"?s.coneOuterGain:0,distanceModel:typeof s.distanceModel<"u"?s.distanceModel:"inverse",maxDistance:typeof s.maxDistance<"u"?s.maxDistance:1e4,panningModel:typeof s.panningModel<"u"?s.panningModel:"HRTF",refDistance:typeof s.refDistance<"u"?s.refDistance:1,rolloffFactor:typeof s.rolloffFactor<"u"?s.rolloffFactor:1},o._onstereo=s.onstereo?[{fn:s.onstereo}]:[],o._onpos=s.onpos?[{fn:s.onpos}]:[],o._onorientation=s.onorientation?[{fn:s.onorientation}]:[],r.call(this,s)}}(Howl.prototype.init),Howl.prototype.stereo=function(r,s){var o=this;if(!o._webAudio)return o;if(o._state!=="loaded")return o._queue.push({event:"stereo",action:function(){o.stereo(r,s)}}),o;var a=typeof Howler.ctx.createStereoPanner>"u"?"spatial":"stereo";if(typeof s>"u")if(typeof r=="number")o._stereo=r,o._pos=[r,0,0];else return o._stereo;for(var l=o._getSoundIds(s),c=0;c"u")if(typeof r=="number")l._pos=[r,s,o];else return l._pos;for(var c=l._getSoundIds(a),u=0;u"u")if(typeof r=="number")l._orientation=[r,s,o];else return l._orientation;for(var c=l._getSoundIds(a),u=0;u"u"&&(o.pannerAttr||(o.pannerAttr={coneInnerAngle:o.coneInnerAngle,coneOuterAngle:o.coneOuterAngle,coneOuterGain:o.coneOuterGain,distanceModel:o.distanceModel,maxDistance:o.maxDistance,refDistance:o.refDistance,rolloffFactor:o.rolloffFactor,panningModel:o.panningModel}),r._pannerAttr={coneInnerAngle:typeof o.pannerAttr.coneInnerAngle<"u"?o.pannerAttr.coneInnerAngle:r._coneInnerAngle,coneOuterAngle:typeof o.pannerAttr.coneOuterAngle<"u"?o.pannerAttr.coneOuterAngle:r._coneOuterAngle,coneOuterGain:typeof o.pannerAttr.coneOuterGain<"u"?o.pannerAttr.coneOuterGain:r._coneOuterGain,distanceModel:typeof o.pannerAttr.distanceModel<"u"?o.pannerAttr.distanceModel:r._distanceModel,maxDistance:typeof o.pannerAttr.maxDistance<"u"?o.pannerAttr.maxDistance:r._maxDistance,refDistance:typeof o.pannerAttr.refDistance<"u"?o.pannerAttr.refDistance:r._refDistance,rolloffFactor:typeof o.pannerAttr.rolloffFactor<"u"?o.pannerAttr.rolloffFactor:r._rolloffFactor,panningModel:typeof o.pannerAttr.panningModel<"u"?o.pannerAttr.panningModel:r._panningModel});else return l=r._soundById(parseInt(s[0],10)),l?l._pannerAttr:r._pannerAttr;else s.length===2&&(o=s[0],a=parseInt(s[1],10));for(var c=r._getSoundIds(a),u=0;u{var r,s;if(!midiData.playing)return;const i=state$1.times[midiData.index];if(!i)return;midiData.index++;const e=i.endtime-i.time;(s=(r=midiData.iframeRef)==null?void 0:r.contentWindow)==null||s.playNote(i.realKey,e),timer=setTimeout(()=>{playNote()},e/midiData.rate*1e3)},hanldeInitMidiData=i=>{midiData.iframeRef=i},hanldeSetMidiPlaybackRate=i=>{midiData.rate=i},setMidiCurrentTime=i=>{clearTimeout(timer),midiData.index=i,playNote()},scoreMode="_scoreMode_6lpfe_1",tipBox="_tipBox_6lpfe_5",tipContent$1="_tipContent_6lpfe_15",tipBtn="_tipBtn_6lpfe_18",hiddenPop="_hiddenPop_6lpfe_28",styles$v={scoreMode,tipBox,tipContent:tipContent$1,tipBtn,hiddenPop};var context={locks:{},zIndex:2e3,enableRipple:!0};reactive(context);const Context=reactive(context),isString=i=>typeof i=="string",isBoolean=i=>typeof i=="boolean",isNumber=i=>typeof i=="number",isPlainObject=i=>Object.prototype.toString.call(i)==="[object Object]",isFunction$2=i=>typeof i=="function",isArray$2=i=>Array.isArray(i),isURL=i=>i?/^(http)|(\.*\/)/.test(i):!1,toNumber=i=>i==null?0:isString(i)?(i=parseFloat(i),i=Number.isNaN(i)?0:i,i):isBoolean(i)?Number(i):i,removeItem=(i,e)=>{if(i.length){const r=i.indexOf(e);if(r>-1)return i.splice(r,1)}},inBrowser=()=>typeof window<"u",camelize=i=>i.replace(/-(\w)/g,(e,r)=>r.toUpperCase());function getViewportSize(){var{innerWidth:i,innerHeight:e}=window;return i>e?{vMin:e,vMax:i}:{vMin:i,vMax:e}}var isRem=i=>isString(i)&&i.endsWith("rem"),isPx=i=>isString(i)&&i.endsWith("px")||isNumber(i),isPercent=i=>isString(i)&&i.endsWith("%"),isVw=i=>isString(i)&&i.endsWith("vw"),isVh=i=>isString(i)&&i.endsWith("vh"),isVMin=i=>isString(i)&&i.endsWith("vmin"),isVMax=i=>isString(i)&&i.endsWith("vmax"),isCalc=i=>isString(i)&&i.startsWith("calc("),isVar=i=>isString(i)&&i.startsWith("var("),toPxNum=i=>{if(isNumber(i))return i;if(isPx(i))return+i.replace("px","");if(isVw(i))return+i.replace("vw","")*window.innerWidth/100;if(isVh(i))return+i.replace("vh","")*window.innerHeight/100;if(isRem(i)){var e=+i.replace("rem",""),r=window.getComputedStyle(document.documentElement).fontSize;return e*parseFloat(r)}return isVMin(i)?getViewportSize().vMin:isVMax(i)?getViewportSize().vMax:isString(i)?toNumber(i):0},toSizeUnit=i=>{if(i!=null)return isPercent(i)||isVw(i)||isVh(i)||isRem(i)||isCalc(i)||isVar(i)||isVMin(i)||isVMax(i)?i:toPxNum(i)+"px"},multiplySizeUnit=function(i,e){if(e===void 0&&(e=1),i!=null){var r=toSizeUnit(i),s=r.match(/(vh|%|rem|px|vw)$/)[0];return""+parseFloat(r)*e+s}};function supportTouch(){var i=typeof window<"u";return i&&"ontouchstart"in window}function useMounted(i){let e=!1;onMounted(()=>{i(),nextTick(()=>{e=!0})}),onActivated(()=>{e&&i()})}function useEventListener(i,e,r,s={}){if(!inBrowser())return;const{passive:o=!1,capture:a=!1}=s;let l=!1,c=!1;const u=y=>{if(l||c)return;const A=unref(y);A&&(A.addEventListener(e,r,{passive:o,capture:a}),l=!0)},m=y=>{if(!l||c)return;const A=unref(y);A&&(A.removeEventListener(e,r,{capture:a}),l=!1)};let g;isRef(i)&&(g=watch(()=>i.value,(y,A)=>{m(A),u(y)}));const d=()=>{g==null||g(),m(i),c=!0};return useMounted(()=>{u(i)}),onBeforeUnmount(()=>{m(i)}),onDeactivated(()=>{m(i)}),d}var __rest=globalThis&&globalThis.__rest||function(i,e){var r={};for(var s in i)Object.prototype.hasOwnProperty.call(i,s)&&e.indexOf(s)<0&&(r[s]=i[s]);if(i!=null&&typeof Object.getOwnPropertySymbols=="function")for(var o=0,s=Object.getOwnPropertySymbols(i);or.indexOf(l)),parentProvider:a,bindParent:m=>{onMounted(()=>{nextTick().then(()=>{s(l,m)})}),onBeforeUnmount(()=>{nextTick().then(()=>{o(l,m)})})}}}function flatVNodes(i){const e=[],r=s=>{if(s!=null&&s.component){r(s==null?void 0:s.component.subTree);return}Array.isArray(s==null?void 0:s.children)&&s.children.forEach(o=>{isVNode(o)&&(e.push(o),r(o))})};return r(i),e}function useChildren(i){const e=getCurrentInstance(),r=reactive([]),s=[],o=computed(()=>r.length),a=()=>{const m=flatVNodes(e.subTree);r.sort((g,d)=>m.indexOf(g.vnode)-m.indexOf(d.vnode))},l=(m,g)=>{r.push(m),s.push(g),a()},c=(m,g)=>{removeItem(r,m),removeItem(s,g)};return{length:o,childProviders:s,bindChildren:m=>{provide(i,Object.assign({childInstances:r,collect:l,clear:c},m))}}}function asyncGeneratorStep$1(i,e,r,s,o,a,l){try{var c=i[a](l),u=c.value}catch(m){r(m);return}c.done?e(u):Promise.resolve(u).then(s,o)}function _asyncToGenerator$1(i){return function(){var e=this,r=arguments;return new Promise(function(s,o){var a=i.apply(e,r);function l(u){asyncGeneratorStep$1(a,s,o,l,c,"next",u)}function c(u){asyncGeneratorStep$1(a,s,o,l,c,"throw",u)}l(void 0)})}}function _extends$5(){return _extends$5=Object.assign?Object.assign.bind():function(i){for(var e=1;e(r[s]=i[s],r),{}):i[e]}function mount(i){var e=createApp(i),r=document.createElement("div");return document.body.appendChild(r),{instance:e.mount(r),unmount(){e.unmount(),document.body.removeChild(r)}}}function mountInstance(i,e,r){e===void 0&&(e={}),r===void 0&&(r={});var s={setup(){return()=>h$4(i,_extends$5({},e,r))}},{unmount:o}=mount(s);return{unmountInstance:o}}function useValidation(){var i=ref(""),e=function(){var o=_asyncToGenerator$1(function*(a,l,c){if(!isArray$2(a)||!a.length)return!0;var u=yield Promise.all(a.map(m=>m(l,c)));return!u.some(m=>m!==!0?(i.value=String(m),!0):!1)});return function(l,c,u){return o.apply(this,arguments)}}(),r=()=>{i.value=""},s=function(){var o=_asyncToGenerator$1(function*(a,l,c,u,m){a.includes(l)&&(yield e(c,u,m))&&(i.value="")});return function(l,c,u,m,g){return o.apply(this,arguments)}}();return{errorMessage:i,validate:e,resetValidation:r,validateWithTrigger:s}}function useRouteListener(i){inBrowser()&&(useEventListener(window,"hashchange",i),useEventListener(window,"popstate",i))}function useTeleport(){var i=ref(!1);return onActivated(()=>{i.value=!1}),onDeactivated(()=>{i.value=!0}),{disabled:i}}function createNamespace(i){var e="var",r=e+"-"+i,s=a=>a?a[0]==="$"?a.replace("$",e):a.startsWith("--")?""+r+a:r+"__"+a:r,o=function(){for(var a=arguments.length,l=new Array(a),c=0;c{if(isArray$2(u)){var[m,g,d=null]=u;return m?g:d}return u})};return{n:s,classes:o}}function call(i){for(var e=arguments.length,r=new Array(e>1?e-1:0),s=1;so(...r));if(i)return i(...r)}function defineListenerProp(i){return{type:[Function,Array],default:i}}function formatElevation(i,e){return i===!1?null:(i===!0&&e&&(i=e),"var-elevation--"+i)}function _extends$4(){return _extends$4=Object.assign?Object.assign.bind():function(i){for(var e=1;e{e.tasker=null;var{x:s,y:o,centerX:a,centerY:l,size:c}=computeRippleStyles(this,i),u=document.createElement("div");u.classList.add(n$9()),u.style.opacity="0",u.style.transform="translate("+s+"px, "+o+"px) scale3d(.3, .3, .3)",u.style.width=c+"px",u.style.height=c+"px",e.color&&(u.style.backgroundColor=e.color),u.dataset.createdAt=String(performance.now()),setStyles(this),this.appendChild(u),window.setTimeout(()=>{u.style.transform="translate("+a+"px, "+l+"px) scale3d(1, 1, 1)",u.style.opacity=".25"},20)};e.tasker=window.setTimeout(r,30)}}function removeRipple(){var i=this._ripple,e=()=>{var r=this.querySelectorAll("."+n$9());if(r.length){var s=r[r.length-1],o=ANIMATION_DURATION-performance.now()+Number(s.dataset.createdAt);window.setTimeout(()=>{s.style.opacity="0",window.setTimeout(()=>{var a;return(a=s.parentNode)==null?void 0:a.removeChild(s)},ANIMATION_DURATION)},o)}};i.tasker?window.setTimeout(e,30):e()}function forbidRippleTask(){if(!(!supportTouch()||!Context.enableRipple)){var i=this._ripple;i.tasker&&window.clearTimeout(i.tasker),i.tasker=null}}function mounted$1(i,e){var r;i._ripple=_extends$4({tasker:null},(r=e.value)!=null?r:{},{removeRipple:removeRipple.bind(i)}),i.addEventListener("touchstart",createRipple,{passive:!0}),i.addEventListener("touchmove",forbidRippleTask,{passive:!0}),i.addEventListener("dragstart",removeRipple,{passive:!0}),document.addEventListener("touchend",i._ripple.removeRipple,{passive:!0}),document.addEventListener("touchcancel",i._ripple.removeRipple,{passive:!0})}function unmounted$1(i){i.removeEventListener("touchstart",createRipple),i.removeEventListener("touchmove",forbidRippleTask),i.removeEventListener("dragstart",removeRipple),document.removeEventListener("touchend",i._ripple.removeRipple),document.removeEventListener("touchcancel",i._ripple.removeRipple)}function updated$1(i,e){var r,s,o,a,l={color:(r=e.value)==null?void 0:r.color,disabled:(s=e.value)==null?void 0:s.disabled},c=l.color!==((o=i._ripple)==null?void 0:o.color)||l.disabled!==((a=i._ripple)==null?void 0:a.disabled);if(c){var u,m;i._ripple=_extends$4({tasker:l.disabled?null:(u=i._ripple)==null?void 0:u.tasker,removeRipple:(m=i._ripple)==null?void 0:m.removeRipple},l)}}var Ripple={mounted:mounted$1,unmounted:unmounted$1,updated:updated$1,install(i){i.directive("ripple",this)}};const Ripple$1=Ripple;function resolveLock(){var i=Object.keys(Context.locks).length;i<=0?document.body.classList.remove("var--lock"):document.body.classList.add("var--lock")}function addLock(i){Context.locks[i]=1,resolveLock()}function releaseLock(i){delete Context.locks[i],resolveLock()}function useLock(i,e){var{uid:r}=getCurrentInstance();e&&watch(e,s=>{s===!1?releaseLock(r):s===!0&&i()===!0&&addLock(r)}),watch(i,s=>{e&&e()===!1||(s===!0?addLock(r):releaseLock(r))}),onBeforeMount(()=>{e&&e()===!1||i()===!0&&addLock(r)}),onUnmounted(()=>{e&&e()===!1||i()===!0&&releaseLock(r)}),onActivated(()=>{e&&e()===!1||i()===!0&&addLock(r)}),onDeactivated(()=>{e&&e()===!1||i()===!0&&releaseLock(r)})}function useZIndex(i,e){var r=ref(Context.zIndex);return watch(i,s=>{s&&(Context.zIndex+=e,r.value=Context.zIndex)},{immediate:!0}),{zIndex:r}}var props$8={name:{type:String},size:{type:[Number,String]},color:{type:String},namespace:{type:String,default:"var-icon"},transition:{type:[Number,String],default:0},animationClass:{type:String},onClick:defineListenerProp()};function asyncGeneratorStep(i,e,r,s,o,a,l){try{var c=i[a](l),u=c.value}catch(m){r(m);return}c.done?e(u):Promise.resolve(u).then(s,o)}function _asyncToGenerator(i){return function(){var e=this,r=arguments;return new Promise(function(s,o){var a=i.apply(e,r);function l(u){asyncGeneratorStep(a,s,o,l,c,"next",u)}function c(u){asyncGeneratorStep(a,s,o,l,c,"throw",u)}l(void 0)})}}var{n:n$8,classes:classes$6}=createNamespace("icon");function __render__$8(i,e){return openBlock(),createBlock(resolveDynamicComponent(i.isURL(i.name)?"img":"i"),{class:normalizeClass(i.classes(i.n(),[i.namespace!==i.n(),i.namespace],i.namespace+"--set",[i.isURL(i.name),i.n("image"),i.namespace+"-"+i.nextName],[i.animateInProgress,i.animationClass==null?i.n("--shrinking"):i.animationClass])),style:normalizeStyle({color:i.color,"transition-duration":i.toNumber(i.transition)+"ms",width:i.isURL(i.name)?i.toSizeUnit(i.size):null,height:i.isURL(i.name)?i.toSizeUnit(i.size):null,fontSize:i.toSizeUnit(i.size)}),src:i.isURL(i.name)?i.nextName:null,onClick:i.onClick},null,8,["class","style","src","onClick"])}var __sfc__$8=defineComponent({name:"VarIcon",props:props$8,setup(i){var e=ref(""),r=ref(!1),s=function(){var o=_asyncToGenerator(function*(a,l){var{transition:c}=i;if(l==null||toNumber(c)===0){e.value=a;return}r.value=!0,yield nextTick(),setTimeout(()=>{l!=null&&(e.value=a),r.value=!1},toNumber(c))});return function(l,c){return o.apply(this,arguments)}}();return watch(()=>i.name,s,{immediate:!0}),{n:n$8,classes:classes$6,nextName:e,animateInProgress:r,isURL,toNumber,toSizeUnit}}});__sfc__$8.render=__render__$8;const Icon=__sfc__$8;Icon.install=function(i){i.component(Icon.name,Icon)};function typeValidator$3(i){return["circle","wave","cube","rect","disappear"].includes(i)}function sizeValidator$2(i){return["normal","mini","small","large"].includes(i)}var props$7={type:{type:String,default:"circle",validator:typeValidator$3},radius:{type:[String,Number]},size:{type:String,default:"normal",validator:sizeValidator$2},color:{type:String},description:{type:String},loading:{type:Boolean,default:!1}},{n:n$7,classes:classes$5}=createNamespace("loading"),_withScopeId=i=>(pushScopeId(""),i=i(),popScopeId(),i),_hoisted_1$3=_withScopeId(()=>createBaseVNode("svg",{viewBox:"25 25 50 50"},[createBaseVNode("circle",{cx:"50",cy:"50",r:"20",fill:"none"})],-1)),_hoisted_2$1=[_hoisted_1$3];function __render__$7(i,e){return openBlock(),createElementBlock("div",{class:normalizeClass(i.n())},[i.$slots.default?(openBlock(),createElementBlock("div",{key:0,class:normalizeClass(i.classes(i.n("content"),[i.loading,i.n("content--active")]))},[renderSlot(i.$slots,"default"),i.loading?(openBlock(),createElementBlock("div",{key:0,class:normalizeClass(i.n("content-mask"))},null,2)):createCommentVNode("v-if",!0)],2)):createCommentVNode("v-if",!0),i.isShow?(openBlock(),createElementBlock("div",{key:1,class:normalizeClass(i.classes(i.n("$--box"),i.n("body"),[i.$slots.default,i.n("inside")]))},[i.type==="circle"?(openBlock(),createElementBlock("div",{key:0,class:normalizeClass(i.n("circle"))},[createBaseVNode("span",{class:normalizeClass(i.classes(i.n("circle-block"),i.n("circle-block--"+i.size))),style:normalizeStyle({width:i.multiplySizeUnit(i.radius,2),height:i.multiplySizeUnit(i.radius,2),color:i.color})},_hoisted_2$1,6)],2)):createCommentVNode("v-if",!0),(openBlock(!0),createElementBlock(Fragment,null,renderList(i.loadingTypeDict,(r,s)=>(openBlock(),createElementBlock(Fragment,{key:s},[i.type===s?(openBlock(),createElementBlock("div",{key:0,class:normalizeClass(i.classes(i.n(s),i.n(s+"--"+i.size)))},[(openBlock(!0),createElementBlock(Fragment,null,renderList(r,o=>(openBlock(),createElementBlock("div",{key:o+s,style:normalizeStyle({backgroundColor:i.color}),class:normalizeClass(i.classes(i.n(s+"-item"),i.n(s+"-item--"+i.size)))},null,6))),128))],2)):createCommentVNode("v-if",!0)],64))),128)),i.$slots.description||i.description?(openBlock(),createElementBlock("div",{key:1,class:normalizeClass(i.classes(i.n("description"),i.n("description--"+i.size))),style:normalizeStyle({color:i.color})},[renderSlot(i.$slots,"description",{},()=>[createTextVNode(toDisplayString(i.description),1)])],6)):createCommentVNode("v-if",!0)],2)):createCommentVNode("v-if",!0)],2)}var __sfc__$7=defineComponent({name:"VarLoading",props:props$7,setup(i,e){var{slots:r}=e,s={wave:5,cube:4,rect:8,disappear:3},o=computed(()=>call(r.default)?i.loading:!0);return{n:n$7,classes:classes$5,multiplySizeUnit,loadingTypeDict:s,isShow:o}}});__sfc__$7.render=__render__$7;const Loading$1=__sfc__$7;Loading$1.install=function(i){i.component(Loading$1.name,Loading$1)};var props$6={hovering:{type:Boolean,default:!0}},{n:n$6,classes:classes$4}=createNamespace("hover-overlay");function __render__$6(i,e){return openBlock(),createElementBlock("div",{class:normalizeClass(i.classes(i.n(),[i.hovering,i.n("--hovering")]))},null,2)}var __sfc__$6=defineComponent({name:"VarHoverOverlay",props:props$6,setup(){return{n:n$6,classes:classes$4}}});__sfc__$6.render=__render__$6;const HoverOverlay=__sfc__$6;HoverOverlay.install=function(i){i.component(HoverOverlay.name,HoverOverlay)};function useHoverOverlay(){var i=ref(!1),e=r=>{i.value=r};return{hovering:i,handleHovering:e}}function shouldDisabled(i){if(!i)return!1;var e=/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent);return!!(i==="desktop"&&e||i==="mobile"&&!e)}function getStyle(i){var e=i.getAttribute("style");return e?e.split(";").filter(Boolean).reduce((r,s)=>{var[o,a]=s.split(":").map(l=>l.trim());return r[camelize(o)]=a,r},{}):{}}function updateRawStyle(i){var{value:e}=i._hover,r=getStyle(i);Object.keys(e).forEach(s=>{var o=camelize(s),a=e[o];a!=null&&r[o]&&(i._hover.rawStyle[o]=r[o])})}function updateStyle(i,e){Object.keys(e).forEach(r=>{var s=e[r];s!=null&&(i.style[r]=s)})}function clearStyle(i){Object.keys(i._hover.value).forEach(e=>{var r=i._hover.value[e];r!=null&&(i.style[e]="")})}function restoreStyle(i){clearStyle(i),updateStyle(i,i._hover.rawStyle)}function createHover(){var{value:i}=this._hover;if(this._hover.hovering=!0,isFunction$2(i)){i(this._hover.hovering);return}updateStyle(this,i)}function removeHover(){if(this._hover.hovering=!1,isFunction$2(this._hover.value)){this._hover.value(this._hover.hovering);return}restoreStyle(this)}function mounted(i,e){var r,s,{arg:o,value:a}=e;shouldDisabled(o)||(i._hover={value:a,hovering:(r=(s=i._hover)==null?void 0:s.hovering)!=null?r:!1,rawStyle:{}},updateRawStyle(i),i.addEventListener("mouseenter",createHover),i.addEventListener("mouseleave",removeHover))}function unmounted(i,e){shouldDisabled(e.arg)||(restoreStyle(i),i.removeEventListener("mouseenter",createHover),i.removeEventListener("mouseleave",removeHover))}function beforeUpdate(i,e){i._hover&&unmounted(i,e)}function shouldUpdateStyle(i,e){return!isFunction$2(e.value)&&i._hover.hovering}function updated(i,e){mounted(i,e),shouldUpdateStyle(i,e)&&updateStyle(i,e.value)}var Hover={mounted,unmounted,beforeUpdate,updated,install(i){i.directive("hover",this)}};const Hover$1=Hover;function _extends$3(){return _extends$3=Object.assign?Object.assign.bind():function(i){for(var e=1;e{if(!r)return{elevation:formatElevation(i.elevation,2),type:i.type!=null?i.type:"default",size:i.size!=null?i.size:"normal",color:i.color,text:i.text,textColor:i.textColor,outline:i.outline};var{type:m,size:g,color:d,textColor:y,mode:A}=r;return{elevation:"",type:i.type!=null?i.type:m.value,size:i.size!=null?i.size:g.value,color:i.color!=null?i.color:d.value,textColor:i.textColor!=null?i.textColor:y.value,text:A.value!=="normal",outline:A.value==="outline"}}),l=m=>{i.autoLoading&&(e.value=!0,m=isArray$2(m)?m:[m],Promise.all(m).then(()=>{e.value=!1}).catch(()=>{e.value=!1}))},c=m=>{var{loading:g,disabled:d,onClick:y}=i;!y||g||d||e.value||l(call(y,m))},u=m=>{var{loading:g,disabled:d,onTouchstart:y}=i;!y||g||d||e.value||l(call(y,m))};return{n:n$5,classes:classes$3,pending:e,states:a,hovering:s,handleHovering:o,handleClick:c,handleTouchstart:u}}});__sfc__$5.render=__render__$5;const Button=__sfc__$5;Button.install=function(i){i.component(Button.name,Button)};function typeValidator$1(i){return["default","primary","info","success","warning","danger"].includes(i)}function sizeValidator(i){return["normal","mini","small","large"].includes(i)}function modeValidator(i){return["normal","text","outline"].includes(i)}var props$4={type:{type:String,default:"default",validator:typeValidator$1},size:{type:String,default:"normal",validator:sizeValidator},color:{type:String},textColor:{type:String},mode:{type:String,default:"normal",validator:modeValidator},elevation:{type:[Boolean,Number,String],default:!0},vertical:{type:Boolean,default:!1}},{n:n$4,classes:classes$2}=createNamespace("button-group");function __render__$4(i,e){return openBlock(),createElementBlock("div",{class:normalizeClass(i.classes(i.n(),i.n("$--box"),[i.mode,""+i.n("--mode-"+i.mode)],[i.vertical,i.n("--vertical"),i.n("--horizontal")],[i.mode==="normal",i.formatElevation(i.elevation,2)]))},[renderSlot(i.$slots,"default")],2)}var __sfc__$4=defineComponent({name:"VarButtonGroup",props:props$4,setup(i){var{bindButtons:e}=useButtons(),r={elevation:computed(()=>i.elevation),type:computed(()=>i.type),size:computed(()=>i.size),color:computed(()=>i.color),textColor:computed(()=>i.textColor),mode:computed(()=>i.mode)};return e(r),{n:n$4,classes:classes$2,formatElevation}}});__sfc__$4.render=__render__$4;const ButtonGroup=__sfc__$4;ButtonGroup.install=function(i){i.component(ButtonGroup.name,ButtonGroup)};var props$3={errorMessage:{type:String,default:""},extraMessage:{type:String,default:""}},{n:n$3}=createNamespace("form-details"),_hoisted_1$1={key:0},_hoisted_2={key:0};function __render__$3(i,e){return openBlock(),createBlock(Transition,{name:i.n()},{default:withCtx(()=>[i.errorMessage||i.extraMessage?(openBlock(),createElementBlock("div",{key:0,class:normalizeClass(i.n())},[createBaseVNode("div",{class:normalizeClass(i.n("error-message"))},[createVNode(Transition,{name:i.n("message")},{default:withCtx(()=>[i.errorMessage?(openBlock(),createElementBlock("div",_hoisted_1$1,toDisplayString(i.errorMessage),1)):createCommentVNode("v-if",!0)]),_:1},8,["name"])],2),createBaseVNode("div",{class:normalizeClass(i.n("extra-message"))},[createVNode(Transition,{name:i.n("message")},{default:withCtx(()=>[i.extraMessage?(openBlock(),createElementBlock("div",_hoisted_2,toDisplayString(i.extraMessage),1)):createCommentVNode("v-if",!0)]),_:1},8,["name"])],2)],2)):createCommentVNode("v-if",!0)]),_:1},8,["name"])}var __sfc__$3=defineComponent({name:"VarFormDetails",props:props$3,setup:()=>({n:n$3})});__sfc__$3.render=__render__$3;const FormDetails=__sfc__$3;FormDetails.install=function(i){i.component(FormDetails.name,FormDetails)};function _extends$2(){return _extends$2=Object.assign?Object.assign.bind():function(i){for(var e=1;e{r(_extends$2({},a,{instance:s}))}:null;return{index:e,form:i,bindForm:o}}function _extends$1(){return _extends$1=Object.assign?Object.assign.bind():function(i){for(var e=1;e[createTextVNode(toDisplayString(i.content),1)])],2),createBaseVNode("div",{class:normalizeClass(i.n("action"))},[i.iconName?(openBlock(),createBlock(r,{key:0,name:i.iconName},null,8,["name"])):createCommentVNode("v-if",!0),i.type==="loading"?(openBlock(),createBlock(s,{key:1,type:i.loadingType,size:i.loadingSize,color:i.loadingColor,radius:i.loadingRadius},null,8,["type","size","color","radius"])):createCommentVNode("v-if",!0),renderSlot(i.$slots,"action")],2)],6)],6)),[[vShow,i.show]])}var __sfc__$2=defineComponent({name:"VarSnackbarCore",components:{VarLoading:Loading$1,VarIcon:Icon},props:props$2,setup(i){var e=ref(null),{zIndex:r}=useZIndex(()=>i.show,1);useLock(()=>i.show,()=>i.lockScroll);var s=computed(()=>i.type==="loading"||i.forbidClick),o=computed(()=>i.type?ICON_TYPE_DICT[i.type]:""),a=()=>{e.value=setTimeout(()=>{i.type!=="loading"&&call(i["onUpdate:show"],!1)},i.duration)};return watch(()=>i.show,l=>{l?(call(i.onOpen),a()):l===!1&&(clearTimeout(e.value),call(i.onClose))}),watch(()=>i._update,()=>{clearTimeout(e.value),a()}),useMounted(()=>{i.show&&(call(i.onOpen),a())}),{SNACKBAR_TYPE,n:n$2,classes:classes$1,zIndex:r,iconName:o,isForbidClick:s}}});__sfc__$2.render=__render__$2;const VarSnackbarCore=__sfc__$2;var{n:n$1}=createNamespace("snackbar");function __render__$1(i,e){var r=resolveComponent("var-snackbar-core");return openBlock(),createBlock(Teleport,{to:i.teleport,disabled:i.disabled},[createVNode(Transition,{name:i.n()+"-fade",onAfterEnter:i.onOpened,onAfterLeave:i.onClosed},{default:withCtx(()=>[createVNode(r,mergeProps(i.$props,{class:i.n("transition")}),{action:withCtx(()=>[renderSlot(i.$slots,"action")]),default:withCtx(()=>[renderSlot(i.$slots,"default",{},()=>[createTextVNode(toDisplayString(i.content),1)])]),_:3},16,["class"])]),_:3},8,["name","onAfterEnter","onAfterLeave"])],8,["to","disabled"])}var __sfc__$1=defineComponent({name:"VarSnackbar",components:{VarSnackbarCore},props:props$2,setup(){var{disabled:i}=useTeleport();return{n:n$1,disabled:i}}});__sfc__$1.render=__render__$1;const VarSnackbar=__sfc__$1;function _extends(){return _extends=Object.assign?Object.assign.bind():function(i){for(var e=1;e{},onOpened:()=>{},onClose:()=>{},onClosed:()=>{}},uniqSnackbarOptions=reactive([]),defaultOptions=defaultOptionsValue,transitionGroupProps={name:"var-snackbar-fade",tag:"div",class:"var-transition-group"},TransitionGroupHost={setup(){return()=>{var i=uniqSnackbarOptions.map(e=>{var{id:r,reactiveSnackOptions:s,_update:o}=e,a=document.querySelector(".var-transition-group");s.forbidClick||s.type==="loading"?a.classList.add("var-pointer-auto"):a.classList.remove("var-pointer-auto"),isAllowMultiple&&(s.position="top");var l=isAllowMultiple?"relative":"absolute",c=_extends({position:l},getTop(s.position));return createVNode(VarSnackbarCore,mergeProps(s,{key:r,style:c,"data-id":r,_update:o,show:s.show,"onUpdate:show":u=>s.show=u}),null)});return createVNode(TransitionGroup,mergeProps(transitionGroupProps,{style:{zIndex:Context.zIndex},onAfterEnter:opened,onAfterLeave:removeUniqOption}),_isSlot$1(i)?i:{default:()=>[i]})}}},Snackbar=function(i){var e=normalizeOptions(i),r=reactive(_extends({},defaultOptions,e));r.show=!0,isMount||(isMount=!0,unmount=mountInstance(TransitionGroupHost).unmountInstance);var{length:s}=uniqSnackbarOptions,o={id:sid++,reactiveSnackOptions:r};if(s===0||isAllowMultiple)addUniqOption(o);else{var a="update-"+sid;updateUniqOption(r,a)}return{clear(){!isAllowMultiple&&uniqSnackbarOptions.length?uniqSnackbarOptions[0].reactiveSnackOptions.show=!1:r.show=!1}}};SNACKBAR_TYPE.forEach(i=>{Snackbar[i]=e=>(isPlainObject(e)?e.type=i:e={content:e,type:i},Snackbar(e))});Snackbar.install=function(i){i.component(VarSnackbar.name,VarSnackbar)};Snackbar.allowMultiple=function(i){i===void 0&&(i=!1),i!==isAllowMultiple&&(uniqSnackbarOptions.forEach(e=>{e.reactiveSnackOptions.show=!1}),isAllowMultiple=i)};Snackbar.clear=function(){uniqSnackbarOptions.forEach(i=>{i.reactiveSnackOptions.show=!1})};Snackbar.setDefaultOptions=function(i){defaultOptions=i};Snackbar.resetDefaultOptions=function(){defaultOptions=defaultOptionsValue};Snackbar.Component=VarSnackbar;function opened(i){var e=i.getAttribute("data-id"),r=uniqSnackbarOptions.find(s=>s.id===toNumber(e));r&&call(r.reactiveSnackOptions.onOpened)}function removeUniqOption(i){i.parentElement&&i.parentElement.classList.remove("var-pointer-auto");var e=i.getAttribute("data-id"),r=uniqSnackbarOptions.find(o=>o.id===toNumber(e));r&&(r.animationEnd=!0,call(r.reactiveSnackOptions.onClosed));var s=uniqSnackbarOptions.every(o=>o.animationEnd);s&&(call(unmount),uniqSnackbarOptions=reactive([]),isMount=!1)}function addUniqOption(i){uniqSnackbarOptions.push(i)}function normalizeOptions(i){return i===void 0&&(i={}),isString(i)?{content:i}:i}function updateUniqOption(i,e){var[r]=uniqSnackbarOptions;r.reactiveSnackOptions=_extends({},r.reactiveSnackOptions,i),r._update=e}function getTop(i){return i===void 0&&(i="top"),i==="bottom"?{[i]:"5%"}:{top:i==="top"?"5%":"45%"}}VarSnackbar.install=function(i){i.component(VarSnackbar.name,VarSnackbar)};const Snackbar$1=Snackbar;var props$1={modelValue:{default:!1},activeValue:{default:!0},inactiveValue:{default:!1},disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},color:{type:String},loadingColor:{type:String},closeColor:{type:String},size:{type:[String,Number]},rules:{type:Array},ripple:{type:Boolean,default:!0},onClick:defineListenerProp(),onChange:defineListenerProp(),"onUpdate:modelValue":defineListenerProp()},{n,classes}=createNamespace("switch");function __render__(i,e){var r=resolveComponent("var-loading"),s=resolveComponent("var-hover-overlay"),o=resolveComponent("var-form-details"),a=resolveDirective("ripple"),l=resolveDirective("hover");return withDirectives((openBlock(),createElementBlock("div",{class:normalizeClass(i.n())},[createBaseVNode("div",{class:normalizeClass(i.classes(i.n("block"),[i.disabled||i.formDisabled,i.n("--disabled")])),onClick:e[0]||(e[0]=function(){return i.switchActive&&i.switchActive(...arguments)}),style:normalizeStyle(i.styleComputed.switch)},[createBaseVNode("div",{style:normalizeStyle(i.styleComputed.track),class:normalizeClass(i.classes(i.n("track"),[i.modelValue===i.activeValue,i.n("track--active")],[i.errorMessage,i.n("track--error")]))},null,6),withDirectives((openBlock(),createElementBlock("div",{class:normalizeClass(i.classes(i.n("ripple"),[i.modelValue===i.activeValue,i.n("ripple--active")])),style:normalizeStyle(i.styleComputed.ripple)},[createBaseVNode("div",{style:normalizeStyle(i.styleComputed.handle),class:normalizeClass(i.classes(i.n("handle"),i.n("$-elevation--2"),[i.modelValue===i.activeValue,i.n("handle--active")],[i.errorMessage,i.n("handle--error")]))},[i.loading?(openBlock(),createBlock(r,{key:0,radius:i.radius,color:"currentColor"},null,8,["radius"])):createCommentVNode("v-if",!0)],6),createVNode(s,{hovering:i.hovering},null,8,["hovering"])],6)),[[a,{disabled:!i.ripple||i.disabled||i.loading||i.formDisabled}]])],6),createVNode(o,{"error-message":i.errorMessage},null,8,["error-message"])],2)),[[l,i.hover,"desktop"]])}var __sfc__=defineComponent({name:"VarSwitch",components:{VarLoading:Loading$1,VarFormDetails:FormDetails,VarHoverOverlay:HoverOverlay},directives:{Ripple:Ripple$1,Hover:Hover$1},props:props$1,setup(i){var{bindForm:e,form:r}=useForm(),{errorMessage:s,validateWithTrigger:o,validate:a,resetValidation:l}=useValidation(),{hovering:c,handleHovering:u}=useHoverOverlay(),m=()=>a(i.rules,i.modelValue),g=()=>nextTick(()=>o(["onChange"],"onChange",i.rules,i.modelValue)),d=computed(()=>{var{size:x,modelValue:C,color:P,closeColor:k,loadingColor:I,activeValue:M}=i;return{handle:{width:multiplySizeUnit(x),height:multiplySizeUnit(x),backgroundColor:C===M?P:k,color:I},ripple:{left:C===M?multiplySizeUnit(x,.5):"-"+multiplySizeUnit(x,.5),color:C===M?P:k||"#999",width:multiplySizeUnit(x,2),height:multiplySizeUnit(x,2)},track:{height:multiplySizeUnit(x,.72),width:multiplySizeUnit(x,1.9),borderRadius:multiplySizeUnit(x,2/3),filter:C===M||s!=null&&s.value?void 0:"brightness(.6)",backgroundColor:C===M?P:k},switch:{height:multiplySizeUnit(x,1.2),width:multiplySizeUnit(x,2)}}}),y=computed(()=>{var{size:x="5.333vw"}=i;return multiplySizeUnit(x,.4)}),A=x=>{var{onClick:C,onChange:P,disabled:k,loading:I,readonly:M,modelValue:T,activeValue:F,inactiveValue:D,"onUpdate:modelValue":N}=i;if(call(C,x),!(k||I||M||r!=null&&r.disabled.value||r!=null&&r.readonly.value)){var O=T===F?D:F;call(P,O),call(N,O),g()}},b=x=>{i.disabled||r!=null&&r.disabled.value||u(x)},S=()=>{call(i["onUpdate:modelValue"],i.inactiveValue),l()},E={reset:S,validate:m,resetValidation:l};return call(e,E),{n,classes,switchActive:A,hovering:c,hover:b,radius:y,styleComputed:d,errorMessage:s,formDisabled:r==null?void 0:r.disabled,formReadonly:r==null?void 0:r.readonly}}});__sfc__.render=__render__;const Switch=__sfc__;Switch.install=function(i){i.component(Switch.name,Switch)};const Image1=""+new URL("../png/5-d8bfbf51.png",import.meta.url).href,Image2=""+new URL("../png/4-cfa387c7.png",import.meta.url).href,Image3=""+new URL("../png/3-d02c685a.png",import.meta.url).href,Image4=""+new URL("../png/2-5c4c2ef5.png",import.meta.url).href,Image5=""+new URL("../png/1-a0d5037d.png",import.meta.url).href,clx1=""+new URL("../svg/clx5-f9cec754.svg",import.meta.url).href,clx2=""+new URL("../svg/clx4-2bbc0c38.svg",import.meta.url).href,clx3=""+new URL("../svg/clx3-c5121d5e.svg",import.meta.url).href,clx4=""+new URL("../svg/clx2-1c450860.svg",import.meta.url).href,clx5=""+new URL("../svg/clx1-04861a74.svg",import.meta.url).href,good="data:image/png;base64,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",bad$1="data:image/png;base64,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",perfect="data:image/png;base64,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",great="data:image/png;base64,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",scoreIcon={good,bad:bad$1,perfect,great},leveByScoreMeasureIcons=[{icon:scoreIcon.bad,text:"bad",color:"#EE4C6A"},{icon:scoreIcon.good,text:"good",color:"#FF958B"},{icon:scoreIcon.great,text:"great",color:"#FF8E5A"},{icon:scoreIcon.perfect,text:"perfect",color:"#516AFF"}],icons$6=[{img:Image1,tips:"你的演奏不太好,再练一练吧~",mome:"敢于尝试",clxImg:clx1,clxtip:"你的演奏不太好,音准和完整性还需加强,再练一练吧~",clxmome:"敢于尝试"},{img:Image2,tips:"你的演奏还不熟练,加紧训练才能有好成绩哦~",mome:"还要加油哦~",clxImg:clx2,clxtip:"你的演奏还不熟练,音准和完整性还需加强,加紧训练才能有好成绩哦~",clxmome:"还要加油哦~"},{img:Image3,tips:"你的演奏还不流畅,科学的练习才能更完美哦~",mome:"突破自我",clxImg:clx3,clxtip:"你的演奏还不流畅,音准和节奏还需加强,科学的练习才能更完美哦~",clxmome:"突破自我"},{img:Image4,tips:"你的演奏还不错,继续加油吧,离完美就差一步啦~",mome:"崭露头角",clxImg:clx4,clxtip:"你的演奏还不错,继续加油吧,加强音准,离完美就差一步啦~",clxmome:"崭露头角"},{img:Image5,tips:"你的演奏完美无缺,继续努力吧~",mome:"你很棒",clxImg:clx5,clxtip:"你的演奏非常不错,音准的把握和节奏稍有瑕疵,完整性把握的很好~",clxmome:"你很棒"}],getLeveByScore=i=>{if(!i&&typeof i!="number")return{};let e=0;return i>20&&i<=40?e=1:i>40&&i<=60?e=2:i>60&&i<=80?e=3:i>80&&(e=4),{...icons$6[e],leve:e}},getLeveByScoreMeasure=i=>{if(!i&&typeof i!="number")return{};let e=0;return i>=40&&i<70?e=1:i>=70&&i<90?e=2:i>=90&&(e=3),e},dots="_dots_grcfh_1",dot$2="_dot_grcfh_1",hide="_hide_grcfh_21",styles$u={dots,dot:dot$2,hide},tickData=reactive({len:0,reduceLen:0,tickEnd:!1,beatLengthInMilliseconds:0,index:0,show:!1}),isUseSystemBeat=computed(()=>state$1.playType==="play"&&!state$1.isOpenMetronome||state$1.playType==="sing"&&!state$1.isSingOpenMetronome),useLen=computed(()=>isUseSystemBeat.value?tickData.reduceLen:tickData.len);let _time;function closeTick(){tickData.show&&(_time&&clearTimeout(_time),tickData.tickEnd=!0,tickData.show=!1)}const handlePlay=(i,e)=>new Promise(r=>{_time=setTimeout(()=>{if(tickData.tickEnd){r(i);return}if(tickData.index++,e&&isUseSystemBeat.value){const s=state$1.setting.beatVolume/100;e.volume=s,e.volume<=0?e.muted=!0:e.muted=!1,e.play()}r(i)},tickData.beatLengthInMilliseconds)}),audioData$2=reactive({tick:null,tock:null}),createAudio=i=>new Promise(e=>{const r=new Audio(i);r.load(),r.onloadedmetadata=()=>{e(r)},r.onerror=()=>{e(null)}}),handleInitTick=i=>{for(tickData.len=i;i>4&&i%2===0;)i=i/2;tickData.reduceLen=i},handleStartTick=async()=>{tickData.show=!0,tickData.tickEnd=!1,tickData.index=0,tickData.beatLengthInMilliseconds=60/state$1.speed*1e3;for(let i=0;i<=useLen.value;i++){if(tickData.tickEnd)return!1;const e=i===0?audioData$2.tick:i===useLen.value?null:audioData$2.tock;await handlePlay(i,e)}return tickData.show=!1,!0},Tick=defineComponent({name:"metronome",setup(){const i={top:"0px",left:"0px"};e();function e(){const r=document.querySelector("#musicAndSelection"),s=r==null?void 0:r.querySelector("#osmdSvgPage1"),o=s==null?void 0:s.querySelector(".staffline"),a=r==null?void 0:r.getBoundingClientRect(),l=s==null?void 0:s.getBoundingClientRect(),c=o==null?void 0:o.getBoundingClientRect();Object.assign(i,{top:((l==null?void 0:l.top)||0)-((a==null?void 0:a.top)||0)-18+"px",left:((c==null?void 0:c.left)||0)-((l==null?void 0:l.left)||0)+"px"})}return onMounted(()=>{Promise.all([createAudio(tickWav),createAudio(tockWav)]).then(([r,s])=>{r&&(audioData$2.tick=r),s&&(audioData$2.tock=s)})}),()=>tickData.show&&createVNode("div",{class:styles$u.dots,style:i},[Array.from({length:useLen.value}).map((r,s)=>createVNode("div",{class:[styles$u.dot,useLen.value-tickData.index<=s&&styles$u.hide]},null))])}}),fraction$4="_fraction_8vx8x_1",close$3="_close_8vx8x_11",bg$2="_bg_8vx8x_18",content$9="_content_8vx8x_21",title$a="_title_8vx8x_21",desc="_desc_8vx8x_29",btn$a="_btn_8vx8x_37",loadColumn="_loadColumn_8vx8x_42",loadIcon="_loadIcon_8vx8x_57",successIcon="_successIcon_8vx8x_61",styles$t={fraction:fraction$4,close:close$3,bg:bg$2,content:content$9,title:title$a,desc,btn:btn$a,loadColumn,loadIcon,successIcon};var lottieExports={},lottie={get exports(){return lottieExports},set exports(i){lottieExports=i}};(function(module,exports){typeof navigator<"u"&&function(i,e){module.exports=e()}(commonjsGlobal,function(){var svgNS="http://www.w3.org/2000/svg",locationHref="",_useWebWorker=!1,initialDefaultFrame=-999999,setWebWorker=function(e){_useWebWorker=!!e},getWebWorker=function(){return _useWebWorker},setLocationHref=function(e){locationHref=e},getLocationHref=function(){return locationHref};function createTag(i){return document.createElement(i)}function extendPrototype(i,e){var r,s=i.length,o;for(r=0;r1?r[1]=1:r[1]<=0&&(r[1]=0),HSVtoRGB(r[0],r[1],r[2])}function addBrightnessToRGB(i,e){var r=RGBtoHSV(i[0]*255,i[1]*255,i[2]*255);return r[2]+=e,r[2]>1?r[2]=1:r[2]<0&&(r[2]=0),HSVtoRGB(r[0],r[1],r[2])}function addHueToRGB(i,e){var r=RGBtoHSV(i[0]*255,i[1]*255,i[2]*255);return r[0]+=e/360,r[0]>1?r[0]-=1:r[0]<0&&(r[0]+=1),HSVtoRGB(r[0],r[1],r[2])}var rgbToHex=function(){var i=[],e,r;for(e=0;e<256;e+=1)r=e.toString(16),i[e]=r.length===1?"0"+r:r;return function(s,o,a){return s<0&&(s=0),o<0&&(o=0),a<0&&(a=0),"#"+i[s]+i[o]+i[a]}}(),setSubframeEnabled=function(e){subframeEnabled=!!e},getSubframeEnabled=function(){return subframeEnabled},setExpressionsPlugin=function(e){expressionsPlugin=e},getExpressionsPlugin=function(){return expressionsPlugin},setExpressionInterfaces=function(e){expressionsInterfaces=e},getExpressionInterfaces=function(){return expressionsInterfaces},setDefaultCurveSegments=function(e){defaultCurveSegments=e},getDefaultCurveSegments=function(){return defaultCurveSegments},setIdPrefix=function(e){idPrefix$1=e};function createNS(i){return document.createElementNS(svgNS,i)}function _typeof$5(i){return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?_typeof$5=function(r){return typeof r}:_typeof$5=function(r){return r&&typeof Symbol=="function"&&r.constructor===Symbol&&r!==Symbol.prototype?"symbol":typeof r},_typeof$5(i)}var dataManager=function(){var i=1,e=[],r,s,o={onmessage:function(){},postMessage:function(A){r({data:A})}},a={postMessage:function(A){o.onmessage({data:A})}};function l(y){if(window.Worker&&window.Blob&&getWebWorker()){var A=new Blob(["var _workerSelf = self; self.onmessage = ",y.toString()],{type:"text/javascript"}),b=URL.createObjectURL(A);return new Worker(b)}return r=y,o}function c(){s||(s=l(function(A){function b(){function E(Q,_){var K,G,U=Q.length,$,q,W,xe;for(G=0;G=0;_-=1)if(Q[_].ty==="sh")if(Q[_].ks.k.i)I(Q[_].ks.k);else for(U=Q[_].ks.k.length,G=0;GK[0]?!0:K[0]>Q[0]?!1:Q[1]>K[1]?!0:K[1]>Q[1]?!1:Q[2]>K[2]?!0:K[2]>Q[2]?!1:null}var T=function(){var Q=[4,4,14];function _(G){var U=G.t.d;G.t.d={k:[{s:U,t:0}]}}function K(G){var U,$=G.length;for(U=0;U<$;U+=1)G[U].ty===5&&_(G[U])}return function(G){if(M(Q,G.v)&&(K(G.layers),G.assets)){var U,$=G.assets.length;for(U=0;U<$;U+=1)G.assets[U].layers&&K(G.assets[U].layers)}}}(),F=function(){var Q=[4,7,99];return function(_){if(_.chars&&!M(Q,_.v)){var K,G=_.chars.length;for(K=0;K=0;U-=1)if(G[U].ty==="sh")if(G[U].ks.k.i)G[U].ks.k.c=G[U].closed;else for(W=G[U].ks.k.length,q=0;q500)&&(this._imageLoaded(),clearInterval(P)),C+=1}.bind(this),50)}function a(x){var C=s(x,this.assetsPath,this.path),P=createNS("image");isSafari?this.testImageLoaded(P):P.addEventListener("load",this._imageLoaded,!1),P.addEventListener("error",function(){k.img=i,this._imageLoaded()}.bind(this),!1),P.setAttributeNS("http://www.w3.org/1999/xlink","href",C),this._elementHelper.append?this._elementHelper.append(P):this._elementHelper.appendChild(P);var k={img:P,assetData:x};return k}function l(x){var C=s(x,this.assetsPath,this.path),P=createTag("img");P.crossOrigin="anonymous",P.addEventListener("load",this._imageLoaded,!1),P.addEventListener("error",function(){k.img=i,this._imageLoaded()}.bind(this),!1),P.src=C;var k={img:P,assetData:x};return k}function c(x){var C={assetData:x},P=s(x,this.assetsPath,this.path);return dataManager.loadData(P,function(k){C.img=k,this._footageLoaded()}.bind(this),function(){C.img={},this._footageLoaded()}.bind(this)),C}function u(x,C){this.imagesLoadedCb=C;var P,k=x.length;for(P=0;Pthis.animationData.op&&(this.animationData.op=i.op,this.totalFrames=Math.floor(i.op-this.animationData.ip));var e=this.animationData.layers,r,s=e.length,o=i.layers,a,l=o.length;for(a=0;athis.timeCompleted&&(this.currentFrame=this.timeCompleted),this.trigger("enterFrame"),this.renderFrame(),this.trigger("drawnFrame")},AnimationItem.prototype.renderFrame=function(){if(!(this.isLoaded===!1||!this.renderer))try{this.expressionsPlugin&&this.expressionsPlugin.resetFrame(),this.renderer.renderFrame(this.currentFrame+this.firstFrame)}catch(i){this.triggerRenderFrameError(i)}},AnimationItem.prototype.play=function(i){i&&this.name!==i||this.isPaused===!0&&(this.isPaused=!1,this.trigger("_play"),this.audioController.resume(),this._idle&&(this._idle=!1,this.trigger("_active")))},AnimationItem.prototype.pause=function(i){i&&this.name!==i||this.isPaused===!1&&(this.isPaused=!0,this.trigger("_pause"),this._idle=!0,this.trigger("_idle"),this.audioController.pause())},AnimationItem.prototype.togglePause=function(i){i&&this.name!==i||(this.isPaused===!0?this.play():this.pause())},AnimationItem.prototype.stop=function(i){i&&this.name!==i||(this.pause(),this.playCount=0,this._completedLoop=!1,this.setCurrentRawFrameValue(0))},AnimationItem.prototype.getMarkerData=function(i){for(var e,r=0;r=this.totalFrames-1&&this.frameModifier>0?!this.loop||this.playCount===this.loop?this.checkSegments(e>this.totalFrames?e%this.totalFrames:0)||(r=!0,e=this.totalFrames-1):e>=this.totalFrames?(this.playCount+=1,this.checkSegments(e%this.totalFrames)||(this.setCurrentRawFrameValue(e%this.totalFrames),this._completedLoop=!0,this.trigger("loopComplete"))):this.setCurrentRawFrameValue(e):e<0?this.checkSegments(e%this.totalFrames)||(this.loop&&!(this.playCount--<=0&&this.loop!==!0)?(this.setCurrentRawFrameValue(this.totalFrames+e%this.totalFrames),this._completedLoop?this.trigger("loopComplete"):this._completedLoop=!0):(r=!0,e=0)):this.setCurrentRawFrameValue(e),r&&(this.setCurrentRawFrameValue(e),this.pause(),this.trigger("complete"))}},AnimationItem.prototype.adjustSegment=function(i,e){this.playCount=0,i[1]0&&(this.playSpeed<0?this.setSpeed(-this.playSpeed):this.setDirection(-1)),this.totalFrames=i[0]-i[1],this.timeCompleted=this.totalFrames,this.firstFrame=i[1],this.setCurrentRawFrameValue(this.totalFrames-.001-e)):i[1]>i[0]&&(this.frameModifier<0&&(this.playSpeed<0?this.setSpeed(-this.playSpeed):this.setDirection(1)),this.totalFrames=i[1]-i[0],this.timeCompleted=this.totalFrames,this.firstFrame=i[0],this.setCurrentRawFrameValue(.001+e)),this.trigger("segmentStart")},AnimationItem.prototype.setSegment=function(i,e){var r=-1;this.isPaused&&(this.currentRawFrame+this.firstFramee&&(r=e-i)),this.firstFrame=i,this.totalFrames=e-i,this.timeCompleted=this.totalFrames,r!==-1&&this.goToAndStop(r,!0)},AnimationItem.prototype.playSegments=function(i,e){if(e&&(this.segments.length=0),_typeof$4(i[0])==="object"){var r,s=i.length;for(r=0;r=0;K-=1)e[K].animation.destroy(_)}function F(_,K,G){var U=[].concat([].slice.call(document.getElementsByClassName("lottie")),[].slice.call(document.getElementsByClassName("bodymovin"))),$,q=U.length;for($=0;$0?k=F:P=F;while(Math.abs(T)>a&&++D=o?E(P,O,k,I):B===0?O:S(P,T,T+u,k,I)}},i}(),pooling=function(){function i(e){return e.concat(createSizedArray(e.length))}return{double:i}}(),poolFactory=function(){return function(i,e,r){var s=0,o=i,a=createSizedArray(o),l={newElement:c,release:u};function c(){var m;return s?(s-=1,m=a[s]):m=e(),m}function u(m){s===o&&(a=pooling.double(a),o*=2),r&&r(m),a[s]=m,s+=1}return l}}(),bezierLengthPool=function(){function i(){return{addedLength:0,percents:createTypedArray("float32",getDefaultCurveSegments()),lengths:createTypedArray("float32",getDefaultCurveSegments())}}return poolFactory(8,i)}(),segmentsLengthPool=function(){function i(){return{lengths:[],totalLength:0}}function e(r){var s,o=r.lengths.length;for(s=0;s-.001&&C<.001}function r(y,A,b,S,E,x,C,P,k){if(b===0&&x===0&&k===0)return e(y,A,S,E,C,P);var I=i.sqrt(i.pow(S-y,2)+i.pow(E-A,2)+i.pow(x-b,2)),M=i.sqrt(i.pow(C-y,2)+i.pow(P-A,2)+i.pow(k-b,2)),T=i.sqrt(i.pow(C-S,2)+i.pow(P-E,2)+i.pow(k-x,2)),F;return I>M?I>T?F=I-M-T:F=T-M-I:T>M?F=T-M-I:F=M-I-T,F>-1e-4&&F<1e-4}var s=function(){return function(y,A,b,S){var E=getDefaultCurveSegments(),x,C,P,k,I,M=0,T,F=[],D=[],N=bezierLengthPool.newElement();for(P=b.length,x=0;xC?-1:1,I=!0;I;)if(S[x]<=C&&S[x+1]>C?(P=(C-S[x])/(S[x+1]-S[x]),I=!1):x+=k,x<0||x>=E-1){if(x===E-1)return b[x];I=!1}return b[x]+(b[x+1]-b[x])*P}function m(y,A,b,S,E,x){var C=u(E,x),P=1-C,k=i.round((P*P*P*y[0]+(C*P*P+P*C*P+P*P*C)*b[0]+(C*C*P+P*C*C+C*P*C)*S[0]+C*C*C*A[0])*1e3)/1e3,I=i.round((P*P*P*y[1]+(C*P*P+P*C*P+P*P*C)*b[1]+(C*C*P+P*C*C+C*P*C)*S[1]+C*C*C*A[1])*1e3)/1e3;return[k,I]}var g=createTypedArray("float32",8);function d(y,A,b,S,E,x,C){E<0?E=0:E>1&&(E=1);var P=u(E,C);x=x>1?1:x;var k=u(x,C),I,M=y.length,T=1-P,F=1-k,D=T*T*T,N=P*T*T*3,O=P*P*T*3,B=P*P*P,V=T*T*F,R=P*T*F+T*P*F+T*T*k,Q=P*P*F+T*P*k+P*T*k,_=P*P*k,K=T*F*F,G=P*F*F+T*k*F+T*F*k,U=P*k*F+T*k*k+P*F*k,$=P*k*k,q=F*F*F,W=k*F*F+F*k*F+F*F*k,xe=k*k*F+F*k*k+k*F*k,ue=k*k*k;for(I=0;I=m.t-r){u.h&&(u=m),o=0;break}if(m.t-r>i){o=a;break}a=x||i=x?k.points.length-1:0;for(y=k.points[I].point.length,d=0;d=F&&M=x)s[0]=P[0],s[1]=P[1],s[2]=P[2];else if(i<=C)s[0]=u.s[0],s[1]=u.s[1],s[2]=u.s[2];else{var R=createQuaternion(u.s),Q=createQuaternion(P),_=(i-C)/(x-C);quaternionToEuler(s,slerp(R,Q,_))}else for(a=0;a=x?A=1:i1e-6?(y=Math.acos(A),b=Math.sin(y),S=Math.sin((1-r)*y)/b,E=Math.sin(r*y)/b):(S=1-r,E=r),s[0]=S*o+E*u,s[1]=S*a+E*m,s[2]=S*l+E*g,s[3]=S*c+E*d,s}function quaternionToEuler(i,e){var r=e[0],s=e[1],o=e[2],a=e[3],l=Math.atan2(2*s*a-2*r*o,1-2*s*s-2*o*o),c=Math.asin(2*r*s+2*o*a),u=Math.atan2(2*r*a-2*s*o,1-2*r*r-2*o*o);i[0]=l/degToRads,i[1]=c/degToRads,i[2]=u/degToRads}function createQuaternion(i){var e=i[0]*degToRads,r=i[1]*degToRads,s=i[2]*degToRads,o=Math.cos(e/2),a=Math.cos(r/2),l=Math.cos(s/2),c=Math.sin(e/2),u=Math.sin(r/2),m=Math.sin(s/2),g=o*a*l-c*u*m,d=c*u*l+o*a*m,y=c*a*l+o*u*m,A=o*u*l-c*a*m;return[d,y,A,g]}function getValueAtCurrentTime(){var i=this.comp.renderedFrame-this.offsetTime,e=this.keyframes[0].t-this.offsetTime,r=this.keyframes[this.keyframes.length-1].t-this.offsetTime;if(!(i===this._caching.lastFrame||this._caching.lastFrame!==initFrame&&(this._caching.lastFrame>=r&&i>=r||this._caching.lastFrame=i&&(this._caching._lastKeyframeIndex=-1,this._caching.lastIndex=0);var s=this.interpolateValue(i,this._caching);this.pv=s}return this._caching.lastFrame=i,this.pv}function setVValue(i){var e;if(this.propType==="unidimensional")e=i*this.mult,mathAbs(this.v-e)>1e-5&&(this.v=e,this._mdf=!0);else for(var r=0,s=this.v.length;r1e-5&&(this.v[r]=e,this._mdf=!0),r+=1}function processEffectsSequence(){if(!(this.elem.globalData.frameId===this.frameId||!this.effectsSequence.length)){if(this.lock){this.setVValue(this.pv);return}this.lock=!0,this._mdf=this._isFirstFrame;var i,e=this.effectsSequence.length,r=this.kf?this.pv:this.data.k;for(i=0;i=this._maxLength&&this.doubleArrayLength(),r){case"v":a=this.v;break;case"i":a=this.i;break;case"o":a=this.o;break;default:a=[];break}(!a[s]||a[s]&&!o)&&(a[s]=pointPool.newElement()),a[s][0]=i,a[s][1]=e},ShapePath.prototype.setTripleAt=function(i,e,r,s,o,a,l,c){this.setXYAt(i,e,"v",l,c),this.setXYAt(r,s,"o",l,c),this.setXYAt(o,a,"i",l,c)},ShapePath.prototype.reverse=function(){var i=new ShapePath;i.setPathData(this.c,this._length);var e=this.v,r=this.o,s=this.i,o=0;this.c&&(i.setTripleAt(e[0][0],e[0][1],s[0][0],s[0][1],r[0][0],r[0][1],0,!1),o=1);var a=this._length-1,l=this._length,c;for(c=o;c=R[R.length-1].t-this.offsetTime)I=R[R.length-1].s?R[R.length-1].s[0]:R[R.length-2].e[0],T=!0;else{for(var Q=k,_=R.length-1,K=!0,G,U,$;K&&(G=R[Q],U=R[Q+1],!(U.t-this.offsetTime>x));)Q<_-1?Q+=1:K=!1;if($=this.keyframesMetadata[Q]||{},T=G.h===1,k=Q,!T){if(x>=U.t-this.offsetTime)B=1;else if(xP&&x>P)||(this._caching.lastIndex=k0||G>-1e-6&&G<0?s(G*U)/U:G}function K(){var G=this.props,U=_(G[0]),$=_(G[1]),q=_(G[4]),W=_(G[5]),xe=_(G[12]),ue=_(G[13]);return"matrix("+U+","+$+","+q+","+W+","+xe+","+ue+")"}return function(){this.reset=o,this.rotate=a,this.rotateX=l,this.rotateY=c,this.rotateZ=u,this.skew=g,this.skewFromAxis=d,this.shear=m,this.scale=y,this.setTransform=A,this.translate=b,this.transform=S,this.multiply=E,this.applyToPoint=I,this.applyToX=M,this.applyToY=T,this.applyToZ=F,this.applyToPointArray=V,this.applyToTriplePoints=B,this.applyToPointStringified=R,this.toCSS=Q,this.to2dCSS=K,this.clone=P,this.cloneFromProps=k,this.equals=C,this.inversePoints=O,this.inversePoint=N,this.getInverseMatrix=D,this._t=this.transform,this.isIdentity=x,this._identity=!0,this._identityCalculated=!1,this.props=createTypedArray("float32",16),this.reset()}}();function _typeof$3(i){return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?_typeof$3=function(r){return typeof r}:_typeof$3=function(r){return r&&typeof Symbol=="function"&&r.constructor===Symbol&&r!==Symbol.prototype?"symbol":typeof r},_typeof$3(i)}var lottie={};function setLocation(i){setLocationHref(i)}function searchAnimations(){animationManager.searchAnimations()}function setSubframeRendering(i){setSubframeEnabled(i)}function setPrefix(i){setIdPrefix(i)}function loadAnimation(i){return animationManager.loadAnimation(i)}function setQuality(i){if(typeof i=="string")switch(i){case"high":setDefaultCurveSegments(200);break;default:case"medium":setDefaultCurveSegments(50);break;case"low":setDefaultCurveSegments(10);break}else!isNaN(i)&&i>1&&setDefaultCurveSegments(i)}function inBrowser(){return typeof navigator<"u"}function installPlugin(i,e){i==="expressions"&&setExpressionsPlugin(e)}function getFactory(i){switch(i){case"propertyFactory":return PropertyFactory;case"shapePropertyFactory":return ShapePropertyFactory;case"matrix":return Matrix;default:return null}}lottie.play=animationManager.play,lottie.pause=animationManager.pause,lottie.setLocationHref=setLocation,lottie.togglePause=animationManager.togglePause,lottie.setSpeed=animationManager.setSpeed,lottie.setDirection=animationManager.setDirection,lottie.stop=animationManager.stop,lottie.searchAnimations=searchAnimations,lottie.registerAnimation=animationManager.registerAnimation,lottie.loadAnimation=loadAnimation,lottie.setSubframeRendering=setSubframeRendering,lottie.resize=animationManager.resize,lottie.goToAndStop=animationManager.goToAndStop,lottie.destroy=animationManager.destroy,lottie.setQuality=setQuality,lottie.inBrowser=inBrowser,lottie.installPlugin=installPlugin,lottie.freeze=animationManager.freeze,lottie.unfreeze=animationManager.unfreeze,lottie.setVolume=animationManager.setVolume,lottie.mute=animationManager.mute,lottie.unmute=animationManager.unmute,lottie.getRegisteredAnimations=animationManager.getRegisteredAnimations,lottie.useWebWorker=setWebWorker,lottie.setIDPrefix=setPrefix,lottie.__getFactory=getFactory,lottie.version="5.12.2";function checkReady(){document.readyState==="complete"&&(clearInterval(readyStateCheckInterval),searchAnimations())}function getQueryVariable(i){for(var e=queryString.split("&"),r=0;r=1?a.push({s:i-1,e:e-1}):(a.push({s:i,e:1}),a.push({s:0,e:e-1}));var l=[],c,u=a.length,m;for(c=0;cs+r)){var g,d;m.s*o<=s?g=0:g=(m.s*o-s)/r,m.e*o>=s+r?d=1:d=(m.e*o-s)/r,l.push([g,d])}return l.length||l.push([0,0]),l},TrimModifier.prototype.releasePathsData=function(i){var e,r=i.length;for(e=0;e1?e=1+s:this.s.v<0?e=0+s:e=this.s.v+s,this.e.v>1?r=1+s:this.e.v<0?r=0+s:r=this.e.v+s,e>r){var o=e;e=r,r=o}e=Math.round(e*1e4)*1e-4,r=Math.round(r*1e4)*1e-4,this.sValue=e,this.eValue=r}else e=this.sValue,r=this.eValue;var a,l,c=this.shapes.length,u,m,g,d,y,A=0;if(r===e)for(l=0;l=0;l-=1)if(S=this.shapes[l],S.shape._mdf){for(E=S.localShapeCollection,E.releaseShapes(),this.m===2&&c>1?(k=this.calculateShapeEdges(e,r,S.totalShapeLength,P,A),P+=S.totalShapeLength):k=[[x,C]],m=k.length,u=0;u=1?b.push({s:S.totalShapeLength*(x-1),e:S.totalShapeLength*(C-1)}):(b.push({s:S.totalShapeLength*x,e:S.totalShapeLength}),b.push({s:0,e:S.totalShapeLength*(C-1)}));var I=this.addShapes(S,b[0]);if(b[0].s!==b[0].e){if(b.length>1){var M=S.shape.paths.shapes[S.shape.paths._length-1];if(M.c){var T=I.pop();this.addPaths(I,E),I=this.addShapes(S,b[1],T)}else this.addPaths(I,E),I=this.addShapes(S,b[1])}this.addPaths(I,E)}}S.shape.paths=E}}},TrimModifier.prototype.addPaths=function(i,e){var r,s=i.length;for(r=0;re.e){r.c=!1;break}else e.s<=m&&e.e>=m+g.addedLength?(this.addSegment(o[a].v[c-1],o[a].o[c-1],o[a].i[c],o[a].v[c],r,d,E),E=!1):(A=bez.getNewSegment(o[a].v[c-1],o[a].v[c],o[a].o[c-1],o[a].i[c],(e.s-m)/g.addedLength,(e.e-m)/g.addedLength,y[c-1]),this.addSegmentFromArray(A,r,d,E),E=!1,r.c=!1),m+=g.addedLength,d+=1;if(o[a].c&&y.length){if(g=y[c-1],m<=e.e){var x=y[c-1].addedLength;e.s<=m&&e.e>=m+x?(this.addSegment(o[a].v[c-1],o[a].o[c-1],o[a].i[0],o[a].v[0],r,d,E),E=!1):(A=bez.getNewSegment(o[a].v[c-1],o[a].v[0],o[a].o[c-1],o[a].i[0],(e.s-m)/x,(e.e-m)/x,y[c-1]),this.addSegmentFromArray(A,r,d,E),E=!1,r.c=!1)}else r.c=!1;m+=g.addedLength,d+=1}if(r._length&&(r.setXYAt(r.v[S][0],r.v[S][1],"i",S),r.setXYAt(r.v[r._length-1][0],r.v[r._length-1][1],"o",r._length-1)),m>e.e)break;a=this.p.keyframes[this.p.keyframes.length-1].t?(g=this.p.getValueAtTime(this.p.keyframes[this.p.keyframes.length-1].t/m,0),d=this.p.getValueAtTime((this.p.keyframes[this.p.keyframes.length-1].t-.05)/m,0)):(g=this.p.pv,d=this.p.getValueAtTime((this.p._caching.lastFrame+this.p.offsetTime-.01)/m,this.p.offsetTime));else if(this.px&&this.px.keyframes&&this.py.keyframes&&this.px.getValueAtTime&&this.py.getValueAtTime){g=[],d=[];var y=this.px,A=this.py;y._caching.lastFrame+y.offsetTime<=y.keyframes[0].t?(g[0]=y.getValueAtTime((y.keyframes[0].t+.01)/m,0),g[1]=A.getValueAtTime((A.keyframes[0].t+.01)/m,0),d[0]=y.getValueAtTime(y.keyframes[0].t/m,0),d[1]=A.getValueAtTime(A.keyframes[0].t/m,0)):y._caching.lastFrame+y.offsetTime>=y.keyframes[y.keyframes.length-1].t?(g[0]=y.getValueAtTime(y.keyframes[y.keyframes.length-1].t/m,0),g[1]=A.getValueAtTime(A.keyframes[A.keyframes.length-1].t/m,0),d[0]=y.getValueAtTime((y.keyframes[y.keyframes.length-1].t-.01)/m,0),d[1]=A.getValueAtTime((A.keyframes[A.keyframes.length-1].t-.01)/m,0)):(g=[y.pv,A.pv],d[0]=y.getValueAtTime((y._caching.lastFrame+y.offsetTime-.01)/m,y.offsetTime),d[1]=A.getValueAtTime((A._caching.lastFrame+A.offsetTime-.01)/m,A.offsetTime))}else d=i,g=d;this.v.rotate(-Math.atan2(g[1]-d[1],g[0]-d[0]))}this.data.p&&this.data.p.s?this.data.p.z?this.v.translate(this.px.v,this.py.v,-this.pz.v):this.v.translate(this.px.v,this.py.v,0):this.v.translate(this.p.v[0],this.p.v[1],-this.p.v[2])}this.frameId=this.elem.globalData.frameId}}function s(){if(this.appliedTransformations=0,this.pre.reset(),!this.a.effectsSequence.length)this.pre.translate(-this.a.v[0],-this.a.v[1],this.a.v[2]),this.appliedTransformations=1;else return;if(!this.s.effectsSequence.length)this.pre.scale(this.s.v[0],this.s.v[1],this.s.v[2]),this.appliedTransformations=2;else return;if(this.sk)if(!this.sk.effectsSequence.length&&!this.sa.effectsSequence.length)this.pre.skewFromAxis(-this.sk.v,this.sa.v),this.appliedTransformations=3;else return;this.r?this.r.effectsSequence.length||(this.pre.rotate(-this.r.v),this.appliedTransformations=4):!this.rz.effectsSequence.length&&!this.ry.effectsSequence.length&&!this.rx.effectsSequence.length&&!this.or.effectsSequence.length&&(this.pre.rotateZ(-this.rz.v).rotateY(this.ry.v).rotateX(this.rx.v).rotateZ(-this.or.v[2]).rotateY(this.or.v[1]).rotateX(this.or.v[0]),this.appliedTransformations=4)}function o(){}function a(u){this._addDynamicProperty(u),this.elem.addDynamicProperty(u),this._isDirty=!0}function l(u,m,g){if(this.elem=u,this.frameId=-1,this.propType="transform",this.data=m,this.v=new Matrix,this.pre=new Matrix,this.appliedTransformations=0,this.initDynamicPropertyContainer(g||u),m.p&&m.p.s?(this.px=PropertyFactory.getProp(u,m.p.x,0,0,this),this.py=PropertyFactory.getProp(u,m.p.y,0,0,this),m.p.z&&(this.pz=PropertyFactory.getProp(u,m.p.z,0,0,this))):this.p=PropertyFactory.getProp(u,m.p||{k:[0,0,0]},1,0,this),m.rx){if(this.rx=PropertyFactory.getProp(u,m.rx,0,degToRads,this),this.ry=PropertyFactory.getProp(u,m.ry,0,degToRads,this),this.rz=PropertyFactory.getProp(u,m.rz,0,degToRads,this),m.or.k[0].ti){var d,y=m.or.k.length;for(d=0;d0;)r-=1,this._elements.unshift(e[r]);this.dynamicProperties.length?this.k=!0:this.getValue(!0)},RepeaterModifier.prototype.resetElements=function(i){var e,r=i.length;for(e=0;e0?Math.floor(y):Math.ceil(y),S=this.pMatrix.props,E=this.rMatrix.props,x=this.sMatrix.props;this.pMatrix.reset(),this.rMatrix.reset(),this.sMatrix.reset(),this.tMatrix.reset(),this.matrix.reset();var C=0;if(y>0){for(;Cb;)this.applyTransforms(this.pMatrix,this.rMatrix,this.sMatrix,this.tr,1,!0),C-=1;A&&(this.applyTransforms(this.pMatrix,this.rMatrix,this.sMatrix,this.tr,-A,!0),C-=A)}s=this.data.m===1?0:this._currentCopies-1,o=this.data.m===1?1:-1,a=this._currentCopies;for(var P,k;a;){if(e=this.elemsData[s].it,r=e[e.length-1].transform.mProps.v.props,k=r.length,e[e.length-1].transform.mProps._mdf=!0,e[e.length-1].transform.op._mdf=!0,e[e.length-1].transform.op.v=this._currentCopies===1?this.so.v:this.so.v+(this.eo.v-this.so.v)*(s/(this._currentCopies-1)),C!==0){for((s!==0&&o===1||s!==this._currentCopies-1&&o===-1)&&this.applyTransforms(this.pMatrix,this.rMatrix,this.sMatrix,this.tr,1,!1),this.matrix.transform(E[0],E[1],E[2],E[3],E[4],E[5],E[6],E[7],E[8],E[9],E[10],E[11],E[12],E[13],E[14],E[15]),this.matrix.transform(x[0],x[1],x[2],x[3],x[4],x[5],x[6],x[7],x[8],x[9],x[10],x[11],x[12],x[13],x[14],x[15]),this.matrix.transform(S[0],S[1],S[2],S[3],S[4],S[5],S[6],S[7],S[8],S[9],S[10],S[11],S[12],S[13],S[14],S[15]),P=0;P0&&s<1?[e]:[]:[e-s,e+s].filter(function(o){return o>0&&o<1})},PolynomialBezier.prototype.split=function(i){if(i<=0)return[singlePoint(this.points[0]),this];if(i>=1)return[this,singlePoint(this.points[this.points.length-1])];var e=lerpPoint(this.points[0],this.points[1],i),r=lerpPoint(this.points[1],this.points[2],i),s=lerpPoint(this.points[2],this.points[3],i),o=lerpPoint(e,r,i),a=lerpPoint(r,s,i),l=lerpPoint(o,a,i);return[new PolynomialBezier(this.points[0],e,o,l,!0),new PolynomialBezier(l,a,s,this.points[3],!0)]};function extrema(i,e){var r=i.points[0][e],s=i.points[i.points.length-1][e];if(r>s){var o=s;s=r,r=o}for(var a=quadRoots(3*i.a[e],2*i.b[e],i.c[e]),l=0;l0&&a[l]<1){var c=i.point(a[l])[e];cs&&(s=c)}return{min:r,max:s}}PolynomialBezier.prototype.bounds=function(){return{x:extrema(this,0),y:extrema(this,1)}},PolynomialBezier.prototype.boundingBox=function(){var i=this.bounds();return{left:i.x.min,right:i.x.max,top:i.y.min,bottom:i.y.max,width:i.x.max-i.x.min,height:i.y.max-i.y.min,cx:(i.x.max+i.x.min)/2,cy:(i.y.max+i.y.min)/2}};function intersectData(i,e,r){var s=i.boundingBox();return{cx:s.cx,cy:s.cy,width:s.width,height:s.height,bez:i,t:(e+r)/2,t1:e,t2:r}}function splitData(i){var e=i.bez.split(.5);return[intersectData(e[0],i.t1,i.t),intersectData(e[1],i.t,i.t2)]}function boxIntersect(i,e){return Math.abs(i.cx-e.cx)*2=a||i.width<=s&&i.height<=s&&e.width<=s&&e.height<=s){o.push([i.t,e.t]);return}var l=splitData(i),c=splitData(e);intersectsImpl(l[0],c[0],r+1,s,o,a),intersectsImpl(l[0],c[1],r+1,s,o,a),intersectsImpl(l[1],c[0],r+1,s,o,a),intersectsImpl(l[1],c[1],r+1,s,o,a)}}PolynomialBezier.prototype.intersections=function(i,e,r){e===void 0&&(e=2),r===void 0&&(r=7);var s=[];return intersectsImpl(intersectData(this,0,1),intersectData(i,0,1),0,e,s,r),s},PolynomialBezier.shapeSegment=function(i,e){var r=(e+1)%i.length();return new PolynomialBezier(i.v[e],i.o[e],i.i[r],i.v[r],!0)},PolynomialBezier.shapeSegmentInverted=function(i,e){var r=(e+1)%i.length();return new PolynomialBezier(i.v[r],i.i[r],i.o[e],i.v[e],!0)};function crossProduct(i,e){return[i[1]*e[2]-i[2]*e[1],i[2]*e[0]-i[0]*e[2],i[0]*e[1]-i[1]*e[0]]}function lineIntersection(i,e,r,s){var o=[i[0],i[1],1],a=[e[0],e[1],1],l=[r[0],r[1],1],c=[s[0],s[1],1],u=crossProduct(crossProduct(o,a),crossProduct(l,c));return floatZero(u[2])?null:[u[0]/u[2],u[1]/u[2]]}function polarOffset(i,e,r){return[i[0]+Math.cos(e)*r,i[1]-Math.sin(e)*r]}function pointDistance(i,e){return Math.hypot(i[0]-e[0],i[1]-e[1])}function pointEqual(i,e){return floatEqual(i[0],e[0])&&floatEqual(i[1],e[1])}function ZigZagModifier(){}extendPrototype([ShapeModifier],ZigZagModifier),ZigZagModifier.prototype.initModifierProperties=function(i,e){this.getValue=this.processKeys,this.amplitude=PropertyFactory.getProp(i,e.s,0,null,this),this.frequency=PropertyFactory.getProp(i,e.r,0,null,this),this.pointsType=PropertyFactory.getProp(i,e.pt,0,null,this),this._isAnimated=this.amplitude.effectsSequence.length!==0||this.frequency.effectsSequence.length!==0||this.pointsType.effectsSequence.length!==0};function setPoint(i,e,r,s,o,a,l){var c=r-Math.PI/2,u=r+Math.PI/2,m=e[0]+Math.cos(r)*s*o,g=e[1]-Math.sin(r)*s*o;i.setTripleAt(m,g,m+Math.cos(c)*a,g-Math.sin(c)*a,m+Math.cos(u)*l,g-Math.sin(u)*l,i.length())}function getPerpendicularVector(i,e){var r=[e[0]-i[0],e[1]-i[1]],s=-Math.PI*.5,o=[Math.cos(s)*r[0]-Math.sin(s)*r[1],Math.sin(s)*r[0]+Math.cos(s)*r[1]];return o}function getProjectingAngle(i,e){var r=e===0?i.length()-1:e-1,s=(e+1)%i.length(),o=i.v[r],a=i.v[s],l=getPerpendicularVector(o,a);return Math.atan2(0,1)-Math.atan2(l[1],l[0])}function zigZagCorner(i,e,r,s,o,a,l){var c=getProjectingAngle(e,r),u=e.v[r%e._length],m=e.v[r===0?e._length-1:r-1],g=e.v[(r+1)%e._length],d=a===2?Math.sqrt(Math.pow(u[0]-m[0],2)+Math.pow(u[1]-m[1],2)):0,y=a===2?Math.sqrt(Math.pow(u[0]-g[0],2)+Math.pow(u[1]-g[1],2)):0;setPoint(i,e.v[r%e._length],c,l,s,y/((o+1)*2),d/((o+1)*2))}function zigZagSegment(i,e,r,s,o,a){for(var l=0;l1&&e.length>1&&(o=getIntersection(i[0],e[e.length-1]),o)?[[i[0].split(o[0])[0]],[e[e.length-1].split(o[1])[1]]]:[r,s]}function pruneIntersections(i){for(var e,r=1;r1&&(e=pruneSegmentIntersection(i[i.length-1],i[0]),i[i.length-1]=e[0],i[0]=e[1]),i}function offsetSegmentSplit(i,e){var r=i.inflectionPoints(),s,o,a,l;if(r.length===0)return[offsetSegment(i,e)];if(r.length===1||floatEqual(r[1],1))return a=i.split(r[0]),s=a[0],o=a[1],[offsetSegment(s,e),offsetSegment(o,e)];a=i.split(r[0]),s=a[0];var c=(r[1]-r[0])/(1-r[0]);return a=a[1].split(c),l=a[0],o=a[1],[offsetSegment(s,e),offsetSegment(l,e),offsetSegment(o,e)]}function OffsetPathModifier(){}extendPrototype([ShapeModifier],OffsetPathModifier),OffsetPathModifier.prototype.initModifierProperties=function(i,e){this.getValue=this.processKeys,this.amount=PropertyFactory.getProp(i,e.a,0,null,this),this.miterLimit=PropertyFactory.getProp(i,e.ml,0,null,this),this.lineJoin=e.lj,this._isAnimated=this.amount.effectsSequence.length!==0},OffsetPathModifier.prototype.processPath=function(i,e,r,s){var o=shapePool.newElement();o.c=i.c;var a=i.length();i.c||(a-=1);var l,c,u,m=[];for(l=0;l=0;l-=1)u=PolynomialBezier.shapeSegmentInverted(i,l),m.push(offsetSegmentSplit(u,e));m=pruneIntersections(m);var g=null,d=null;for(l=0;l0&&(W=!1),W){var Y=createTag("style");Y.setAttribute("f-forigin",G[U].fOrigin),Y.setAttribute("f-origin",G[U].origin),Y.setAttribute("f-family",G[U].fFamily),Y.type="text/css",Y.innerText="@font-face {font-family: "+G[U].fFamily+"; font-style: normal; src: url('"+G[U].fPath+"');}",K.appendChild(Y)}}else if(G[U].fOrigin==="g"||G[U].origin===1){for(xe=document.querySelectorAll('link[f-forigin="g"], link[f-origin="1"]'),ue=0;ue=55296&&G<=56319){var U=_.charCodeAt(1);U>=56320&&U<=57343&&(K=(G-55296)*1024+U-56320+65536)}return K}function M(_,K){var G=_.toString(16)+K.toString(16);return d.indexOf(G)!==-1}function T(_){return _===u}function F(_){return _===c}function D(_){var K=I(_);return K>=m&&K<=g}function N(_){return D(_.substr(0,2))&&D(_.substr(2,2))}function O(_){return r.indexOf(_)!==-1}function B(_,K){var G=I(_.substr(K,2));if(G!==s)return!1;var U=0;for(K+=2;U<5;){if(G=I(_.substr(K,2)),Gl)return!1;U+=1,K+=2}return I(_.substr(K,2))===o}function V(){this.isLoaded=!0}var R=function(){this.fonts=[],this.chars=null,this.typekitLoaded=0,this.isLoaded=!1,this._warned=!1,this.initTime=Date.now(),this.setIsLoadedBinded=this.setIsLoaded.bind(this),this.checkLoadedFontsBinded=this.checkLoadedFonts.bind(this)};R.isModifier=M,R.isZeroWidthJoiner=T,R.isFlagEmoji=N,R.isRegionalCode=D,R.isCombinedCharacter=O,R.isRegionalFlag=B,R.isVariationSelector=F,R.BLACK_FLAG_CODE_POINT=s;var Q={addChars:x,addFonts:E,getCharData:C,getFontByName:k,measureText:P,checkLoadedFonts:b,setIsLoaded:V};return R.prototype=Q,R}();function SlotManager(i){this.animationData=i}SlotManager.prototype.getProp=function(i){return this.animationData.slots&&this.animationData.slots[i.sid]?Object.assign(i,this.animationData.slots[i.sid].p):i};function slotFactory(i){return new SlotManager(i)}function RenderableElement(){}RenderableElement.prototype={initRenderable:function(){this.isInRange=!1,this.hidden=!1,this.isTransparent=!1,this.renderableComponents=[]},addRenderableComponent:function(e){this.renderableComponents.indexOf(e)===-1&&this.renderableComponents.push(e)},removeRenderableComponent:function(e){this.renderableComponents.indexOf(e)!==-1&&this.renderableComponents.splice(this.renderableComponents.indexOf(e),1)},prepareRenderableFrame:function(e){this.checkLayerLimits(e)},checkTransparency:function(){this.finalTransform.mProp.o.v<=0?!this.isTransparent&&this.globalData.renderConfig.hideOnTransparent&&(this.isTransparent=!0,this.hide()):this.isTransparent&&(this.isTransparent=!1,this.show())},checkLayerLimits:function(e){this.data.ip-this.data.st<=e&&this.data.op-this.data.st>e?this.isInRange!==!0&&(this.globalData._mdf=!0,this._mdf=!0,this.isInRange=!0,this.show()):this.isInRange!==!1&&(this.globalData._mdf=!0,this.isInRange=!1,this.hide())},renderRenderable:function(){var e,r=this.renderableComponents.length;for(e=0;e.1)&&this.audio.seek(this._currentTime/this.globalData.frameRate):(this.audio.play(),this.audio.seek(this._currentTime/this.globalData.frameRate),this._isPlaying=!0))},AudioElement.prototype.show=function(){},AudioElement.prototype.hide=function(){this.audio.pause(),this._isPlaying=!1},AudioElement.prototype.pause=function(){this.audio.pause(),this._isPlaying=!1,this._canPlay=!1},AudioElement.prototype.resume=function(){this._canPlay=!0},AudioElement.prototype.setRate=function(i){this.audio.rate(i)},AudioElement.prototype.volume=function(i){this._volumeMultiplier=i,this._previousVolume=i*this._volume,this.audio.volume(this._previousVolume)},AudioElement.prototype.getBaseElement=function(){return null},AudioElement.prototype.destroy=function(){},AudioElement.prototype.sourceRectAtTime=function(){},AudioElement.prototype.initExpressions=function(){};function BaseRenderer(){}BaseRenderer.prototype.checkLayers=function(i){var e,r=this.layers.length,s;for(this.completeLayers=!0,e=r-1;e>=0;e-=1)this.elements[e]||(s=this.layers[e],s.ip-s.st<=i-this.layers[e].st&&s.op-s.st>i-this.layers[e].st&&this.buildItem(e)),this.completeLayers=this.elements[e]?this.completeLayers:!1;this.checkPendingElements()},BaseRenderer.prototype.createItem=function(i){switch(i.ty){case 2:return this.createImage(i);case 0:return this.createComp(i);case 1:return this.createSolid(i);case 3:return this.createNull(i);case 4:return this.createShape(i);case 5:return this.createText(i);case 6:return this.createAudio(i);case 13:return this.createCamera(i);case 15:return this.createFootage(i);default:return this.createNull(i)}},BaseRenderer.prototype.createCamera=function(){throw new Error("You're using a 3d camera. Try the html renderer.")},BaseRenderer.prototype.createAudio=function(i){return new AudioElement(i,this.globalData,this)},BaseRenderer.prototype.createFootage=function(i){return new FootageElement(i,this.globalData,this)},BaseRenderer.prototype.buildAllItems=function(){var i,e=this.layers.length;for(i=0;i0&&(this.maskElement.setAttribute("id",y),this.element.maskedElement.setAttribute(C,"url("+getLocationHref()+"#"+y+")"),s.appendChild(this.maskElement)),this.viewData.length&&this.element.addRenderableComponent(this)}MaskElement.prototype.getMaskProperty=function(i){return this.viewData[i].prop},MaskElement.prototype.renderFrame=function(i){var e=this.element.finalTransform.mat,r,s=this.masksProperties.length;for(r=0;r1&&(s+=" C"+e.o[o-1][0]+","+e.o[o-1][1]+" "+e.i[0][0]+","+e.i[0][1]+" "+e.v[0][0]+","+e.v[0][1]),r.lastPath!==s){var l="";r.elem&&(e.c&&(l=i.inv?this.solidPath+s:s),r.elem.setAttribute("d",l)),r.lastPath=s}},MaskElement.prototype.destroy=function(){this.element=null,this.globalData=null,this.maskElement=null,this.data=null,this.masksProperties=null};var filtersFactory=function(){var i={};i.createFilter=e,i.createAlphaToLuminanceFilter=r;function e(s,o){var a=createNS("filter");return a.setAttribute("id",s),o!==!0&&(a.setAttribute("filterUnits","objectBoundingBox"),a.setAttribute("x","0%"),a.setAttribute("y","0%"),a.setAttribute("width","100%"),a.setAttribute("height","100%")),a}function r(){var s=createNS("feColorMatrix");return s.setAttribute("type","matrix"),s.setAttribute("color-interpolation-filters","sRGB"),s.setAttribute("values","0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 1"),s}return i}(),featureSupport=function(){var i={maskType:!0,svgLumaHidden:!0,offscreenCanvas:typeof OffscreenCanvas<"u"};return(/MSIE 10/i.test(navigator.userAgent)||/MSIE 9/i.test(navigator.userAgent)||/rv:11.0/i.test(navigator.userAgent)||/Edge\/\d./i.test(navigator.userAgent))&&(i.maskType=!1),/firefox/i.test(navigator.userAgent)&&(i.svgLumaHidden=!1),i}(),registeredEffects$1={},idPrefix="filter_result_";function SVGEffects(i){var e,r="SourceGraphic",s=i.data.ef?i.data.ef.length:0,o=createElementID(),a=filtersFactory.createFilter(o,!0),l=0;this.filters=[];var c;for(e=0;e=0&&(s=this.shapeModifiers[e].processShapes(this._isFirstFrame),!s);e-=1);}},searchProcessedElement:function(e){for(var r=this.processedElements,s=0,o=r.length;s.01)return!1;r+=1}return!0},GradientProperty.prototype.checkCollapsable=function(){if(this.o.length/2!==this.c.length/4)return!1;if(this.data.k.k[0].s)for(var i=0,e=this.data.k.k.length;i0;)x=y.transformers[D].mProps._mdf||x,F-=1,D-=1;if(x)for(F=I-y.styles[P].lvl,D=y.transformers.length-1;F>0;)T.multiply(y.transformers[D].mProps.v),F-=1,D-=1}else T=i;if(M=y.sh.paths,S=M._length,x){for(E="",b=0;b=1?V=.99:V<=-1&&(V=-.99);var R=O*V,Q=Math.cos(B+y.a.v)*R+E[0],_=Math.sin(B+y.a.v)*R+E[1];b.setAttribute("fx",Q),b.setAttribute("fy",_),S&&!y.g._collapsable&&(y.of.setAttribute("fx",Q),y.of.setAttribute("fy",_))}}}function g(d,y,A){var b=y.style,S=y.d;S&&(S._mdf||A)&&S.dashStr&&(b.pElem.setAttribute("stroke-dasharray",S.dashStr),b.pElem.setAttribute("stroke-dashoffset",S.dashoffset[0])),y.c&&(y.c._mdf||A)&&b.pElem.setAttribute("stroke","rgb("+bmFloor(y.c.v[0])+","+bmFloor(y.c.v[1])+","+bmFloor(y.c.v[2])+")"),(y.o._mdf||A)&&b.pElem.setAttribute("stroke-opacity",y.o.v),(y.w._mdf||A)&&(b.pElem.setAttribute("stroke-width",y.w.v),b.msElem&&b.msElem.setAttribute("stroke-width",y.w.v))}return r}();function SVGShapeElement(i,e,r){this.shapes=[],this.shapesData=i.shapes,this.stylesList=[],this.shapeModifiers=[],this.itemsData=[],this.processedElements=[],this.animatedContents=[],this.initElement(i,e,r),this.prevViewData=[]}extendPrototype([BaseElement,TransformElement,SVGBaseElement,IShapeElement,HierarchyElement,FrameElement,RenderableDOMElement],SVGShapeElement),SVGShapeElement.prototype.initSecondaryElement=function(){},SVGShapeElement.prototype.identityMatrix=new Matrix,SVGShapeElement.prototype.buildExpressionInterface=function(){},SVGShapeElement.prototype.createContent=function(){this.searchShapes(this.shapesData,this.itemsData,this.prevViewData,this.layerElement,0,[],!0),this.filterUniqueShapes()},SVGShapeElement.prototype.filterUniqueShapes=function(){var i,e=this.shapes.length,r,s,o=this.stylesList.length,a,l=[],c=!1;for(s=0;s1&&c&&this.setShapesAsAnimated(l)}},SVGShapeElement.prototype.setShapesAsAnimated=function(i){var e,r=i.length;for(e=0;e=0;u-=1){if(E=this.searchProcessedElement(i[u]),E?e[u]=r[E-1]:i[u]._render=l,i[u].ty==="fl"||i[u].ty==="st"||i[u].ty==="gf"||i[u].ty==="gs"||i[u].ty==="no")E?e[u].style.closed=!1:e[u]=this.createStyleElement(i[u],o),i[u]._render&&e[u].style.pElem.parentNode!==s&&s.appendChild(e[u].style.pElem),y.push(e[u].style);else if(i[u].ty==="gr"){if(!E)e[u]=this.createGroupElement(i[u]);else for(d=e[u].it.length,g=0;g1,this.kf&&this.addEffect(this.getKeyframeValue.bind(this)),this.kf},TextProperty.prototype.addEffect=function(i){this.effectsSequence.push(i),this.elem.addDynamicProperty(this)},TextProperty.prototype.getValue=function(i){if(!((this.elem.globalData.frameId===this.frameId||!this.effectsSequence.length)&&!i)){this.currentData.t=this.data.d.k[this.keysIndex].s.t;var e=this.currentData,r=this.keysIndex;if(this.lock){this.setCurrentData(this.currentData);return}this.lock=!0,this._mdf=!1;var s,o=this.effectsSequence.length,a=i||this.data.d.k[this.keysIndex].s;for(s=0;se);)r+=1;return this.keysIndex!==r&&(this.keysIndex=r),this.data.d.k[this.keysIndex].s},TextProperty.prototype.buildFinalText=function(i){for(var e=[],r=0,s=i.length,o,a,l=!1,c=!1,u="";r=55296&&o<=56319?FontManager.isRegionalFlag(i,r)?u=i.substr(r,14):(a=i.charCodeAt(r+1),a>=56320&&a<=57343&&(FontManager.isModifier(o,a)?(u=i.substr(r,2),l=!0):FontManager.isFlagEmoji(i.substr(r,4))?u=i.substr(r,4):u=i.substr(r,2))):o>56319?(a=i.charCodeAt(r+1),FontManager.isVariationSelector(o)&&(l=!0)):FontManager.isZeroWidthJoiner(o)&&(l=!0,c=!0),l?(e[e.length-1]+=u,l=!1):e.push(u),r+=u.length;return e},TextProperty.prototype.completeTextData=function(i){i.__complete=!0;var e=this.elem.globalData.fontManager,r=this.data,s=[],o,a,l,c=0,u,m=r.m.g,g=0,d=0,y=0,A=[],b=0,S=0,E,x,C=e.getFontByName(i.f),P,k=0,I=getFontProperties(C);i.fWeight=I.weight,i.fStyle=I.style,i.finalSize=i.s,i.finalText=this.buildFinalText(i.t),a=i.finalText.length,i.finalLineHeight=i.lh;var M=i.tr/1e3*i.finalSize,T;if(i.sz)for(var F=!0,D=i.sz[0],N=i.sz[1],O,B;F;){B=this.buildFinalText(i.t),O=0,b=0,a=B.length,M=i.tr/1e3*i.finalSize;var V=-1;for(o=0;oD&&B[o]!==" "?(V===-1?a+=1:o=V,O+=i.finalLineHeight||i.finalSize*1.2,B.splice(o,V===o?1:0,"\r"),V=-1,b=0):(b+=k,b+=M);O+=C.ascent*i.finalSize/100,this.canResize&&i.finalSize>this.minimumFontSize&&NS?b:S,b=-2*M,u="",l=!0,y+=1):u=Q,e.chars?(P=e.getCharData(Q,C.fStyle,e.getFontByName(i.f).fFamily),k=l?0:P.w*i.finalSize/100):k=e.measureText(u,i.f,i.finalSize),Q===" "?R+=k+M:(b+=k+M+R,R=0),s.push({l:k,an:k,add:g,n:l,anIndexes:[],val:u,line:y,animatorJustifyOffset:0}),m==2){if(g+=k,u===""||u===" "||o===a-1){for((u===""||u===" ")&&(g-=k);d<=o;)s[d].an=g,s[d].ind=c,s[d].extra=k,d+=1;c+=1,g=0}}else if(m==3){if(g+=k,u===""||o===a-1){for(u===""&&(g-=k);d<=o;)s[d].an=g,s[d].ind=c,s[d].extra=k,d+=1;g=0,c+=1}}else s[c].ind=c,s[c].extra=0,c+=1;if(i.l=s,S=b>S?b:S,A.push(b),i.sz)i.boxWidth=i.sz[0],i.justifyOffset=0;else switch(i.boxWidth=S,i.j){case 1:i.justifyOffset=-i.boxWidth;break;case 2:i.justifyOffset=-i.boxWidth/2;break;default:i.justifyOffset=0}i.lineWidths=A;var _=r.a,K,G;x=_.length;var U,$,q=[];for(E=0;E0?c=this.ne.v/100:u=-this.ne.v/100,this.xe.v>0?m=1-this.xe.v/100:g=1+this.xe.v/100;var d=BezierFactory.getBezierEasing(c,u,m,g).get,y=0,A=this.finalS,b=this.finalE,S=this.data.sh;if(S===2)b===A?y=l>=b?1:0:y=i(0,e(.5/(b-A)+(l-A)/(b-A),1)),y=d(y);else if(S===3)b===A?y=l>=b?0:1:y=1-i(0,e(.5/(b-A)+(l-A)/(b-A),1)),y=d(y);else if(S===4)b===A?y=0:(y=i(0,e(.5/(b-A)+(l-A)/(b-A),1)),y<.5?y*=2:y=1-2*(y-.5)),y=d(y);else if(S===5){if(b===A)y=0;else{var E=b-A;l=e(i(0,l+.5-A),b-A);var x=-E/2+l,C=E/2;y=Math.sqrt(1-x*x/(C*C))}y=d(y)}else S===6?(b===A?y=0:(l=e(i(0,l+.5-A),b-A),y=(1+Math.cos(Math.PI+Math.PI*2*l/(b-A)))/2),y=d(y)):(l>=r(A)&&(l-A<0?y=i(0,e(e(b,1)-(A-l),1)):y=i(0,e(b-l,1))),y=d(y));if(this.sm.v!==100){var P=this.sm.v*.01;P===0&&(P=1e-8);var k=.5-P*.5;y1&&(y=1))}return y*this.a.v},getValue:function(l){this.iterateDynamicProperties(),this._mdf=l||this._mdf,this._currentTextLength=this.elem.textProperty.currentData.l.length||0,l&&this.data.r===2&&(this.e.v=this._currentTextLength);var c=this.data.r===2?1:100/this.data.totalChars,u=this.o.v/c,m=this.s.v/c+u,g=this.e.v/c+u;if(m>g){var d=m;m=g,g=d}this.finalS=m,this.finalE=g}},extendPrototype([DynamicPropertyContainer],s);function o(a,l,c){return new s(a,l)}return{getTextSelectorProp:o}}();function TextAnimatorDataProperty(i,e,r){var s={propType:!1},o=PropertyFactory.getProp,a=e.a;this.a={r:a.r?o(i,a.r,0,degToRads,r):s,rx:a.rx?o(i,a.rx,0,degToRads,r):s,ry:a.ry?o(i,a.ry,0,degToRads,r):s,sk:a.sk?o(i,a.sk,0,degToRads,r):s,sa:a.sa?o(i,a.sa,0,degToRads,r):s,s:a.s?o(i,a.s,1,.01,r):s,a:a.a?o(i,a.a,1,0,r):s,o:a.o?o(i,a.o,0,.01,r):s,p:a.p?o(i,a.p,1,0,r):s,sw:a.sw?o(i,a.sw,0,0,r):s,sc:a.sc?o(i,a.sc,1,0,r):s,fc:a.fc?o(i,a.fc,1,0,r):s,fh:a.fh?o(i,a.fh,0,0,r):s,fs:a.fs?o(i,a.fs,0,.01,r):s,fb:a.fb?o(i,a.fb,0,.01,r):s,t:a.t?o(i,a.t,0,0,r):s},this.s=TextSelectorProp.getTextSelectorProp(i,e.s,r),this.s.t=e.s.t}function TextAnimatorProperty(i,e,r){this._isFirstFrame=!0,this._hasMaskedPath=!1,this._frameId=-1,this._textData=i,this._renderType=e,this._elem=r,this._animatorsData=createSizedArray(this._textData.a.length),this._pathData={},this._moreOptions={alignment:{}},this.renderedLetters=[],this.lettersChangedFlag=!1,this.initDynamicPropertyContainer(r)}TextAnimatorProperty.prototype.searchProperties=function(){var i,e=this._textData.a.length,r,s=PropertyFactory.getProp;for(i=0;i=b+he||!I?(D=(b+he-E)/S.partialLength,ue=k.point[0]+(S.point[0]-k.point[0])*D,Y=k.point[1]+(S.point[1]-k.point[1])*D,a.translate(-r[0]*y[g].an*.005,-(r[1]*R)*.01),x=!1):I&&(E+=S.partialLength,C+=1,C>=I.length&&(C=0,P+=1,M[P]?I=M[P].points:O.v.c?(C=0,P=0,I=M[P].points):(E-=S.partialLength,I=null)),I&&(k=S,S=I[C],T=S.partialLength));xe=y[g].an/2-y[g].add,a.translate(-xe,0,0)}else xe=y[g].an/2-y[g].add,a.translate(-xe,0,0),a.translate(-r[0]*y[g].an*.005,-r[1]*R*.01,0);for(G=0;Gi?this.textSpans[i].span:createNS(c?"g":"text"),P<=i){if(u.setAttribute("stroke-linecap","butt"),u.setAttribute("stroke-linejoin","round"),u.setAttribute("stroke-miterlimit","4"),this.textSpans[i].span=u,c){var I=createNS("g");u.appendChild(I),this.textSpans[i].childSpan=I}this.textSpans[i].span=u,this.layerElement.appendChild(u)}u.style.display="inherit"}if(m.reset(),d&&(l[i].n&&(y=-S,A+=r.yOffset,A+=b?1:0,b=!1),this.applyTextPropertiesToMatrix(r,m,l[i].line,y,A),y+=l[i].l||0,y+=S),c){k=this.globalData.fontManager.getCharData(r.finalText[i],s.fStyle,this.globalData.fontManager.getFontByName(r.f).fFamily);var M;if(k.t===1)M=new SVGCompElement(k.data,this.globalData,this);else{var T=emptyShapeData;k.data&&k.data.shapes&&(T=this.buildShapeData(k.data,r.finalSize)),M=new SVGShapeElement(T,this.globalData,this)}if(this.textSpans[i].glyph){var F=this.textSpans[i].glyph;this.textSpans[i].childSpan.removeChild(F.layerElement),F.destroy()}this.textSpans[i].glyph=M,M._debug=!0,M.prepareFrame(0),M.renderFrame(),this.textSpans[i].childSpan.appendChild(M.layerElement),k.t===1&&this.textSpans[i].childSpan.setAttribute("transform","scale("+r.finalSize/100+","+r.finalSize/100+")")}else d&&u.setAttribute("transform","translate("+m.props[12]+","+m.props[13]+")"),u.textContent=l[i].val,u.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve")}d&&u&&u.setAttribute("d",g)}for(;i=0;e-=1)(this.completeLayers||this.elements[e])&&this.elements[e].prepareFrame(i-this.layers[e].st);if(this.globalData._mdf)for(e=0;e=0;r-=1)(this.completeLayers||this.elements[r])&&(this.elements[r].prepareFrame(this.renderedFrame-this.layers[r].st),this.elements[r]._mdf&&(this._mdf=!0))}},ICompElement.prototype.renderInnerContent=function(){var i,e=this.layers.length;for(i=0;i=0;s-=1)e.finalTransform.multiply(e.transforms[s].transform.mProps.v);e._mdf=a},processSequences:function(e){var r,s=this.sequenceList.length;for(r=0;r=1){this.buffers=[];var e=this.globalData.canvasContext,r=assetLoader.createCanvas(e.canvas.width,e.canvas.height);this.buffers.push(r);var s=assetLoader.createCanvas(e.canvas.width,e.canvas.height);this.buffers.push(s),this.data.tt>=3&&!document._isProxy&&assetLoader.loadLumaCanvas()}this.canvasContext=this.globalData.canvasContext,this.transformCanvas=this.globalData.transformCanvas,this.renderableEffectsManager=new CVEffects(this),this.searchEffectTransforms()},createContent:function(){},setBlendMode:function(){var e=this.globalData;if(e.blendMode!==this.data.bm){e.blendMode=this.data.bm;var r=getBlendMode(this.data.bm);e.canvasContext.globalCompositeOperation=r}},createRenderableComponents:function(){this.maskManager=new CVMaskElement(this.data,this),this.transformEffects=this.renderableEffectsManager.getEffects(effectTypes.TRANSFORM_EFFECT)},hideElement:function(){!this.hidden&&(!this.isInRange||this.isTransparent)&&(this.hidden=!0)},showElement:function(){this.isInRange&&!this.isTransparent&&(this.hidden=!1,this._isFirstFrame=!0,this.maskManager._isFirstFrame=!0)},clearCanvas:function(e){e.clearRect(this.transformCanvas.tx,this.transformCanvas.ty,this.transformCanvas.w*this.transformCanvas.sx,this.transformCanvas.h*this.transformCanvas.sy)},prepareLayer:function(){if(this.data.tt>=1){var e=this.buffers[0],r=e.getContext("2d");this.clearCanvas(r),r.drawImage(this.canvasContext.canvas,0,0),this.currentTransform=this.canvasContext.getTransform(),this.canvasContext.setTransform(1,0,0,1,0,0),this.clearCanvas(this.canvasContext),this.canvasContext.setTransform(this.currentTransform)}},exitLayer:function(){if(this.data.tt>=1){var e=this.buffers[1],r=e.getContext("2d");this.clearCanvas(r),r.drawImage(this.canvasContext.canvas,0,0),this.canvasContext.setTransform(1,0,0,1,0,0),this.clearCanvas(this.canvasContext),this.canvasContext.setTransform(this.currentTransform);var s=this.comp.getElementById("tp"in this.data?this.data.tp:this.data.ind-1);if(s.renderFrame(!0),this.canvasContext.setTransform(1,0,0,1,0,0),this.data.tt>=3&&!document._isProxy){var o=assetLoader.getLumaCanvas(this.canvasContext.canvas),a=o.getContext("2d");a.drawImage(this.canvasContext.canvas,0,0),this.clearCanvas(this.canvasContext),this.canvasContext.drawImage(o,0,0)}this.canvasContext.globalCompositeOperation=operationsMap[this.data.tt],this.canvasContext.drawImage(e,0,0),this.canvasContext.globalCompositeOperation="destination-over",this.canvasContext.drawImage(this.buffers[0],0,0),this.canvasContext.setTransform(this.currentTransform),this.canvasContext.globalCompositeOperation="source-over"}},renderFrame:function(e){if(!(this.hidden||this.data.hd)&&!(this.data.td===1&&!e)){this.renderTransform(),this.renderRenderable(),this.renderLocalTransform(),this.setBlendMode();var r=this.data.ty===0;this.prepareLayer(),this.globalData.renderer.save(r),this.globalData.renderer.ctxTransform(this.finalTransform.localMat.props),this.globalData.renderer.ctxOpacity(this.finalTransform.localOpacity),this.renderInnerContent(),this.globalData.renderer.restore(r),this.exitLayer(),this.maskManager.hasMasks&&this.globalData.renderer.restore(!0),this._isFirstFrame&&(this._isFirstFrame=!1)}},destroy:function(){this.canvasContext=null,this.data=null,this.globalData=null,this.maskManager.destroy()},mHelper:new Matrix},CVBaseElement.prototype.hide=CVBaseElement.prototype.hideElement,CVBaseElement.prototype.show=CVBaseElement.prototype.showElement;function CVShapeData(i,e,r,s){this.styledShapes=[],this.tr=[0,0,0,0,0,0];var o=4;e.ty==="rc"?o=5:e.ty==="el"?o=6:e.ty==="sr"&&(o=7),this.sh=ShapePropertyFactory.getShapeProp(i,e,o,i);var a,l=r.length,c;for(a=0;a=0;a-=1){if(d=this.searchProcessedElement(i[a]),d?e[a]=r[d-1]:i[a]._shouldRender=s,i[a].ty==="fl"||i[a].ty==="st"||i[a].ty==="gf"||i[a].ty==="gs")d?e[a].style.closed=!1:e[a]=this.createStyleElement(i[a],b),m.push(e[a].style);else if(i[a].ty==="gr"){if(!d)e[a]=this.createGroupElement(i[a]);else for(u=e[a].it.length,c=0;c=0;o-=1)e[o].ty==="tr"?(l=r[o].transform,this.renderShapeTransform(i,l)):e[o].ty==="sh"||e[o].ty==="el"||e[o].ty==="rc"||e[o].ty==="sr"?this.renderPath(e[o],r[o]):e[o].ty==="fl"?this.renderFill(e[o],r[o],l):e[o].ty==="st"?this.renderStroke(e[o],r[o],l):e[o].ty==="gf"||e[o].ty==="gs"?this.renderGradientFill(e[o],r[o],l):e[o].ty==="gr"?this.renderShape(l,e[o].it,r[o].it):e[o].ty;s&&this.drawLayer()},CVShapeElement.prototype.renderStyledShape=function(i,e){if(this._isFirstFrame||e._mdf||i.transforms._mdf){var r=i.trNodes,s=e.paths,o,a,l,c=s._length;r.length=0;var u=i.transforms.finalTransform;for(l=0;l=1?g=.99:g<=-1&&(g=-.99);var d=u*g,y=Math.cos(m+e.a.v)*d+l[0],A=Math.sin(m+e.a.v)*d+l[1];o=a.createRadialGradient(y,A,0,l[0],l[1],u)}var b,S=i.g.p,E=e.g.c,x=1;for(b=0;ba&&u==="xMidYMid slice"||oo&&c==="meet"||ao&&c==="slice")?this.transformCanvas.tx=(r-this.transformCanvas.w*(s/this.transformCanvas.h))/2*this.renderConfig.dpr:m==="xMax"&&(ao&&c==="slice")?this.transformCanvas.tx=(r-this.transformCanvas.w*(s/this.transformCanvas.h))*this.renderConfig.dpr:this.transformCanvas.tx=0,g==="YMid"&&(a>o&&c==="meet"||ao&&c==="meet"||a=0;i-=1)this.elements[i]&&this.elements[i].destroy&&this.elements[i].destroy();this.elements.length=0,this.globalData.canvasContext=null,this.animationItem.container=null,this.destroyed=!0},CanvasRendererBase.prototype.renderFrame=function(i,e){if(!(this.renderedFrame===i&&this.renderConfig.clearCanvas===!0&&!e||this.destroyed||i===-1)){this.renderedFrame=i,this.globalData.frameNum=i-this.animationItem._isFirstFrame,this.globalData.frameId+=1,this.globalData._mdf=!this.renderConfig.clearCanvas||e,this.globalData.projectInterface.currentFrame=i;var r,s=this.layers.length;for(this.completeLayers||this.checkLayers(i),r=s-1;r>=0;r-=1)(this.completeLayers||this.elements[r])&&this.elements[r].prepareFrame(i-this.layers[r].st);if(this.globalData._mdf){for(this.renderConfig.clearCanvas===!0?this.canvasContext.clearRect(0,0,this.transformCanvas.w,this.transformCanvas.h):this.save(),r=s-1;r>=0;r-=1)(this.completeLayers||this.elements[r])&&this.elements[r].renderFrame();this.renderConfig.clearCanvas!==!0&&this.restore()}}},CanvasRendererBase.prototype.buildItem=function(i){var e=this.elements;if(!(e[i]||this.layers[i].ty===99)){var r=this.createItem(this.layers[i],this,this.globalData);e[i]=r,r.initExpressions()}},CanvasRendererBase.prototype.checkPendingElements=function(){for(;this.pendingElements.length;){var i=this.pendingElements.pop();i.checkParenting()}},CanvasRendererBase.prototype.hide=function(){this.animationItem.container.style.display="none"},CanvasRendererBase.prototype.show=function(){this.animationItem.container.style.display="block"};function CanvasContext(){this.opacity=-1,this.transform=createTypedArray("float32",16),this.fillStyle="",this.strokeStyle="",this.lineWidth="",this.lineCap="",this.lineJoin="",this.miterLimit="",this.id=Math.random()}function CVContextData(){this.stack=[],this.cArrPos=0,this.cTr=new Matrix;var i,e=15;for(i=0;i=0;e-=1)(this.completeLayers||this.elements[e])&&this.elements[e].renderFrame()},CVCompElement.prototype.destroy=function(){var i,e=this.layers.length;for(i=e-1;i>=0;i-=1)this.elements[i]&&this.elements[i].destroy();this.layers=null,this.elements=null},CVCompElement.prototype.createComp=function(i){return new CVCompElement(i,this.globalData,this)};function CanvasRenderer(i,e){this.animationItem=i,this.renderConfig={clearCanvas:e&&e.clearCanvas!==void 0?e.clearCanvas:!0,context:e&&e.context||null,progressiveLoad:e&&e.progressiveLoad||!1,preserveAspectRatio:e&&e.preserveAspectRatio||"xMidYMid meet",imagePreserveAspectRatio:e&&e.imagePreserveAspectRatio||"xMidYMid slice",contentVisibility:e&&e.contentVisibility||"visible",className:e&&e.className||"",id:e&&e.id||"",runExpressions:!e||e.runExpressions===void 0||e.runExpressions},this.renderConfig.dpr=e&&e.dpr||1,this.animationItem.wrapper&&(this.renderConfig.dpr=e&&e.dpr||window.devicePixelRatio||1),this.renderedFrame=-1,this.globalData={frameNum:-1,_mdf:!1,renderConfig:this.renderConfig,currentGlobalAlpha:-1},this.contextData=new CVContextData,this.elements=[],this.pendingElements=[],this.transformMat=new Matrix,this.completeLayers=!1,this.rendererType="canvas",this.renderConfig.clearCanvas&&(this.ctxTransform=this.contextData.transform.bind(this.contextData),this.ctxOpacity=this.contextData.opacity.bind(this.contextData),this.ctxFillStyle=this.contextData.fillStyle.bind(this.contextData),this.ctxStrokeStyle=this.contextData.strokeStyle.bind(this.contextData),this.ctxLineWidth=this.contextData.lineWidth.bind(this.contextData),this.ctxLineCap=this.contextData.lineCap.bind(this.contextData),this.ctxLineJoin=this.contextData.lineJoin.bind(this.contextData),this.ctxMiterLimit=this.contextData.miterLimit.bind(this.contextData),this.ctxFill=this.contextData.fill.bind(this.contextData),this.ctxFillRect=this.contextData.fillRect.bind(this.contextData),this.ctxStroke=this.contextData.stroke.bind(this.contextData),this.save=this.contextData.save.bind(this.contextData))}extendPrototype([CanvasRendererBase],CanvasRenderer),CanvasRenderer.prototype.createComp=function(i){return new CVCompElement(i,this.globalData,this)};function HBaseElement(){}HBaseElement.prototype={checkBlendMode:function(){},initRendererElement:function(){this.baseElement=createTag(this.data.tg||"div"),this.data.hasMask?(this.svgElement=createNS("svg"),this.layerElement=createNS("g"),this.maskedElement=this.layerElement,this.svgElement.appendChild(this.layerElement),this.baseElement.appendChild(this.svgElement)):this.layerElement=this.baseElement,styleDiv(this.baseElement)},createContainerElements:function(){this.renderableEffectsManager=new CVEffects(this),this.transformedElement=this.baseElement,this.maskedElement=this.layerElement,this.data.ln&&this.layerElement.setAttribute("id",this.data.ln),this.data.cl&&this.layerElement.setAttribute("class",this.data.cl),this.data.bm!==0&&this.setBlendMode()},renderElement:function(){var e=this.transformedElement?this.transformedElement.style:{};if(this.finalTransform._matMdf){var r=this.finalTransform.mat.toCSS();e.transform=r,e.webkitTransform=r}this.finalTransform._opMdf&&(e.opacity=this.finalTransform.mProp.o.v)},renderFrame:function(){this.data.hd||this.hidden||(this.renderTransform(),this.renderRenderable(),this.renderElement(),this.renderInnerContent(),this._isFirstFrame&&(this._isFirstFrame=!1))},destroy:function(){this.layerElement=null,this.transformedElement=null,this.matteElement&&(this.matteElement=null),this.maskManager&&(this.maskManager.destroy(),this.maskManager=null)},createRenderableComponents:function(){this.maskManager=new MaskElement(this.data,this,this.globalData)},addEffects:function(){},setMatte:function(){}},HBaseElement.prototype.getBaseElement=SVGBaseElement.prototype.getBaseElement,HBaseElement.prototype.destroyBaseElement=HBaseElement.prototype.destroy,HBaseElement.prototype.buildElementParenting=BaseRenderer.prototype.buildElementParenting;function HSolidElement(i,e,r){this.initElement(i,e,r)}extendPrototype([BaseElement,TransformElement,HBaseElement,HierarchyElement,FrameElement,RenderableDOMElement],HSolidElement),HSolidElement.prototype.createContent=function(){var i;this.data.hasMask?(i=createNS("rect"),i.setAttribute("width",this.data.sw),i.setAttribute("height",this.data.sh),i.setAttribute("fill",this.data.sc),this.svgElement.setAttribute("width",this.data.sw),this.svgElement.setAttribute("height",this.data.sh)):(i=createTag("div"),i.style.width=this.data.sw+"px",i.style.height=this.data.sh+"px",i.style.backgroundColor=this.data.sc),this.layerElement.appendChild(i)};function HShapeElement(i,e,r){this.shapes=[],this.shapesData=i.shapes,this.stylesList=[],this.shapeModifiers=[],this.itemsData=[],this.processedElements=[],this.animatedContents=[],this.shapesContainer=createNS("g"),this.initElement(i,e,r),this.prevViewData=[],this.currentBBox={x:999999,y:-999999,h:0,w:0}}extendPrototype([BaseElement,TransformElement,HSolidElement,SVGShapeElement,HBaseElement,HierarchyElement,FrameElement,RenderableElement],HShapeElement),HShapeElement.prototype._renderShapeFrame=HShapeElement.prototype.renderInnerContent,HShapeElement.prototype.createContent=function(){var i;if(this.baseElement.style.fontSize=0,this.data.hasMask)this.layerElement.appendChild(this.shapesContainer),i=this.svgElement;else{i=createNS("svg");var e=this.comp.data?this.comp.data:this.globalData.compSize;i.setAttribute("width",e.w),i.setAttribute("height",e.h),i.appendChild(this.shapesContainer),this.layerElement.appendChild(i)}this.searchShapes(this.shapesData,this.itemsData,this.prevViewData,this.shapesContainer,0,[],!0),this.filterUniqueShapes(),this.shapeCont=i},HShapeElement.prototype.getTransformedPoint=function(i,e){var r,s=i.length;for(r=0;r0&&u<1&&o[y].push(this.calculateF(u,i,e,r,s,y))):(m=l*l-4*c*a,m>=0&&(g=(-l+bmSqrt(m))/(2*a),g>0&&g<1&&o[y].push(this.calculateF(g,i,e,r,s,y)),d=(-l-bmSqrt(m))/(2*a),d>0&&d<1&&o[y].push(this.calculateF(d,i,e,r,s,y)))));this.shapeBoundingBox.left=bmMin.apply(null,o[0]),this.shapeBoundingBox.top=bmMin.apply(null,o[1]),this.shapeBoundingBox.right=bmMax.apply(null,o[0]),this.shapeBoundingBox.bottom=bmMax.apply(null,o[1])},HShapeElement.prototype.calculateF=function(i,e,r,s,o,a){return bmPow(1-i,3)*e[a]+3*bmPow(1-i,2)*i*r[a]+3*(1-i)*bmPow(i,2)*s[a]+bmPow(i,3)*o[a]},HShapeElement.prototype.calculateBoundingBox=function(i,e){var r,s=i.length;for(r=0;rr&&(r=o)}r*=i.mult}else r=i.v*i.mult;e.x-=r,e.xMax+=r,e.y-=r,e.yMax+=r},HShapeElement.prototype.currentBoxContains=function(i){return this.currentBBox.x<=i.x&&this.currentBBox.y<=i.y&&this.currentBBox.width+this.currentBBox.x>=i.x+i.width&&this.currentBBox.height+this.currentBBox.y>=i.y+i.height},HShapeElement.prototype.renderInnerContent=function(){if(this._renderShapeFrame(),!this.hidden&&(this._isFirstFrame||this._mdf)){var i=this.tempBoundingBox,e=999999;if(i.x=e,i.xMax=-e,i.y=e,i.yMax=-e,this.calculateBoundingBox(this.itemsData,i),i.width=i.xMax=0;e-=1){var s=this.hierarchy[e].finalTransform.mProp;this.mat.translate(-s.p.v[0],-s.p.v[1],s.p.v[2]),this.mat.rotateX(-s.or.v[0]).rotateY(-s.or.v[1]).rotateZ(s.or.v[2]),this.mat.rotateX(-s.rx.v).rotateY(-s.ry.v).rotateZ(s.rz.v),this.mat.scale(1/s.s.v[0],1/s.s.v[1],1/s.s.v[2]),this.mat.translate(s.a.v[0],s.a.v[1],s.a.v[2])}if(this.p?this.mat.translate(-this.p.v[0],-this.p.v[1],this.p.v[2]):this.mat.translate(-this.px.v,-this.py.v,this.pz.v),this.a){var o;this.p?o=[this.p.v[0]-this.a.v[0],this.p.v[1]-this.a.v[1],this.p.v[2]-this.a.v[2]]:o=[this.px.v-this.a.v[0],this.py.v-this.a.v[1],this.pz.v-this.a.v[2]];var a=Math.sqrt(Math.pow(o[0],2)+Math.pow(o[1],2)+Math.pow(o[2],2)),l=[o[0]/a,o[1]/a,o[2]/a],c=Math.sqrt(l[2]*l[2]+l[0]*l[0]),u=Math.atan2(l[1],c),m=Math.atan2(l[0],-l[2]);this.mat.rotateY(m).rotateX(-u)}this.mat.rotateX(-this.rx.v).rotateY(-this.ry.v).rotateZ(this.rz.v),this.mat.rotateX(-this.or.v[0]).rotateY(-this.or.v[1]).rotateZ(this.or.v[2]),this.mat.translate(this.globalData.compSize.w/2,this.globalData.compSize.h/2,0),this.mat.translate(0,0,this.pe.v);var g=!this._prevMat.equals(this.mat);if((g||this.pe._mdf)&&this.comp.threeDElements){r=this.comp.threeDElements.length;var d,y,A;for(e=0;e=i)return this.threeDElements[e].perspectiveElem;e+=1}return null},HybridRendererBase.prototype.createThreeDContainer=function(i,e){var r=createTag("div"),s,o;styleDiv(r);var a=createTag("div");if(styleDiv(a),e==="3d"){s=r.style,s.width=this.globalData.compSize.w+"px",s.height=this.globalData.compSize.h+"px";var l="50% 50%";s.webkitTransformOrigin=l,s.mozTransformOrigin=l,s.transformOrigin=l,o=a.style;var c="matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1)";o.transform=c,o.webkitTransform=c}r.appendChild(a);var u={container:a,perspectiveElem:r,startPos:i,endPos:i,type:e};return this.threeDElements.push(u),u},HybridRendererBase.prototype.build3dContainers=function(){var i,e=this.layers.length,r,s="";for(i=0;i=0;i-=1)this.resizerElem.appendChild(this.threeDElements[i].perspectiveElem)},HybridRendererBase.prototype.addTo3dContainer=function(i,e){for(var r=0,s=this.threeDElements.length;rr?(o=i/this.globalData.compSize.w,a=i/this.globalData.compSize.w,l=0,c=(e-this.globalData.compSize.h*(i/this.globalData.compSize.w))/2):(o=e/this.globalData.compSize.h,a=e/this.globalData.compSize.h,l=(i-this.globalData.compSize.w*(e/this.globalData.compSize.h))/2,c=0);var u=this.resizerElem.style;u.webkitTransform="matrix3d("+o+",0,0,0,0,"+a+",0,0,0,0,1,0,"+l+","+c+",0,1)",u.transform=u.webkitTransform},HybridRendererBase.prototype.renderFrame=SVGRenderer.prototype.renderFrame,HybridRendererBase.prototype.hide=function(){this.resizerElem.style.display="none"},HybridRendererBase.prototype.show=function(){this.resizerElem.style.display="block"},HybridRendererBase.prototype.initItems=function(){if(this.buildAllItems(),this.camera)this.camera.setup();else{var i=this.globalData.compSize.w,e=this.globalData.compSize.h,r,s=this.threeDElements.length;for(r=0;r=m;)O/=2,B/=2,V>>>=1;return(O+V)/B};return D.int32=function(){return F.g(4)|0},D.quick=function(){return F.g(4)/4294967296},D.double=D,E(C(F.S),i),(k.pass||I||function(N,O,B,V){return V&&(V.S&&b(V,F),N.state=function(){return b(F,{})}),B?(e[l]=N,O):N})(D,T,"global"in k?k.global:this==e,k.state)}e["seed"+l]=y;function A(P){var k,I=P.length,M=this,T=0,F=M.i=M.j=0,D=M.S=[];for(I||(P=[I++]);Tr){var s=r;r=e,e=s}return Math.min(Math.max(i,e),r)}function radiansToDegrees(i){return i/degToRads}var radians_to_degrees=radiansToDegrees;function degreesToRadians(i){return i*degToRads}var degrees_to_radians=radiansToDegrees,helperLengthArray=[0,0,0,0,0,0];function length(i,e){if(typeof i=="number"||i instanceof Number)return e=e||0,Math.abs(i-e);e||(e=helperLengthArray);var r,s=Math.min(i.length,e.length),o=0;for(r=0;r.5?m/(2-o-a):m/(o+a),o){case e:l=(r-s)/m+(r1&&(r-=1),r<1/6?i+(e-i)*6*r:r<1/2?e:r<2/3?i+(e-i)*(2/3-r)*6:i}function hslToRgb(i){var e=i[0],r=i[1],s=i[2],o,a,l;if(r===0)o=s,l=s,a=s;else{var c=s<.5?s*(1+r):s+r-s*r,u=2*s-c;o=hue2rgb(u,c,e+1/3),a=hue2rgb(u,c,e),l=hue2rgb(u,c,e-1/3)}return[o,a,l,i[3]]}function linear(i,e,r,s,o){if((s===void 0||o===void 0)&&(s=e,o=r,e=0,r=1),r=r)return o;var l=r===e?0:(i-e)/(r-e);if(!s.length)return s+(o-s)*l;var c,u=s.length,m=createTypedArray("float32",u);for(c=0;c1){for(o=0;o1?e=1:e<0&&(e=0);var l=i(e);if($bm_isInstanceOfArray(o)){var c,u=o.length,m=createTypedArray("float32",u);for(c=0;cdata.k[e].t&&idata.k[e+1].t-i?(s=e+2,o=data.k[e+1].t):(s=e+1,o=data.k[e].t);break}s===-1&&(s=e+1,o=data.k[e].t)}var a={};return a.index=s,a.time=o/elem.comp.globalData.frameRate,a}function key(i){var e,r,s;if(!data.k.length||typeof data.k[0]=="number")throw new Error("The property has no keyframe at index "+i);i-=1,e={time:data.k[i].t/elem.comp.globalData.frameRate,value:[]};var o=Object.prototype.hasOwnProperty.call(data.k[i],"s")?data.k[i].s:data.k[i-1].e;for(s=o.length,r=0;rE.length-1)&&(A=E.length-1),P=E[E.length-1-A].t,C=x-P);var k,I,M;if(y==="pingpong"){var T=Math.floor((S-P)/C);if(T%2!==0)return this.getValueAtTime((C-(S-P)%C+P)/this.comp.globalData.frameRate,0)}else if(y==="offset"){var F=this.getValueAtTime(P/this.comp.globalData.frameRate,0),D=this.getValueAtTime(x/this.comp.globalData.frameRate,0),N=this.getValueAtTime(((S-P)%C+P)/this.comp.globalData.frameRate,0),O=Math.floor((S-P)/C);if(this.pv.length){for(M=new Array(F.length),I=M.length,k=0;k=x)return this.pv;var C,P;b?(A?C=Math.abs(this.elem.comp.globalData.frameRate*A):C=Math.max(0,this.elem.data.op-x),P=x+C):((!A||A>E.length-1)&&(A=E.length-1),P=E[A].t,C=P-x);var k,I,M;if(y==="pingpong"){var T=Math.floor((x-S)/C);if(T%2===0)return this.getValueAtTime(((x-S)%C+x)/this.comp.globalData.frameRate,0)}else if(y==="offset"){var F=this.getValueAtTime(x/this.comp.globalData.frameRate,0),D=this.getValueAtTime(P/this.comp.globalData.frameRate,0),N=this.getValueAtTime((C-(x-S)%C+x)/this.comp.globalData.frameRate,0),O=Math.floor((x-S)/C)+1;if(this.pv.length){for(M=new Array(F.length),I=M.length,k=0;k1?(E-S)/(A-1):1,C=0,P=0,k;this.pv.length?k=createTypedArray("float32",this.pv.length):k=0;for(var I;CC){var T=P,F=S.c&&P===k-1?0:P+1,D=(C-I)/x[P].addedLength;M=bez.getPointInSegment(S.v[T],S.v[F],S.o[T],S.i[F],D,x[P]);break}else I+=x[P].addedLength;P+=1}return M||(M=S.c?[S.v[0][0],S.v[0][1]]:[S.v[S._length-1][0],S.v[S._length-1][1]]),M},vectorOnPath:function(A,b,S){A==1?A=this.v.c:A==0&&(A=.999);var E=this.pointOnPath(A,b),x=this.pointOnPath(A+.001,b),C=x[0]-E[0],P=x[1]-E[1],k=Math.sqrt(Math.pow(C,2)+Math.pow(P,2));if(k===0)return[0,0];var I=S==="tangent"?[C/k,P/k]:[-P/k,C/k];return I},tangentOnPath:function(A,b){return this.vectorOnPath(A,b,"tangent")},normalOnPath:function(A,b){return this.vectorOnPath(A,b,"normal")},setGroupProperty:expressionHelpers.setGroupProperty,getValueAtTime:expressionHelpers.getStaticValueAtTime},extendPrototype([g],u),extendPrototype([g],m),m.prototype.getValueAtTime=c,m.prototype.initiateExpression=ExpressionManager.initiateExpression;var d=ShapePropertyFactory.getShapeProp;ShapePropertyFactory.getShapeProp=function(y,A,b,S,E){var x=d(y,A,b,S,E);return x.propertyIndex=A.ix,x.lock=!1,b===3?expressionHelpers.searchExpressions(y,A.pt,x):b===4&&expressionHelpers.searchExpressions(y,A.ks,x),x.k&&y.addDynamicProperty(x),x}}function initialize$1(){addPropertyDecorator()}function addDecorator(){function i(){return this.data.d.x?(this.calculateExpression=ExpressionManager.initiateExpression.bind(this)(this.elem,this.data.d,this),this.addEffect(this.getExpressionValue.bind(this)),!0):null}TextProperty.prototype.getExpressionValue=function(e,r){var s=this.calculateExpression(r);if(e.t!==s){var o={};return this.copyData(o,e),o.t=s.toString(),o.__complete=!1,o}return e},TextProperty.prototype.searchProperty=function(){var e=this.searchKeyframes(),r=this.searchExpressions();return this.kf=e||r,this.kf},TextProperty.prototype.searchExpressions=i}function initialize(){addDecorator()}function SVGComposableEffect(){}SVGComposableEffect.prototype={createMergeNode:function i(e,r){var s=createNS("feMerge");s.setAttribute("result",e);var o,a;for(a=0;a=m?d=b<0?s:o:d=s+A*Math.pow((c-i)/b,1/r),g[y]=d,y+=1,a+=256/(l-1);return g.join(" ")},SVGProLevelsFilter.prototype.renderFrame=function(i){if(i||this.filterManager._mdf){var e,r=this.filterManager.effectElements;this.feFuncRComposed&&(i||r[3].p._mdf||r[4].p._mdf||r[5].p._mdf||r[6].p._mdf||r[7].p._mdf)&&(e=this.getTableValue(r[3].p.v,r[4].p.v,r[5].p.v,r[6].p.v,r[7].p.v),this.feFuncRComposed.setAttribute("tableValues",e),this.feFuncGComposed.setAttribute("tableValues",e),this.feFuncBComposed.setAttribute("tableValues",e)),this.feFuncR&&(i||r[10].p._mdf||r[11].p._mdf||r[12].p._mdf||r[13].p._mdf||r[14].p._mdf)&&(e=this.getTableValue(r[10].p.v,r[11].p.v,r[12].p.v,r[13].p.v,r[14].p.v),this.feFuncR.setAttribute("tableValues",e)),this.feFuncG&&(i||r[17].p._mdf||r[18].p._mdf||r[19].p._mdf||r[20].p._mdf||r[21].p._mdf)&&(e=this.getTableValue(r[17].p.v,r[18].p.v,r[19].p.v,r[20].p.v,r[21].p.v),this.feFuncG.setAttribute("tableValues",e)),this.feFuncB&&(i||r[24].p._mdf||r[25].p._mdf||r[26].p._mdf||r[27].p._mdf||r[28].p._mdf)&&(e=this.getTableValue(r[24].p.v,r[25].p.v,r[26].p.v,r[27].p.v,r[28].p.v),this.feFuncB.setAttribute("tableValues",e)),this.feFuncA&&(i||r[31].p._mdf||r[32].p._mdf||r[33].p._mdf||r[34].p._mdf||r[35].p._mdf)&&(e=this.getTableValue(r[31].p.v,r[32].p.v,r[33].p.v,r[34].p.v,r[35].p.v),this.feFuncA.setAttribute("tableValues",e))}};function SVGDropShadowEffect(i,e,r,s,o){var a=e.container.globalData.renderConfig.filterSize,l=e.data.fs||a;i.setAttribute("x",l.x||a.x),i.setAttribute("y",l.y||a.y),i.setAttribute("width",l.width||a.width),i.setAttribute("height",l.height||a.height),this.filterManager=e;var c=createNS("feGaussianBlur");c.setAttribute("in","SourceAlpha"),c.setAttribute("result",s+"_drop_shadow_1"),c.setAttribute("stdDeviation","0"),this.feGaussianBlur=c,i.appendChild(c);var u=createNS("feOffset");u.setAttribute("dx","25"),u.setAttribute("dy","0"),u.setAttribute("in",s+"_drop_shadow_1"),u.setAttribute("result",s+"_drop_shadow_2"),this.feOffset=u,i.appendChild(u);var m=createNS("feFlood");m.setAttribute("flood-color","#00ff00"),m.setAttribute("flood-opacity","1"),m.setAttribute("result",s+"_drop_shadow_3"),this.feFlood=m,i.appendChild(m);var g=createNS("feComposite");g.setAttribute("in",s+"_drop_shadow_3"),g.setAttribute("in2",s+"_drop_shadow_2"),g.setAttribute("operator","in"),g.setAttribute("result",s+"_drop_shadow_4"),i.appendChild(g);var d=this.createMergeNode(s,[s+"_drop_shadow_4",o]);i.appendChild(d)}extendPrototype([SVGComposableEffect],SVGDropShadowEffect),SVGDropShadowEffect.prototype.renderFrame=function(i){if(i||this.filterManager._mdf){if((i||this.filterManager.effectElements[4].p._mdf)&&this.feGaussianBlur.setAttribute("stdDeviation",this.filterManager.effectElements[4].p.v/4),i||this.filterManager.effectElements[0].p._mdf){var e=this.filterManager.effectElements[0].p.v;this.feFlood.setAttribute("flood-color",rgbToHex(Math.round(e[0]*255),Math.round(e[1]*255),Math.round(e[2]*255)))}if((i||this.filterManager.effectElements[1].p._mdf)&&this.feFlood.setAttribute("flood-opacity",this.filterManager.effectElements[1].p.v/255),i||this.filterManager.effectElements[2].p._mdf||this.filterManager.effectElements[3].p._mdf){var r=this.filterManager.effectElements[3].p.v,s=(this.filterManager.effectElements[2].p.v-90)*degToRads,o=r*Math.cos(s),a=r*Math.sin(s);this.feOffset.setAttribute("dx",o),this.feOffset.setAttribute("dy",a)}}};var _svgMatteSymbols=[];function SVGMatte3Effect(i,e,r){this.initialized=!1,this.filterManager=e,this.filterElem=i,this.elem=r,r.matteElement=createNS("g"),r.matteElement.appendChild(r.layerElement),r.matteElement.appendChild(r.transformedElement),r.baseElement=r.matteElement}SVGMatte3Effect.prototype.findSymbol=function(i){for(var e=0,r=_svgMatteSymbols.length;e-1&&i%1==0&&i-1&&i%1==0&&i<=MAX_SAFE_INTEGER}function isArrayLike(i){return i!=null&&isLength(i.length)&&!isFunction$1(i)}var objectProto$a=Object.prototype;function isPrototype(i){var e=i&&i.constructor,r=typeof e=="function"&&e.prototype||objectProto$a;return i===r}function baseTimes(i,e){for(var r=-1,s=Array(i);++r-1}function listCacheSet(i,e){var r=this.__data__,s=assocIndexOf(r,i);return s<0?(++this.size,r.push([i,e])):r[s][1]=e,this}function ListCache(i){var e=-1,r=i==null?0:i.length;for(this.clear();++ec))return!1;var m=a.get(i),g=a.get(e);if(m&&g)return m==e&&g==i;var d=-1,y=!0,A=r&COMPARE_UNORDERED_FLAG$1?new SetCache:void 0;for(a.set(i,e),a.set(e,i);++d{const r=i.__vccOpts||i;for(const[s,o]of e)r[s]=o;return r};const _sfc_main=defineComponent({props:{animationData:{type:Object,default:()=>({})},animationLink:{type:String,default:""},loop:{type:[Boolean,Number],default:!0},autoPlay:{type:Boolean,default:!0},width:{type:[Number,String],default:"100%"},height:{type:[Number,String],default:"100%"},speed:{type:Number,default:1},delay:{type:Number,default:0},direction:{type:String,default:"forward"},pauseOnHover:{type:Boolean,default:!1},playOnHover:{type:Boolean,default:!1},backgroundColor:{type:String,default:"transparent"},pauseAnimation:{type:Boolean,default:!1},renderer:{type:String,default:"svg"},rendererSettings:{type:Object,default:()=>({})},assetsPath:{type:String,default:""}},emits:{onComplete:null,onLoopComplete:null,onEnterFrame:null,onSegmentStart:null,onAnimationLoaded:null},setup(i,{emit:e}){let r=ref(null);const s=ref("");let o=1;const a=F=>document.querySelector(`[data-id="${F}"]`)!==null,l=async F=>{let D=i.autoPlay;i.playOnHover&&(D=!1);let N={};if(isEqual(i.animationData,{})===!1&&(N=cloneDeep(i.animationData)),i.animationLink!="")try{N=await(await fetch(i.animationLink)).json()}catch(V){console.error(V);return}let O=i.loop;typeof O=="number"&&O>0&&(O=O-1),i.delay>0&&(D=!1);const B={container:F,renderer:i.renderer,loop:O,autoplay:D,animationData:N,assetsPath:i.assetsPath};isEqual(i.rendererSettings,{})===!1&&(B.rendererSettings=i.rendererSettings),r=Lottie.loadAnimation(B),setTimeout(()=>{D=i.autoPlay,i.playOnHover?r.pause():D?r.play():r.pause(),e("onAnimationLoaded")},i.delay),r.setSpeed(i.speed),i.direction==="reverse"&&r.setDirection(-1),i.direction==="normal"&&r.setDirection(1),(i.pauseAnimation||i.playOnHover)&&r.pause(),r.addEventListener("loopComplete",()=>{i.direction==="alternate"&&(r.stop(),o=o*-1,r.setDirection(o),r.play()),e("onLoopComplete")}),r.addEventListener("complete",()=>{e("onComplete")}),r.addEventListener("enterFrame",()=>{e("onEnterFrame")}),r.addEventListener("segmentStart",()=>{e("onSegmentStart")})},c=computed(()=>{let F=i.width,D=i.height;return typeof i.width=="number"&&(F=`${i.width}px`),typeof i.height=="number"&&(D=`${i.height}px`),{"--lottie-animation-container-width":F,"--lottie-animation-container-height":D,"--lottie-animation-container-background-color":i.backgroundColor}}),u=()=>{r&&i.pauseOnHover&&r.pause(),r&&i.playOnHover&&r.play()},m=()=>{r&&i.pauseOnHover&&r.play(),r&&i.playOnHover&&r.pause()};watch(()=>i.pauseAnimation,()=>{if((i.pauseOnHover||i.playOnHover)&&i.pauseAnimation){console.error("If you are using pauseAnimation prop for Vue3-Lottie, please remove the props pauseOnHover and playOnHover");return}r&&(i.pauseAnimation?r.pause():r.play())});const g=()=>{r&&r.play()},d=()=>{r&&r.pause()},y=()=>{r&&r.stop()},A=()=>{r&&r.destroy()},b=(F=1)=>{if(F<=0)throw new Error("Speed must be greater than 0");r&&r.setSpeed(F)},S=F=>{r&&(F==="forward"?r.setDirection(1):F==="reverse"&&r.setDirection(-1))},E=(F,D=!0)=>{r&&r.goToAndStop(F,D)},x=(F,D=!0)=>{r&&r.goToAndPlay(F,D)},C=(F,D=!1)=>{r&&r.playSegments(F,D)},P=(F=!0)=>{r&&r.setSubframe(F)},k=(F=!0)=>{if(r)return r.getDuration(F)},I=(F,D=0)=>{r&&r.renderer.elements[D].updateDocumentData(F)},M=F=>{for(var D="",N="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",O=N.length,B=0;B{if(i.pauseOnHover&&i.playOnHover)throw new Error("You cannot set pauseOnHover and playOnHover for Vue3-Lottie at the same time.");if(i.animationLink===""&&isEqual(i.animationData,{}))throw new Error("You must provide either animationLink or animationData");const D=setInterval(()=>{if(a(F)){clearInterval(D);const N=document.querySelector(`[data-id="${F}" ]`);N&&l(N)}},0)};return onMounted(async()=>{s.value=M(20),T(s.value)}),{elementid:s,hoverEnded:m,hoverStarted:u,getCurrentStyle:c,play:g,pause:d,stop:y,destroy:A,setSpeed:b,setDirection:S,goToAndStop:E,goToAndPlay:x,playSegments:C,setSubFrame:P,getDuration:k,updateDocumentData:I}}}),_hoisted_1=["data-id"];function _sfc_render(i,e,r,s,o,a){return openBlock(),createElementBlock("div",{"data-id":i.elementid,class:"lottie-animation-container",style:normalizeStyle(i.getCurrentStyle),onMouseenter:e[0]||(e[0]=(...l)=>i.hoverStarted&&i.hoverStarted(...l)),onMouseleave:e[1]||(e[1]=(...l)=>i.hoverEnded&&i.hoverEnded(...l))},null,44,_hoisted_1)}var Vue3Lottie=_export_sfc(_sfc_main,[["render",_sfc_render]]);const v$3="5.7.1",fr$3=25,ip$3=0,op$3=50,w$3=120,h$3=120,nm$3="转动",ddd$3=0,assets$3=[],layers$3=[{ddd:0,ind:1,ty:4,nm:"转动",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[60,60,0],ix:2},a:{a:0,k:[-16,-36,0],ix:1},s:{a:0,k:[23.737,23.737,100],ix:6}},ao:0,shapes:[{ty:"gr",it:[{d:1,ty:"el",s:{a:0,k:[447.14,447.14],ix:2},p:{a:0,k:[0,0],ix:3},nm:"椭圆路径 1",mn:"ADBE Vector Shape - Ellipse",hd:!1},{ty:"st",c:{a:0,k:[.125490196078,.741176470588,1,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:46,ix:5},lc:2,lj:1,ml:4,bm:0,nm:"描边 1",mn:"ADBE Vector Graphic - Stroke",hd:!1},{ty:"tr",p:{a:0,k:[-16,-36],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"椭圆 1",np:3,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1},{ty:"tm",s:{a:0,k:0,ix:1},e:{a:1,k:[{i:{x:[.833],y:[.833]},o:{x:[.167],y:[.167]},t:0,s:[0],e:[50]},{i:{x:[.833],y:[.833]},o:{x:[.167],y:[.167]},t:25,s:[50],e:[0]},{t:50}],ix:2},o:{a:1,k:[{i:{x:[.833],y:[.833]},o:{x:[.167],y:[.167]},t:0,s:[0],e:[720]},{t:50}],ix:3},m:1,ix:2,nm:"修剪路径 1",mn:"ADBE Vector Filter - Trim",hd:!1}],ip:0,op:50,st:0,bm:0},{ddd:0,ind:2,ty:4,nm:"底",sr:1,ks:{o:{a:0,k:30,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[60,60,0],ix:2},a:{a:0,k:[-16,-36,0],ix:1},s:{a:0,k:[23.737,23.737,100],ix:6}},ao:0,shapes:[{ty:"gr",it:[{d:1,ty:"el",s:{a:0,k:[447.14,447.14],ix:2},p:{a:0,k:[0,0],ix:3},nm:"椭圆路径 1",mn:"ADBE Vector Shape - Ellipse",hd:!1},{ty:"st",c:{a:0,k:[1,1,1,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:46,ix:5},lc:1,lj:1,ml:4,bm:0,nm:"描边 1",mn:"ADBE Vector Graphic - Stroke",hd:!1},{ty:"tr",p:{a:0,k:[-16,-36],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"椭圆 1",np:3,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:50,st:0,bm:0}],markers$3=[],loading$1={v:v$3,fr:fr$3,ip:ip$3,op:op$3,w:w$3,h:h$3,nm:nm$3,ddd:ddd$3,assets:assets$3,layers:layers$3,markers:markers$3},AbnormalPop=defineComponent({name:"abnormal-pop",props:{},emits:["close","confirm"],setup(i,{emit:e}){return()=>createVNode(Fragment,null,[evaluatingData.socketErrorStatus===0&&createVNode("div",{class:styles$t.fraction},[createVNode("img",{class:styles$t.close,src:popImgs.icon_close,onClick:()=>e("close")},null),createVNode("img",{class:styles$t.bg,src:popImgs.icon_bg},null),createVNode("div",{class:styles$t.content},[createVNode("div",{class:styles$t.title},[createTextVNode("您的网络连接异常")]),createVNode("div",{class:styles$t.desc},[createTextVNode("请确保网络正常后重新连接")])]),createVNode("div",null,[createVNode("img",{src:popImgs.icon_btn,class:styles$t.btn,onClick:()=>e("confirm",!0)},null)])]),evaluatingData.socketErrorStatus===1&&createVNode("div",{class:styles$t.loadColumn},[createVNode(Vue3Lottie,{class:styles$t.loadIcon,animationData:loading$1,loop:!0},null),createVNode("img",{class:styles$t.close,src:popImgs.icon_close,onClick:()=>e("close")},null),createVNode("p",null,[createTextVNode("正在连接服务器,请稍后…")])]),evaluatingData.socketErrorStatus===2&&createVNode("div",{class:styles$t.loadColumn},[createVNode("img",{class:styles$t.successIcon,src:popImgs.icon_success},null),createVNode("p",null,[createTextVNode("连接成功")])])])}}),icon_bg=""+new URL("../svg/icon_bg-b8b32f61.svg",import.meta.url).href,icon_close=""+new URL("../svg/icon_close-67cdfd0c.svg",import.meta.url).href,icon_btn$1=""+new URL("../svg/icon_btn-09392f0b.svg",import.meta.url).href,icon_success=""+new URL("../svg/icon_success-88b59e6c.svg",import.meta.url).href,homework="_homework_spg76_1",styles$s={homework},studentQueryUserInfo=async()=>await request.get("/user/getUserInfo"),api_musicPracticeRecordSave=i=>request.post("/musicPracticeRecord/save",{requestType:"json",data:i}),api_lessonTrainingSubmitTraining=i=>request.post("/lessonTraining/submitTraining",{requestType:"json",data:i}),api_lessonTrainingTrainingStudentDetail=i=>request.get(`/lessonTraining/trainingContentStudentDetail?id=${i}`),api_musicPracticeRecordVideoUpload=i=>request.post("/musicPracticeRecord/videoUpload",{data:i,requestType:"json"}),sysSuggestionAdd=i=>request.post("/sysSuggestion/save",{data:i,requestType:"json"}),api_musicPracticeRecordDetail=i=>request.get("/musicPracticeRecord/detail/"+i),api_subjectList=i=>request.post("/subject/list",{data:i,requestType:"json"}),api_musicSheetPage=i=>request.post("/musicSheet/page",{data:i,requestType:"json"}),getSuggestionList=i=>request.post("/sysSuggestionType/page",{data:i,requestType:"json"}),WorkHome=defineComponent({name:"HomeWork",props:{workeData:{type:Object,default:()=>({})}},emits:["change"],setup(i,{expose:e}){const r=reactive({trainingTimes:"",trainingSpeed:0,times:0,workRecord:"",isAddOk:0,starTime:0,start:"",end:""}),s=()=>{const u=["studnetT-0","studnetT-2","studnetT-4"];for(let m=0;m{const u=i.workeData;if(u.id){let m={};try{m=JSON.parse(u.trainingContent)}catch(g){console.log("🚀 ~ error:",g)}r.times=m.trainingTimes||0,r.trainingTimes=(u.trainingTimes/60).toFixed(1)||"0",r.trainingSpeed=m.practiceSpeed,r.start=Number(m.practiceChapterBegin),r.end=Number(m.practiceChapterEnd),state$1.userChooseEndIndex=r.end,r.isAddOk===0&&setSection(r.start,r.end,r.trainingSpeed)}},a=async()=>{const u=await api_lessonTrainingTrainingStudentDetail(i.workeData.id);(u==null?void 0:u.code)===200&&(r.trainingTimes=(u.data.trainingTimes/60).toFixed(1)||"0")},l=async()=>{let u=Math.ceil((Date.now()-r.starTime)/1e3);try{const m=await api_lessonTrainingSubmitTraining({id:i.workeData.id,trainingTimes:u});(m==null?void 0:m.code)==200&&a()}catch(m){}};watch(()=>state$1.playState,()=>{state$1.playState==="play"?r.starTime=Date.now():l()});const c=()=>{state$1.playState==="play"&&(console.log("退出"),l())};return onMounted(()=>{s(),o()}),e({handleAdd:c}),()=>createVNode("div",{class:styles$s.homework},[r.trainingTimes,createTextVNode(" / "),r.times,createTextVNode(" 分钟")])}}),WorkEaluating=defineComponent({name:"EvaluatingWork",props:{workeData:{type:Object,default:()=>({})}},setup(i,{expose:e}){var l;getQuery();const r=reactive({difficulty:"",evaluatingRecord:(l=i.workeData)==null?void 0:l.id,start:"",end:"",evaluateSpeed:0}),s=()=>{const c=["studnetT-0"];for(let u=0;u{let c={};try{c=JSON.parse(i.workeData.trainingContent)}catch(u){console.log("🚀 ~ error:",u)}["BEGINNER","ADVANCED","PERFORMER"].includes(c.evaluateDifficult)&&(r.difficulty=c.evaluateDifficult,state$1.setting.evaluationDifficulty=c.evaluateDifficult,r.evaluateSpeed=c.evaluateSpeed,r.start=Number(c.practiceChapterBegin),r.end=Number(c.practiceChapterEnd),state$1.userChooseEndIndex=r.end,setSection(r.start,r.end,r.evaluateSpeed))},a=async c=>{try{const u=await api_lessonTrainingSubmitTraining({id:r.evaluatingRecord,trainingTimes:(c==null?void 0:c.score)||0,recordId:evaluatingData.resultData.recordId})}catch(u){console.log(u)}};return watch(()=>evaluatingData.resultData.recordId,()=>{evaluatingData.resulstMode&&evaluatingData.resultData.recordId&&evaluatingData.isComplete&&a(evaluatingData.resultData)}),onMounted(()=>{s(),o()}),()=>createVNode("div",null,null)}}),headerTop="_headerTop_xepx4_1",headTopLeftBox="_headTopLeftBox_xepx4_10",img$3="_img_xepx4_17",title$9="_title_xepx4_24",hidenBack="_hidenBack_xepx4_50",modeChangeBox="_modeChangeBox_xepx4_54",headRight="_headRight_xepx4_75",btn$9="_btn_xepx4_80",iconBtn="_iconBtn_xepx4_91",metronomeBtn="_metronomeBtn_xepx4_102",speedCon="_speedCon_xepx4_105",disabled$2="_disabled_xepx4_129",playBtn="_playBtn_xepx4_133",btnWrap="_btnWrap_xepx4_139",playLeftButton="_playLeftButton_xepx4_148",playRightButton="_playRightButton_xepx4_153",progress="_progress_xepx4_158",resetBtn$3="_resetBtn_xepx4_166",pauseLeftButton="_pauseLeftButton_xepx4_177",pauseRightButton="_pauseRightButton_xepx4_182",pcTransPop="_pcTransPop_xepx4_195",modeView="_modeView_xepx4_198",hidden="_hidden_xepx4_209",back="_back_xepx4_214",name$2="_name_xepx4_222",modeBox="_modeBox_xepx4_230",twoModeBox="_twoModeBox_xepx4_237",styles$r={headerTop,headTopLeftBox,img:img$3,title:title$9,hidenBack,modeChangeBox,headRight,btn:btn$9,iconBtn,metronomeBtn,speedCon,disabled:disabled$2,playBtn,btnWrap,playLeftButton,playRightButton,progress,resetBtn:resetBtn$3,pauseLeftButton,pauseRightButton,pcTransPop,modeView,hidden,back,name:name$2,modeBox,twoModeBox},iconBack="data:image/png;base64,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",listImg="data:image/png;base64,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",iconMode="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACQAAAAkCAMAAADW3miqAAAAXVBMVEUAAAA90f8/0f8+0f8+0v8+0/8+0v9A1f890v8/0/9A0/881/8+0f890f8+0f8+0f8+0v8+0v832/890f890f890P890v8+0f8+0v880v880v880v880v851f8+0f9sV87yAAAAHnRSTlMAs9j2q17NB3lAOhnw6d/TyogOkY4rpEadlHJVRBI3ljbIAAAA/ElEQVQ4y8WU2XKEIBBFr9IIivuos8b//8wkFpA7U+k8pWrOk7fqsAjd4C2EaTDt6OeU3X0RudoPdqzZD7oaB+tWHEhNzp4wzeFIkchWMHumd4C7FBlJK047YYFHQdgoDSwJ4Fm6RsmwVAEnliRKLUslsPwmjS/SjaUlSv5Fali6R2nuniXe1OYQqc2zFLbkyIpM0/PffVlxrssKwlmpym+qcxx2W07+4fB/qMud46dYB2gbr3LoG0A5gvInmRrKYZYUu1m5lpKzpwtWpZFKRZVapegqzkYpX+E8KI1gOU9aS/W0WtCaszE0sdrmdRfH2L8ejNmPrRmmgHfwCVpdNPkKLr+KAAAAAElFTkSuQmCC",__vite_glob_0_0$1="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACwAAAAuCAMAAABkkgs4AAABmFBMVEUAAAA0rP9f6v8mnf8nnv9T4f8nn/9Q3f8qpP8qpP9X5P8qpP9O2/8xrv8uqv9a6/9Cx/88vv8rpv9X5/8yrv9S3v9X5/9N1/8xr/8noP9T3/9BxP8/xP9N1v80sP8pov9Z6f9L1P9AxP8+wP8zsP8oof9W5f8mnf9Z6v9W5P9M1v8/w/89wf9Y5/9M1v9Z6v9Hz/82tf9O2f9L1f9b6/9Bxf8+wP9a7P9b6f9W5f////8po/9CyP9P2/9M1/9J0v9Hz/82tf84uf8vrP8rpv9R3v9K1P8ysP8sqP80tP8zsv9T4f8wrv8mn/49wf9Axf86vP88v/9U4/9Eyv8uqf9N2P8/w/9I0P8oof8lnf5FzP82t/87vf9W5P9FzP5Q3P9O2f9Gzf85uv9L1f9X5v9S3/8uqv9Y6P9Bxv+M0f+I1v+O3/+G0v/w+v+R4/+O1f+M2/98yv656f+L2v+L2f+N3v6q6v+k4f950v90zf9BtP+J0f6J2P9vyP5cvv5Tvf5Ouv6B4f+A3/+f2v992v+e2P5hxv5Jvf4Die87AAAAOnRSTlMAEBC82MPCv6JdUVEQ2MK/v7++urqhkJCQkFxcUTs7O/Pz8/Pz8/Ly2dnZ2dnW1sXFxbq6oqKhXTs7RKlO9AAAAzNJREFUSMd1lWdbWkEQhVfsMRprijW99x4pAiqXJtIFBFtUgoQQNXajpv/tzOxsuRT38/uc550zd/cy82kYetvz6OaszZZZds5N3HjYOjBoYfXPcE82Gwklk7O2WGzB6ZzweBwJu731Qh109MW8eyUbAXr2ky2WcUI0wEv2xbXmD9XsVZ8L4HAkRPDCMsIfHQBPBwKXK2X7/QRngebJGYITAK8Fon0WE9tpGD6kwyQNEy6gB8L26elANPpE0/3BoN9f6QF9TIA0eAAcyOX6lO9kMGj43af/yANhjCZp8sitCu/R+Ppk0Dg7Kpf/ChjKk3BCwvn3HO7yAnxWKJfLB1w6hNIxlPZQeSi9uvoM2Y4pb3zy8Ajg/RV3mEvvlUq7WnqRS+fzuJ1ehDcLhcKBywXSsJb9cTi/q6Xzl6C2KYBPgd10Acw9thEuIkwbF3DewtqtU14vBB8dYnngIWH0gKYdommA37E2K9AAnxiy6cg3SgZYekAyRL9mLQifFDYNgH3z6EHwji7PrqSbEI4fGkGAcUIJFxW8JOH77E4KYOgDYClNyXrjJJ3LX2czKR6NG5df3jFPtiGsyotitIIh+vtnOBsbx1sIbxV3il/g/BBNEww0wLDxX+N1z66ekKVTAHOPUn24pD14Mo8+H07wzwPh9ExKePw5R4M+U4Ix2eqNgwcOiBPSgDvFIk74k3+mCp4R0upubSD8Vd0tXR7BVB7fuMsM0xKlNCQDbSVp2vi8gPG6ZCo3zu4J2MthP8BuE7w8hxtP0MbvsibpsU4eCtYPk0N4PGCN4KE2jtIC3qbXw3zHm1kbwtgHSUO0hPnDBH14ZHkDrD1tLs9A6QOE95M0oVNLD7KGdK00PAV7oWSNtIXVSIs7TjA17eFwKz4yFK3K8yEcBlh6yIvIfwEtQFvJQ1wXTMZoG3nQhM0Mz5h54+puhbQHRY8wfq7VSOunNyabvsLEadTlUTSH0SPGPQB+qX8TTRRNMElnIzQhPUxPLzJNNxIMIxKsXnVq+pViydsMuxRM0sJXn7EWkEZY/7dEec9HWO3p6MXk6vK6h2tJUm9v6+q87ffxJUZuPe5+M1Qh+x9vXgp6TP6+qAAAAABJRU5ErkJggg==",__vite_glob_0_1$1="data:image/png;base64,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",backImg=""+new URL("../png/back-c3f6ce34.png",import.meta.url).href,__vite_glob_0_3$1="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAMAAABg3Am1AAAARVBMVEUAAAD///////////////////////////////////////////////////////////////////////////////////////9SnXPCAAAAFnRSTlMAM2aZ1Mz38e3ky7+loYBuOzUbD1hXtcj05wAAAIpJREFUSMftlUsLgCAQhHtY+X6W//+ntkJBHkTWk4FzGmS+g7rMTkPtOhm7MPmwx7gHBDBH0NwFoClxOeAI1eW8hRjJAQLGFoEl5XIgmWUASfIQvgZ4ccg3b+BQ1QAFxjzACp7XAA5m/QBbDdj6BxCXxjwr9uN6Hr6OgVLNYIvsX2WcLxT0yhpq1g0MeSOzj9WeiwAAAABJRU5ErkJggg==",__vite_glob_0_4$1=""+new URL("../svg/background-339c2bb0.svg",import.meta.url).href,__vite_glob_0_5$1="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAMAAABg3Am1AAAAe1BMVEUAAAD////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////NgkbwAAAAKHRSTlMAf9skC4XC99iVZkfz8eWteOvnrqqQhm9bTDsvFAXKpJybcmhYSSYbq8omrgAAASZJREFUSMfdlMmSwjAMRAVkJTuQCQlh3/r/v3AOcZVjZJRU+TTzDr7YbbUsyfQ38Pa7KMui3d6jWaw3UGzWc64vMKKYDHIMYBAcSSbGBzGJHMA4iIItGFsx4xCMUMo7gYVEKgEsSMUoYaF0iOCWg/xK7nWQK+3eS3K3us+DPHHuM+3O+3n348sl9u/P97SbxznHiPz8kHy94hSMNH6Rnf6qOmm5Wi2Nbrr2ZKGtoPCJfBhUrTg7C6IFYEYr2Xm9PQh0tB9YFK3eVgImNlx5uTajVpWJFuTj923G7vk60JAmmCMISJNi2hJSJpCTRsosic+qLfH/iBeO/083aAb3jBsZdCeA36o5dfRJV0f4QlR3Xxo8aeoiiPIqC4Ewq/IoKOom6emf8Qv7FXRZWnmBuQAAAABJRU5ErkJggg==",__vite_glob_0_6$1=""+new URL("../png/bg-20e7cc98.png",import.meta.url).href,__vite_glob_0_7$1=""+new URL("../svg/close2-851f5aa1.svg",import.meta.url).href,__vite_glob_0_8$1="data:image/png;base64,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",__vite_glob_0_9$1=""+new URL("../svg/cursor-icon-1-35a09bde.svg",import.meta.url).href,__vite_glob_0_10$1=""+new URL("../svg/cursor-icon-2-e277d6c8.svg",import.meta.url).href,__vite_glob_0_11$1=""+new URL("../svg/cursor-icon-3-64b29b2d.svg",import.meta.url).href,__vite_glob_0_12$1="data:image/png;base64,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",__vite_glob_0_13$1=""+new URL("../svg/down-c6403c5c.svg",import.meta.url).href,glImg=""+new URL("../png/gl-0a9176b7.png",import.meta.url).href,__vite_glob_0_15$1="data:image/png;base64,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",__vite_glob_0_16$1=""+new URL("../svg/guding-active-a30cec46.svg",import.meta.url).href,__vite_glob_0_17$1=""+new URL("../svg/guding-8da6abc6.svg",import.meta.url).href,__vite_glob_0_18$1=""+new URL("../png/headImg-fa687b2a.png",import.meta.url).href,__vite_glob_0_19$1=""+new URL("../png/headTit-e8696132.png",import.meta.url).href,__vite_glob_0_21$1=""+new URL("../svg/icon-staff-active-937cf7ca.svg",import.meta.url).href,__vite_glob_0_22$1=""+new URL("../svg/icon-staff-6a809c25.svg",import.meta.url).href,__vite_glob_0_23$1=""+new URL("../svg/icon_evaluatingOff-05461279.svg",import.meta.url).href,__vite_glob_0_24$1=""+new URL("../svg/icon_evaluatingOn-a6a49955.svg",import.meta.url).href,__vite_glob_0_25$1="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAMAAABg3Am1AAAAWlBMVEUAAAD///////////////////////////////////////////////////////////////////////////////////////////////////////////////////9ZMre9AAAAHXRSTlMA7/YXwF1PNyEEEYuH1fjlysewn5l0b0UpHAzU8WC2XK4AAADqSURBVEjH7VXJFoMgDKyiooj7vvD/v9kLVUIB35zbOSYzD0iG5PVHXh6xIoirMvfzU822NKmPnykPMjefRT5BxJyCQXkxuPhcBcAdgi4k6BwVUkF8VWpvwoJmtwRSPUBaLa6fBDVteK8e0Zv8xWqU5EJwaTVyuflFRTKJbqxISLgqLsFM+VeioIr5Exfk7Hi7j95iclOhw5MyMb4MjCQ16WhLvex3fKujtBqrKVhp9WABfCX40XhZ8cbpxOG0BrOt4TXfWXLGeHla5kPtDX8g9IvCQwAdM+ggg0clOozhcY8uFHRlwUvx5/EGSk55VOMytXYAAAAASUVORK5CYII=",__vite_glob_0_26$1=""+new URL("../svg/icon_menu-99ffdcc1.svg",import.meta.url).href,__vite_glob_0_27$1=""+new URL("../svg/icon_minus-549a0b1d.svg",import.meta.url).href,__vite_glob_0_28$1="data:image/png;base64,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",__vite_glob_0_29$1=""+new URL("../svg/icon_pause-13985e91.svg",import.meta.url).href,__vite_glob_0_30$1="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAABkCAMAAABHPGVmAAAC+lBMVEUAAABLv/8/2PpO7Nw9vv////9Az/g8wP821/dOs/9E6t1Sy/9Ct/88w/8+v/8z1PlFtv9Gt/89v/842PY96N80zf9DvP875OFM5+Ewzv4+6tlI69w/69ZB6dpDuf9Vu/8/vv9a8dVDtv9Dtv9AwP8+6tk85eA5yP864+Je8dlHt/89vv9G1P5c5+c91ftbvv9C6tlDuv9O7do959z///8+vP8wzv46wv844ec/7NZDuP833O9f8Nsyz/1p7+P///871fs54edjy/9C6ttgxP853utI69w5xf9UtP9o2/5b89Rl7ORM6d83y/9buv83xv884+RiyP9t4fRt3fz+//9Etf9A7NU4xP9Ftv9q4fcwz/9k7eJp3fs62/E12+9D2vVF4O4y1/Qwzv9at/9m2/853upjxf9hwf8w1Pkxy/9T2/Ra4/FZ7N9l7OSu7foy1/VQzP4x1fb///8Tsv8w3+UQrP8Rr/815N4Oqf8Vtv8Wuf8YvP8y4eMbwv8Npv804uEZv/8Lo/8cxf8eyP8t2+su3Ok56dcn1fQ459o25twfy/8v3ugr2e4m0/Yk0fkr2PAj0Pshzv0Kof8JnP8p1/Er2es769UJn/8Imv897NMgzf5A7dESnP8coP84wv8/rv8nrP8rpv8/6dhT8dM0r/822PJM8NFE7tFHsP8lo/823exCt/8VoP8n0ug3z/8hwP86qv8yqP864uNH79E6vP9Uuv8Vpf885t1G7NYrwf8guv80t/8fpf894OhE6Nwdsf8bqf9D5OIix+Aixf8brf8s0P4/3PBa7dtM7tURnL8vyP8ruv8s0/hG4OwkuOgcvNtO7NlRxf8itf8ps/9R4uwjzOdi0f9H0P9Uzv8oyf9eyP8mzv5R2fzl9fsXuvlZ6OUTo8UTsflH2fgfrOobttNExv9Hv/9d2f5a4fNi5e4hsegTqcwbwvlj3/gjzvEXr84zpcQNl7weyfnP6/S57fpVttHU9P70+/2A3vsbvuZ4x9qd5f203eiVz+Dr8ihNAAAAcnRSTlMAIgUiOQQPWSH+PzHdGxX+xZGCQBiRaFn+4tw086BxTUT9+e/IkIH+8suvoU8T/v3NuHJrEvPw4Me4nJyZcU4L7dzJwZprS/Dr6+vm5snIvatzaEMZ5+bW0sm7uJGO3MfGu6hA++/q4c+ysqFl+DDl3rJm1Rl0AAALlUlEQVRo3q2YeVRUVRzH77AMyDLAsMWwiOyByKYsoqGCS+W+p5lmm1sbLrlk5oKamriRmTooOkaDQhqpjJolgsoSKAIikmRuZe5Z2nJOd3vvvnkzj5lRv38wniPnffh+v797370DzJUiMMAt0tUpuEtBQZdgp5BIt4BABXiacrbr6lQQ7Bql9LILtIEKtPNSRoV0KU6KsnN+OgSZcnSBU1c7mZH/sYtKUo9Syp6UoPByDXL1auMxMq9B6hAvxZPE5BbkpJSZtjqqr+fjxibrGuQaCMxS4CB11OOkJncLirMBZstmkNpTbinDbsRoEULWfkjGwF5vvRkT8+ZbvXplDGkvE2FGJdlZVkZccICVXr0Zb8XEfMsrJibm/Pnzb2YMFYKsuvcdZG8+o31wpKBIxZCB8Pnt2rUrYLp69erp06chqNcQwWQ5T+7b0UyElVtQAOD1WmQMBOTn5+bm7qQ6BFVcjECI0zBlGODVPdzTyqyl4epkwzwNRAT0/L3bmOqgMAhhzp1v6MUwNj4DFGYMrlMcPyWOEJGf+/XXe7dv334Y6nui48ePHz16pq6ushJyrlzBGEd+KgclmSzGcUQk51eegRCI8NXhw1v3c5o9eybGQM6ZysrKYjXCNDS8LOfSnujjaGLcg934pPphBCRs3Y21buHChR9BQQrUrOkIo9NVlqgh5ty5huf5zj0T3dv0Eazk2/+2HUZs3bp7y+4tGzeuQ4yFmDEbMWbNmj59zpw5Op2upEQdfqURmeEyUCa24UU2gvMhG9gun0NsWb9+I4UwBgeZq9MVFZWUhIc3QjMvyTgvPpK9KJwiOUf9oA2E2AIRUGIGRhDI3HmYUhHe2Hju2vOcg4k+Con14RpH/b7WLz8X2sAIEwwImfdxUVEppBQiyjD6rDEDjK8XNyc5rRxF9RUO6nPTDAhBlKaKwsLGC9dep/XLfTyN7iVBNtQHYiAbnyOZw/h4/vxSnkK92JR1NFJ6cADXRz6sw0LG/EUche+le6Jh+XGRFGYRA4owFi0qXdFURih0xiaPETPsgp1JYwNFjHWmfFDG4sWLVzSXFXa6dOHaS6Rz50TR+0U+IoC2b3EfjLGimVBuvkwD85HrT9ZoKzpYuTxjvaWML75oLitz6XTp2s3nSCqTPPVap5Ml7ydkbLSIASFr1zZDCLTyfDRAcncRdt81jg9rO8vKcsaaNaurXASBvZrKGM7UiGM7XDrr3HLG6qoql0uXrt905KzY2nKNuJJPVxzWesxg++5sMxkE8mmVi+bShesvASTb8VOHdyYURVAgaZ2GtZ52vtCCzikDQao05dDKMMTo/LL2jaFpAMnLSc/IepaV0Edx8RzEmCuZFfYBtUyjKT+LrdgO76nVThiOrbgqyZ6FjOyGaRmb3dMtmZktDyV9CBnLsjXl1dd/HYacTNBqp+C8ZAVkH4gkRjBC7ON0JtafVwSMRQY+MGLZhmxsZSx8ZNo7U6ufw3EpSe0KYgQxWB80qpn3M6n+KUIIaQaBYCvR0Epa5/HjcFpOXhgSQI0Io4LClf+cyaulgWYlzcjO1pZXn/11KEDq/QpeJAUyWvv2w9gIm12EwJBfMgX6o4IwFpM+xAwIWbVEW42qR7LXOKP9l8yWLH8nTAsmZehj+s8IwvTXQ8pYwdagHgNCkBVrgPSKN9pSupI5RmntZgzmY7oQQgegEUEQQtQ5ZSzRHuHzSk1FldiR2UJpGdsSxRA6AE3CvYT1gRg5S7IwZCpA8oalKGglI3ZCyDoyu+JlziBMLa9L9AEZS7Kyjhw5e/FFUorWAwR24SrZBiGGW6IBhA1Aob6PDQLGyiNH+FLecAcBIWTfyt17eP9uiW2XQUQDIO5jFWJAyMqVMxCEvLuSewO3KLpKth3eDwlGGIYQNgAXBD6yOR+I8eG+H85epM2PA5FK8tpCEKltl0EMB6CK9SFgIMgzF7sBpLDBIMSLLMWdECK1tf/0W6akWm5ihr4PChlL1nwyN8Gjd277fv9HRhkSEDYAGr4PxliAIM+SGe4JupAXlhOGSLyiJCG0mWyhjxmIgSF0ht0jQBfyeg9GEAkGhUjr4QaEEPjQgzhEgGICCUIQCYZJyB97aFaMgSFvAyTffULIbKnXuUlIfY6Y8cEBAUQY10wJhknI38dyWB+E8cGB71hcguKPz5RgmILcv3xMzMCQE3zxSXSED9UdPz5T4ujz049tMf5tvVyfQ7JijE8QhBthfjEiiASjTUjLg1O3j+3J4hkLCGM5gpDFmJAM4ui2cqjuKIQQhPh49bs05L9Tp27X7MkhCMZAkNoT3LbCb5AIMkvimCgJuX/nVOvlY5CRJWYsz4OQeIDkH8pv9cV1Z44SxhwxQwry1993W2/X1GMfGMEYBEK3+gQQ2Je8tIoPnTk63ShDCvLvnVM3kI0l4qywkbza2hPkpRXhABRq8vpNQhDjjMUEIi78LkoKMbLYWHGMpXkHa+kEWx/wANwMRx2qhBSjR2oGERWObBj6WA4ZCEJ791ahp5PmvYorzyAXwpszZRhC7tOkpBkIMo307g9/2CWRUiAEUyBDfGy/96OxwjGDZiViLP3s4EmuEpU3/OFMSwkprtTNZVnNZwwewgqvITaYD4xgjLyDJ9F6p5VAjaIHbnWlTmeMwSCs8Po9dNs17mPTJgiJJ+tdhT+Ug8jVQV1SqZvH+hBcce49uq9XOESsyjHcrnjGZ5CxowO5ZqeHkTZoXnHqEp2O9kEQ3NXg3qMHeoWz45Xe7DLG5oMnO4wlaeWRZsAAJb4HB6pLinQEoX81gJAbD9B1jhbOjiViH0sp40toxIFsXLGEYTvkvXfwvS4EUoroWOlfB2/VtN69c+cuLnwDfdVK+SCQDqR2oEogn2lD1eoMRGmPIcwHuxrcqq+50dp6AxW+IdsEgxoh+1Yfv2hipHOcWt0X34MHIApGiK8ft+of1dQQBGVkSXW+afPmb3btoEbSQwFR5wy1OgRDbMIrEGUR64Md229B4aNojoQPxvhy144OvuT17udBIWnDh4T0SkMQ4BleUVoq/iZDeKRmfUj5gGF9s6tDN4CV4g+obG3THMPdAZK8b0VTaeliA8YydtyVYNA6aFgvRBMjaH6ZPEdZ4c+O4YhC+zDXB5tdGhZt3SoWNcIk9+lOaYUVTU0rpBg5Jn0Iw4ofKRd90ZnoTOgDIIUgpBmGWzvzgSaLpOLh5w1EGjOZfMp6FJY1N6812vkS01mhQqxp6ylALPtEGpgjoaxpm7FAnBVj+NKw/CBMrI6FNgDLvVNhWVkzmyuJrMQ+NhMG3bOAr18fYESePnKK6+RSVrbaRB8SWdHBAnJVqAGAdD7Ginrp4eJSJbpx5piXFfVhlRJLnyWWwmcioL1QipgxQ2p2N7M+sPxVHkBC9j6e3L/Gd4IYiDDPB0Tg2eWqDh1pDSTlmKjkshvXSaPREATzYbg+WFS7dnTjEgrzg46k5Z7oyU9bD0ih2xX/FYDR9UGjgpVTH36kGWkvPhO5vyc6tbxco0Grow0fzEY0l4H/SOZDspcx/I7jO768XKvV4hvOSqMMjEBt8M+Vp6isgUl5TPKxYSt0AsZoDY9XpHKIOAkRbN35qmI9gBmy8nTpLmhpSvURpH379i3grmpQeVAHoU6e3DFW0EC8X6iVaQLt/H1ngbXeE6oRBekAEUIQwrPx0YLfTBnJPJmU/as9ugv/Iutpg/v/gPUd1cHa2tr+/tOshQnE+6VYA0tk9+4k8kZmoD7x/umx/fs/80z//rHp3eL7iB7oEDvSG1go+TjNqwxjUg4pm0PlwHLZp5qN6ZPu50+MWS7ncW+8EmYPTMg6TOUX6gEeX9G9k7XJve3bICSk58UmRIMnlH1YT23PVG97IwBvf1WeKswaPBV5eKf23BeRPDgswdvBwdfXwcE7Icw/3S9P5e/NYnoqIPfeoYOTe0ZEHDgQEaGKHRya4GA24H/wnuVZaWhhzAAAAABJRU5ErkJggg==",__vite_glob_0_31$1=""+new URL("../svg/icon_play-f0c384fb.svg",import.meta.url).href,__vite_glob_0_32=""+new URL("../svg/icon_plus-b3d97051.svg",import.meta.url).href,__vite_glob_0_33=""+new URL("../png/icon_reset-51a1bf04.png",import.meta.url).href,__vite_glob_0_34=""+new URL("../svg/icon_resetbtn-68afe187.svg",import.meta.url).href,__vite_glob_0_35=""+new URL("../svg/icon_speed-9c32fdc9.svg",import.meta.url).href,__vite_glob_0_36=""+new URL("../svg/icon_speedRest-e296c675.svg",import.meta.url).href,__vite_glob_0_37=""+new URL("../svg/icon_zhuanpu-cdc8567c.svg",import.meta.url).href,__vite_glob_0_38=""+new URL("../svg/info-99f8d45a.svg",import.meta.url).href,__vite_glob_0_39="data:image/png;base64,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",lxImg=""+new URL("../png/lx-4dd7abe9.png",import.meta.url).href,__vite_glob_0_42="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAMAAABg3Am1AAAAk1BMVEUAAAD////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////ROyVeAAAAMHRSTlMArVfi/JpK9EX47OY5FMS2hmgoBtahMxcM8LxvPiIc3cx8U1ARpo14dTuqfn1iXlzwPa3dAAABhklEQVRIx+1T2ZKCQAxEuZEbBZQV72vP+f+vWzoDKcZjSx+2aqvWfjFp0j0xmdGe+CsofN9Pe/k8iQ/rsl/hH+PqhbONIRrMuDwSgLfigjQkZuG0uSkIrYNjixZRJhnL7ZhKEiuZDaWbLRgmMbXHhCFNg/hVZwFOd83kfYmCHMykCez4Yw+nSGsx6AR555Phn0xAVbYRpugVVheCTRMcEND3sdYHjggUATA8trOoMal+/ZwIRaDAUk8I1ouGePtBMKMxcQHtapDdFsQoOPHqkGEGNwUJGXJaG3KVwS3BEAV60DMIbQGquC5wXCwr1xSsR+jqqsCHm+t0KdM4trwiSD2sm1IVY9yWS0Gto9uEfQdR1Zu0cyEI4CNWygC/KCqnTTg/F5R0TffqgKd+E2xD2r0i4Nc0IixiOIxAhObOw+/nuSBzRQ9GIGcMqLveNckGwVYooD1ZU36CGV9NTyy3siX+ipenEQqT2plZ2t3IcutUaP8bli7uhC4ni/p7FQ8LHm/pid/BN3OTZ3R1P8PrAAAAAElFTkSuQmCC",__vite_glob_0_44=""+new URL("../svg/modeType-50f7e8a4.svg",import.meta.url).href,__vite_glob_0_45="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAMAAABg3Am1AAAAjVBMVEUAAAD///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8DizOFAAAALnRSTlMA+sUUL1chBLeLbQnsqnP03II0fUg9D82/d2IZ8eechijf1KhN0cixl5BBomdSUHFLSQAAAa1JREFUSMfdVdmSgyAQ9D5W463xyp3Nnfn/z1tksRCByOPW9guI3cDMdA3a/4RZtlEetQ9TiW35Rxhx9K0lemEAC6P4RHc84OE5Ur7dgwixLeGnIEMu5PsgRyPgRwBwMq1erPji+KUO4KPREwv0csYPDgBPNGYxiHEIuID7StPOMciQsmZAxBuqsg5SxIxRcgC4a9qKXHhbdG5XbHV5bpOBdt8SNzhj4Q0migk/Y6xAwwuYnFnTGlAkFfbsGf+uEnH1VkAxGGe/RpP1frAXUKyo4Juuhi7K2QZPNygvbggj+okHQ3abHZnvpofXU5fT/GF7jMkxqCV1HID7agI1QZjhTKDQ7mpXOg/bp8O+N6WgN0MVMelaKaW1JpzQVixc/RuYZypZgwq+GPNR8ObjBTkQcPbWL6n92HMCMwYh9Bs5jQiWelKC6iURBAcRH2elTE/XZ2NRAW0zM8TOsH4cbzdvTpGwQdq6vJv584DRhboYOIE0cIM7tvnc7k/EtxSvzw+KhxbejMCSPVnU6O6FOXLhUWzRV0cV12Dp2cVldts1Tln91pRRZY8s0P4yfgAA6rAk3MjRBgAAAABJRU5ErkJggg==",__vite_glob_0_46=""+new URL("../svg/music-e800b1ef.svg",import.meta.url).href,__vite_glob_0_47="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAMAAABg3Am1AAAAdVBMVEUAAAD////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////li2ZAAAAAJnRSTlMAC/NHUvfm2MGprZV4cBSSTATIrpyPhGdmWy8i7Vc8OeqkiGkbu1jhCIMAAAEpSURBVEjH3ZTXsoMgEEAVIkWDRqOm2NLu/v8n3rnFCQgumeEpOY+6R5YtRu9BfJKcEC5P8WvxBwb/sMMrn09BI/UeUgowEKVHyGBBhsefweKMCntb2KM3Tmwhwe5NwQFFhKNLOCLC1iVsA04IuwNepfA+4J0OnyV8WsP3Ad+48J0O50HvbVHXRXunD382w5WBBrsOWF5dRsCCZN1KeF4bk9Q/p6nOXfG7iz5xbR51EmYuO8/uyN8syi9ti7D4ZJgPBdtwvIJmfjqBhpFVbNRynB+3RoX1+irnTlKzyEoTKtBJ/6pcLPa10oRFv5qf0zdWB9cFSKhHELBg4xCEJlCXgP6flF9QkcFY4UI1Rkumgq8JvJhWBpyqJhWc9UTebpL0jIu0UTSPPoxv5H52EMFGNzkAAAAASUVORK5CYII=",__vite_glob_0_48=""+new URL("../svg/off-604231f2.svg",import.meta.url).href,__vite_glob_0_49=""+new URL("../svg/on-5f47e293.svg",import.meta.url).href,pcImg=""+new URL("../png/pc-bb226da5.png",import.meta.url).href,PcEndIcon=""+new URL("../png/pc_end_icon-c048a862.png",import.meta.url).href,__vite_glob_0_52=""+new URL("../png/pc_icon_pausebtn-6844b114.png",import.meta.url).href,__vite_glob_0_53=""+new URL("../png/pc_icon_playbtn-727f07a3.png",import.meta.url).href,__vite_glob_0_54=""+new URL("../png/pc_icon_resetbtn-e6358a0f.png",import.meta.url).href,__vite_glob_0_55="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAMAAABg3Am1AAAAPFBMVEUAAAD////////////////////////////////////////////////////////////////////////////YSWgTAAAAE3RSTlMA43GqHPp/3pss16JfDgnv7FFQOvASJAAAAKJJREFUSMft1ckOwyAMRVFneIAzdXj//69tSmQFVSjuojvuCkucpWVp/ZCmCHb53fOoz3NHxKRSFECyDt4hFP/JK0CehMIDoAYSPYDJQPSBaAA+AAP0ATbQwN/Azfav2LF7FfCxT9vEo2nb5yfrAPMqy0SaWGSdUQG5UQaeGmQkG/gEH4CB6APRQPKBZEDhAVCxggeUBwJXAOH7ZFVBPlktfy+sIEgz6uHKbAAAAABJRU5ErkJggg==",__vite_glob_0_56="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACwAAAAsCAMAAAApWqozAAAAz1BMVEUAAAA9PT08PDw6Ojo8PDwYr/8+Pj49PT0Yr/8Usf8yMjI9PT0XsP88PDw8PDw9PT09PT07Ozs9PT09PT08PDw8PDw9PT08PDw9PT0+Pj49PT08PDw9PT08PDw9PT07Ozs7Ozs+Pj4QsP89PT09PT09PT09PT09PT09PT0Xr/89PT0+Pj4AwP8Xrv8Yr/89PT09PT0Yr/8Yrv89PT0YsP8Xr/89PT0+Pj49PT0Xrf8Yrf89PT0Yrv8Xr/8Zrv8YsP8arv8WsP8Vsf89PT0Yrv/55D79AAAAQ3RSTlMAbb4bh9xSJVYaBe9kOPvcjQrlxXL26bixmoR7XVhGHxcRD/LLpaKUZExLKwTv6dbSwLB/dWM/PjYt9NTKmYRURTokO0G19AAAAahJREFUOMvV0+lW4kAQhuEmBDNjJgEMsssyyI67js7m9ub+r8luErDpkD7+8/j9qlPnCd1UJeIT8/rv7PHD+DqO45ds+7Co5zDtliS+M+kiYidHg3f8w7AuZnq5+ASoO3oqIheXwRVmfn6XUfhWFau0W3Th0qSr63gnZ/N1u3sMtEz8FBspqW4vRKZi4jsTn6f3bSyH1cyNSwa+lc0A/iYbMPX8m8y5ZP9V8Vv1ZtAW+1PNjK4ABW3nM8fHj2rSBT6jexsOypttL8QN4FrwQg3Rv6gDYbfvXDhePvZ8uOypAxypg3XvSuL5PtyERjW5+hhO19Xzn/hqtQd7UB9uBlGGX8kE1cyyuKYPsWAs1cSt5Me2xzTSsjIZZnETvPeFbC4tetDJ4gkEW1wEJ6kOwM3iG6jp307Lhh+gvH2lIjiwYXEK07TsqAet+D6E8UAWwylwIqxYTZrQmTSOk0/HjsVMsnXCjrBjlX6rLulovBQ2rPkHT/41C7ZF4rY2/akVd7Rd9WHkWezgSH8LmuBXCnlpSxvtPGqPrx9cbFptZFzS6+Zeo7sUXzlvWRN2o4wdJBIAAAAASUVORK5CYII=",__vite_glob_0_57="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEQAAAA+CAMAAACldE0nAAABOFBMVEUAAABLv/s5s/dMwPwlpPZKv/spp/YnpvdIvPlAuPknpfZFu/pLwPonpfVEu/onpvVDuvhMw/onpvZNwfglovQsqfZKv/tMwPtLwPpMwfxDuflIvfpLv/lKv/pOxP9Av/BAt/g/t/hFvf9Iv/87tv83s/9Cu/85tf9Auv81sv9Kwf89t/8+uP9Nwv8yr/40sP8pp/hMwf8npfdNwv4wrf0lo/UrqPktqvsurPxMwf1Pw/1LwPxEu/5LwP5Pw/9RxP5Ivv09tvxGvPs4s/40sPwyrvk6tPxNwPsvq/lBuf02sf04svw9tfk7tPksqfg/t/xJvvtDuvw2sPlNwfw4svlGvf5At/5EuvpBuPkwrPpQxP9Buftiwvxrxfszr/lHt/1av/yBzft4yvtNuv1VvPxwx/tRufpRuvzEP0KvAAAAInRSTlMA/h79/fr+cVD69PPuvrqhbltUOero5N3BoZ2bfGsNCObmMOBIlwAAA3NJREFUWMOk0H9rgkAYwPFDJCGIYGzvoLbCKImt+vfwPNRbF4gIQdqPrfb+38Ge59LKirG7vhCePteHU1JmOa1n+0Mj+7nlWOQyq62AsUYKal8wT031f08rJTWfKsOxFSAnWh0h2ynPYQMhD3m+mk81QggYW53Fao69Sbrb7Vff69m/m84QkhNv3LQAaTc8+bnd7lebL/quE1JSeo02HASMcLvd5ZufdTzUCR2lWMRpyPAABrwMH46u9o1OD64HFbMMZcMhLRmGuTLckV4AIRLKFnmR4TLHD5L16+G22/U5xTA8ygsBY7lCo9vXLh4xtgQFkWBtZKASswARMBgTvt+9SbHdPwIjZqiQMCgYi8EwyQekCBBBwxRB5YjEgPhv9XBLtVKXe3MfkBiRABEwjDoiASICDVNFKKRgAoyOUaAIVgCSCMHBMFS4EElACkQ6xp0QzjuuYR3ORVKQ5HEkIUkqOIXbQT339Ki83pvDj3KRIsIpIAOjMpdSXiILNxsMehAOemXnrbi+ndeQOSBZ1jMqyxaUz1OSzikgkRkSAUJLJEPktVa1rbq7P4+iaFEiiyh6NetxBCuR39LrpkVBKArj+NFBMIoogpnem6ld4CJcqVlxN26MlIso9f2/xzznZjkjOQ23P/NSnnt/HNp1jIFst9slt0U8Wy7VX8Sv1PDRHO+AxEcgp4tCNGLkciqRlA09Jb0h6StIykgc8yJZ88HVqnmW8SpxTHEBJMuylUa4BqS4IyutKiQFctBDDlkmUiCtIhWHgyaCi0Ba9FXkQjCy/iOcfzSHIkRefFIXCIxwHYbVNES1C4/mITYB0qWeQvCwGtZrwvFWbdIjs3VFNhxPNs3V50CwScskGvNnErDi1NogpzE2At5kTERmW4gkCEJv4/Klf4bDrhcEicjbJiE7Z8TzXBeDa47Dv87OKdvt+KV6jsqDMLBJbpOqVypwVLf//u5H/u+Zh7BIInpUZreThBlA96Tv+ko5n2+GxF2+rQBFJG2b7pkTC0+M4B5zPtrDgLL3EV+tMnDBmtS+e82675Zx7U0lPUb2lSGlel4est67MxBP6kupEP6BImWfNBpFEghSRjQineYfUPyb8TEnrQZWhVgD0mwaRT4E7BFNSbshFBRFQ9LP7ESqjkkvZFsGjDebXqrfMYxOn15sMRgs6EnfkEyUCbVWle0AAAAASUVORK5CYII=",__vite_glob_0_58=""+new URL("../png/qx-94a58756.png",import.meta.url).href,__vite_glob_0_59="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAIAAAAA4CAMAAAACeQDhAAAAYFBMVEX////C0N8AAADI1OL////////D0d/B0N7////Cz97////B0N7Bz9/////////C0eDD1OHC1uD////////////////Cz97Bz97////////Bz976+/zb4+vt8fXm6/HT3ec/6Yw9AAAAGXRSTlP+/QD+G/lq9/Lx5eO2bE9MGhm4t5ybmplvrXGEmwAAAPRJREFUWMPt2cmNxDAMRNESJcv71jsp2c4/y8FAaHQG4oUvgfr3AhVhvg0NV9IMtzlQgTL/AFeGR/gFLB0r6JZvwAesAp8SsICVYPkPCB2r6QKBnqzoSQgNK2oCZlY1486q7hhY1YCGVTVgZRZgARZgARZgARZgARZgARZgARagH6BcACTWhISDVR3IrCrDgxXBYzxZ0Tli8onVJD8hygVWgksiNidZqQBZ3AZ6iVyJFaRL5EWgvRfxJ7gynF6k3wlEqxMRn4+UUElKR/Yi4tZyWEQnKlz8XjZrLwr69Xda7e9WKmvfO5WAYovT2LpK2nGKGxV/emea0reWbEgAAAAASUVORK5CYII=",__vite_glob_0_60="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAIQAAAA4CAMAAAALkqCbAAABJlBMVEUYjNQAAAAYj9ceovcYjNUcofYboPYfo/YZjNQZjNUcovYZjtYajNYanvUul9kan/Urp/cZi9QZjNQYi9Uurf8aofUZjNU4tv9Lwv9Gvv81tP9IwP8+uv9SxP1Evf9Au/9RxP4lqf4tr/9PxP8nq/8rrv88uf9Nw/86t/8zs/8wsf8vsP8prf9CvP8boPcan/VRxf8covgfpPsjqP0hpvwdo/kxsv/b8v4oqfooq/4urvxPw/1Kv/wyr/lGvfsjpvk0sfs5tPkfpPhDu/03tPxCufpLwf47tvwqq/strfk0s/4jp/w9uPxAuv09tvmh2vl+0ftOvvhSquAsltjV7/3J6/2t4ftfyPvC5/rF5vldv/VjvO+Nye1+w+xrt+VptuVasOQtltg78navAAAAFnRSTlP8ABn0820b5eO2nGlMT/i4t5qZbBxPjRTlEQAAAypJREFUWMPE0FFrgzAUhuEUUUEo7UVHYXcd7bBrUbq1JQYkQYSq+f//Z9/JoSvItquavBfGeAJ5UMy4JF6kpdfSRZzMOMGErESFzxwkSx6Il8gBTl5zkmh+R8QlAy5eY0cZM2JegtBcPn3HjnJOiCQqmHD2HDmaUxElQGRF0zQksF9es+TA1UU2Eyus+mytI2y85RjWnjWuX4kYBg2CG21HR6tq9OFZc74IDA1FLJbOgOPVttp6DNeB6BRLkWotrazQkadHrL91fPacFHIjtU5FpKWUEASpqjopdSQ0EB0MO4oGWMbv1ARz5BBaOMMuUGpHCkJ0nVJvgVJdB4WQQJDhwP11+jDRXClC8I84hAqIDggYFG0//mmiuUMoQvQw0Jcr4pXjc/xlujkQvRQ9EBjsXTSk52PPz+nmUPQ9Icx1GPZBGoarYURthmF4DRIuNjUh6tCImhDGEGEdIFzbGgNEDUS7Dlbb4lcQov1B5Dmv4/dp5mNEHqg7AoYbtu8ULzltfeyx3qBwiO/i7KU1YSAKw/BJyEJRCm3h0KC2gULajeCui0xDwzDJJje1V+/+/z/RbzqCXdRdnXlBTXKQ8zAuLQo8c9NjUfwgMiDKOB7aLtavGIjsmV4yGIauisuiyDLKDOLOScNhWR4QZVVVd382RubqHHNUVQdECYQcO0kCUWpEbQy3DoJCVmVtEFL+moQh3mzdjw2irpU2hC4CR0pV1wYROuuAUEqmYThwUhimUqmalFJp6sYABBQA0BQHIQb54MZBWCtwFFNa4CCEyG+clAuRpmpBS43I8/xBpwcP5urQ8dkZ5rlBLGmXAgGDk6DA+h1dtPg1YLjX4eNU55hDgaNoL6izngKRJNGpL04mx8//nSdJAsR03aHuvDGIaBJNLIZ1UZIIIZp5l3o8a4DQCu2wk1mEpTDMuEc+8eZ9hPsRiqw1Qnrp+4ZB8C6ZZ5+tUdjLGNrPGfOlR54fMM9Xb037MbLaR9u8rebMgQ+E1ydm3m+br9cni71+Nds9FlPf/OlyTewsuvY0AvUDdlTQ9wwC+VfEDqIr3zsiwOh1OwHZi4NOt+d7pm/gOx4ShLViIQAAAABJRU5ErkJggg==",__vite_glob_0_61="data:image/png;base64,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",__vite_glob_0_62="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAMAAABg3Am1AAAAmVBMVEUAAAD////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////VHQRUAAAAMnRSTlMAP7j89I1C8U9vC8y0lnY5EOvkwRb41b2jnGNdVBvf2tLGua2SWiyHgQe8j2VIJWozIt6D2UYAAAGVSURBVEjH7ZXZdoIwEECn4grIqsgquOBe2+b/P64zUYhKqHB6fPM+xMkxNyQzMsKbVxHrNkMGPaihN2CIrcdAWEtW0Acp/XLB0sKpy5oLzAUIy0m3/kjdclEICxznJjTAnOPSBdB9cmhETpkBhnw0Ez5o7X+Fk7+dlMkZEaf45w9hhJPsGhusQOvXCunNrMNKlGGNYDIiEILtOLwETo0w5sJALQXaOVIw2EiFPdaENszvBNAwMKVCjKExZaxzJ6g2XmIiFXT6hoakEHzD2Hn4uZbeYYKbzyCixzxkyVelAhXhCyzUvAfB20gFjU7ED8a+r4K+XvsOpVV2hw1lNAgCjc58m6UAg61E2DKBvRcC32khERx2w1AIvP5pVfjkt5shFKyEYFHgVgWfFQWgLjK1uJAdDhr/MRkVYd+97Fs8K0RBkKoVwVJExT2+ZU+sXyUghO51Ye66EVw4r7SjCupozOmF57s3Tmv7Tu9wiJoJEXU7SKYtGxkcGfK0e4tWCWrWqhkjSdam3RPqLlWed2+F/lDevIhf0Np+Ls5xJpMAAAAASUVORK5CYII=",__vite_glob_0_63=""+new URL("../svg/section0-aab0edd5.svg",import.meta.url).href,__vite_glob_0_64="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAMAAABg3Am1AAAA/FBMVEUAAAA11/////////801/801v801/////////////////////////////811/801/801/801/801/8z1v801v801/811/////811/811/////8y1v801v////8w1f8o1/8z1/801v////801/////////////801/////801/////////8z1v802P////////801/////////////////801v////////8z1v////////801v////802P////////802P////811/8z2P8z1/8z1/////////8z2/8z1f////801f8z1v801/////801f8y1f////////801v9Vj+jxAAAAUnRSTlMAPz+4/vrxT5aNbkLy5L389czDtJyNZmRcQjgbFw8KBuHU09PNx8G5ta6mkpBwXFI5LAn07evq39vYvKOgiYZ3dnVZVEgvJBQRD/aZgn9UTyQZ1bGXnwAAAalJREFUSMftlWdTwkAQhlcpSq8CUhJ6R7rSERAEu7n//1/cC4QEcmGScfjG84G8N5Mnd+xONnDhXCwCXTMhxHoHGticAvJY/ALKukAk7oGJQ5AwJQB4P9ErIHmAEKGYkZNHkggD3SDZAB1En1DIgRWFCOjiAQUnEORKn3AtIP8VQsNxfF8cOyVcX50QarjI7PJUkMg6NIWeYmUSZOoaQoNQgrLQcbnEFrg0hHdRsHJ74UYsJtJkCjz2xIvL+YEAWQxRprDA+GwhpHAgJDoYXplCgBBPnP7EJGE0m03SeK0AS4jjw90QodscVancYgliE0KwQS11JKSbTMFHTyQejCx3QrFSKbtoWVn/YUkrGgwG0SNVZZVGGCYMYUxkurxCaGLIMYQkUfCtEKIY+mrhhYaUG6GhpOgDDXm1MMSrRWxAgaa1KKQHg+ybgExVAu/dPlfaK4SCTL+lEjYWueMpjDWwKRr3C7Lg3d049/ulWfBT8lU5aNlvRWzhFYBC8Bl9pz+MjZk2xCwGBxlUDY5K4DKGhjESyxga9wj32fPg7V7tI7W3H5Q6XDgTf95TzsvvVW+XAAAAAElFTkSuQmCC",__vite_glob_0_65=""+new URL("../svg/section1-f7b2eb49.svg",import.meta.url).href,__vite_glob_0_66="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAMAAABg3Am1AAAAmVBMVEUAAAA11/801v801/8z1v801/802P801/801/801v801/802P812P8z2P802f8v1/8y2P801v801v801/801v811/801/8z1v811/801/801/801/812P802P8y1v8o1/8z1/801/8z2P811v811f8z2P801/801v801/8z1/802P801v811/801/811/8z1/8z1v8y1/801v996yOAAAAAMnRSTlMAP7iN9fFP/Mz6tG5DORUPCuvUwZZk5eC9pZuRXVQbBtp3c1pDLNLFiIIkvK6faK5LM4y0/gUAAAGdSURBVEjH7ZXZdoIwEEDHHVxYC8qO4L61zf9/XGdSISih4unxzftAJpobk4wZ4M2riMYmQwY9aKA3YIg5joDQu6xgClKm5YCuDpDYrGQlF1ZihJ2AU3b6zUvql4Mc2OJzPoMWzOY4dAu0nxxakdPJAEM67YQOjf2v4Hg7rTzNCXGJDn8IGXY213jJCpRpo5BWel1WMho2CDNG+EIwXZenwG0QfC4MjFKgmcMRBmupkGBOaML8RgAFg5lUiDBcqox1bwTdxE1oUmFM39AjLoRzlu0tbAPpHjScfAEh/czdKXmGVJhgdAEdNetOsNZSQaEV8YWx76swDgJvTscq28OaTtT3fYXWXD2lMwY7ibBjAjMRAp9JkQguqzAUAs9/WhemfHcLhIKTEHQK7LrgYauWCVA13myOR4X/mZY1IaHPP4H44pcdBUFq1ARdFRmn3GbQqyQuBiH0rwNz2w7hl8NJCQwwJh+cnnO4uXHKs3d6j4+wnRBStYNYfbKQic09qt4cB8DYtK3eRQJjq231pnJPGPt09Lh6j+iF8uZF/ACMe35iP7VHJwAAAABJRU5ErkJggg==",__vite_glob_0_67=""+new URL("../svg/section2-a0ded9a7.svg",import.meta.url).href,__vite_glob_0_68="data:image/png;base64,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",__vite_glob_0_69="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAMAAABg3Am1AAAAolBMVEUAAAD///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8ELnaCAAAANXRSTlMAoQX7Zd3N9hDu6ePZrKd7TxPTnJR1X1hTIgjm38ONcW1pRj05Jx0XuZePg1s1LAzKsrFah5VL3fAAAAGESURBVEjH5dPZdoIwEAbgYZdFFhURlV1wX6qd93+1noRjayAWuG2/a37+ZM4E/oNShP4u6V3HCPoJZdtAKoBu5+kav02gm46v3O6AxQRu3YE5MryBFQr0q5CE2iGEbqKCiAsYYM7Ms2/FaUhCJrcVh1bIQyvM5ZAKsk7J0ArjCnzb4pH6fiLndFed3cQwVUFCRAc4qlhBSbX3h5mwB3BVfKGPoCXXEMdbqI3GyDq2A2R+xfNoFjZoHve1fAB1VbElbgViJAl61hm2aVUzsKS/XT0ALhJyCJC4bMKLkFBdTgG9hWupOdtxQEpCrjmAbOzYZ1RM8L0ZHbcms5uTmW8DY6gHMm3cPVN+DYg6TTDmN25gD8RG4r3y8rjizDU4ZZ8RmcgdWH5O/nS08B0bWBuMFuQZe/KUOwKzhIYxohmf67VaOLai4YuJM2q/ozXdEuFUPbe9COTMd/w02IyApzSwtrYd9+JBt4pZcEkPOhNiavx8b4fQg7iYWhpKq10SQn9L+MO+AABdeIeCFJ6hAAAAAElFTkSuQmCC",__vite_glob_0_70=""+new URL("../svg/shenggui-eda4e462.svg",import.meta.url).href,__vite_glob_0_71=""+new URL("../svg/shuodiao-active-15d1fbac.svg",import.meta.url).href,__vite_glob_0_72=""+new URL("../svg/shuodiao-5a39d9ca.svg",import.meta.url).href,__vite_glob_0_73="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAMAAABg3Am1AAAAk1BMVEUAAAD////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////ROyVeAAAAMHRSTlMAs+gEyfz5sJmFMu/UgFJJLB0J5L+1q6CQbFg6FRH18uDVxYx4TTfhzcCkdGFFQyQX0OdKAAABGElEQVRIx93Q127DMBBE0SEpq1nFci+Su52e8P+/LgkMWKCzYypvQc7zXGCx+PsGx2indRYdB+jiFNiroIRPE1nHtMJdq5G9oe/elfbtD/0VqEpbga7BKCuagCgssSRBxoIMorOlzpAkPEggGfNgDMmIByNIQh6EkPR+G2geaEj2PNhDMufBHJI3HrxDtLXE1kC0YMEBMhNYUX86JMXHxgp6T+oEogiFfaBUDKZcC/svKZj08eb+sfqWgzIL3c7D3URdVOBMEWdra3ubh0BdLeCxnChH+1kmV64CHs3MDWYGHoPILVbwWbpBAq/ECSIDn+bZKWp4pU4whN+ras3RgTm0QYku6hl5ElXFl30+REemzOP4JcV/8wmuL3NAy/72ggAAAABJRU5ErkJggg==",__vite_glob_0_74="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAAMBAMAAACdPPCPAAAAMFBMVEX///8AAAD///////////////////////////////////////////////////////9PNSPeAAAAEHRSTlOzAK09p6KbkodzNyshGBEKyUyRXgAAAE1JREFUCNdjkFRgAAGmiQwGDBDAjMSSgLIaGeQLwAz2jwyCz8CsPEEGQdkAIIP1IpAleATI8hEEsaQVGJg2glmCixi0BCEsYRdDMAsGAGXPC22qqTvSAAAAAElFTkSuQmCC",__vite_glob_0_75="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAAWCAMAAADgvdz9AAAAUVBMVEUAAABnMgdpMgVnMghnMghnMgdnMgZnMQZnMQZnMgdnMgdnMgdnMgZnMgdnMgZnMgdnMgZnMwdnMQVoMQRgKgBnMgdnMwhoMgZmMwdmMwBnMgfLSw7JAAAAGnRSTlMA3zJmzL1XfCqU/NnF9vDknGtcOQzQgXZLD56OYkkAAABwSURBVCjPzc7JCoAwDEXRWoemg/Oc//9QRQpPMHblwrsLB5KoW2ZTiYh9ijVn/2ado/HJhpF98lCi/uvXqEI6yk40vb7Wz47ZheXivEDrOU+BY+LtDstagRtwI3ALDgIb8KCEbERnlNjY+br2lgQ6AOMJDM3YkDhmAAAAAElFTkSuQmCC",__vite_glob_0_76="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAA8CAMAAAAwsEgmAAABiVBMVEUAAAC4wOOgw9WYwOCht8uit82jt82kuM+jtc+jtchNn9ugt82kt82ht8yUudBJndujuc6juM2kuM5SuftJndpTodlXv/pQodlfpNZSuvpcpNdSuvqet82jt82Ms9Cgt82juMyht82guMqitM1awPxYwfqjvNJct+ZcxPtmzfpSufpmy/pRuPplyvlZwPpjpddbo9h1qtVjyPlexPpsptWMstKFsNNbwvtUuvuStNCcts5lyPpSufxbwf+ftcyqts5Vv/9exvtexvr///9s0/lv1/lIndqC6fl95fldxfqF7Ply2flhyfl74vlawfpTuvqI8Plfx/p/5/lWvfpXv/pbw/pp0fl02/loz/llzfmL8vl23fl44Plky/mH7vl64fl33vlnzvr1/P71+fy30+hloM1w0e9Opd5KoNt8z/l/5PVqyuxnx+xlteFSqt9pptFlpM+66PxtyPqc2/nA8Py+7vy25vy24/qr4Pp94PJ63fJ22fJfuuRru+HV8PvB6PliyPhvvuFuveGlXj/KAAAAQ3RSTlMABA0HPzVSRBsL8lokHhP8cWJe+fnl4t7PyLuagnx3aUsuKykkGBj6+fn07OrNx8TCrp+ckI6KiYmBd11XLS0VDPT0idcqqgAAApRJREFUOMvdkFdD2lAYQD8gCSsJQ/YuKO69t614W2iJVaSoKC0OhiCte3f98iYXJRhifO954CP3nCT3Bv43lua87r62tj63d25JRrd7e1Yb9HjbJVoz1bb6jLYpTbPvcKd4BIEnxt0h+nlHKsWlpDjmG/c7Nk6vrsobUhyPz9AMcKc/T85OOY4TljlxDtT3Mclx17/OypwMk/h8Xen09Vk5npahiz+tajQej5fLa3E50qMqYN/FFXjLwuyaIrMw8kmREejHc/dyb7mJ/YPvx7+x6IfeXYHLZQkHh8dY9EL3lsCeNNg//IFFN+S3tvL5vGyQF4BNzInMK+oGvmBiJy2b3KwbiMViuMDgiWlcQ0wZPljhebrC//EUg5VXeD34+AqPQeZCesyHpyCDuWj9UA91A1mM3KfmlzOZLGS/CcgFWGQhsyNw3vqKv1hkoPBVIHku3eSfHSwKUE0qUoXOZPKDAp1gUPRJAzgr6wpUnOAprr9/kfWiB8ZQ9eWgisbAaCvdJZoRBP8rcFeyGSE0hIpHCVmOimgoBETAhGpHuVwukcjxNPsaMgUIICkPQsXbzy3cFhHyUCREtEEnQqVKTuIrJYScQW0EGJIKGBBCtUJuu0GuUOOXDAGKZIClCeOEUKDSfeEmsb2duCncl5DgJ4wEzYI+GtZap+2oBfu0VRuO6kGl1r3RWmcGTc+1aXDGqn2jU6tApREKo3ncZRO1zTVuNgpeowJchAnKYvYNu+wGk8lgdw37zBaKCNc9LqI0qaUsQbPf7/P5/eaghdKSdBR7XKj0LBMhiRBltFosViMVIsgIw+pVdf/4EFZHL5AkwUOSC7SOfbpdTPTqRR3D0DTD6BbVelGLCd/o1Tx63opaEvFI5D8265dzagonvAAAAABJRU5ErkJggg==",__vite_glob_0_77="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACwAAAAuCAMAAABkkgs4AAABdFBMVEUAAAAzqf8mnv9Z6f9T3/9V4P9Y5/9T4P9Bxf9M1/9W5P9X5P8qpP9e8P8sp/8nnv8xr/8noP9S3v8rpv85uf8rpv8mn/9X5/8/wv8sp/9X5/9N1/8wr/8noP8/xP8sp/8pov9Dy/9W5f9M1f9AxP8+wP8yr/9a6v9L1f8/w/8+wv8mnP9M1f9Z6v9Hzv8wrv80sf8wq/9P2f8mnf8mnP9Fzf85uv84tv8wqf////9R3v83uP9Ey/9CyP8uq/9Gzv9P2/89wP8xr/87vf81tf8zsv8/w/85uv9N2P9Bxv8wrf9L1f8tqf8sp/9I0P9AxP8pov8mn/5V5P9T4P86u/88vv8rpf82tv8lnf8oof8+wf80s/8qpP9FzP9Dyf8ysP9K0/9O2f9M1v9J0f9J0v9U4f9Q3P9Y6P9X5v9U4v9W5f+Z5f+b6P+X4//r+v/o9v9+3/9m2P+R5v9w4P9u2f9b2f9S0v+M5f5sxf6E3/942P5a0P7a/p9pAAAAOXRSTlMAEMG8OxDYv7+8XVFREPvz2NjFxcK+uqKioZCQkJBcXDsR8/Pz8/Py2dnZ2dbFxb+6uqKiXVFROzvHpnYuAAADFUlEQVRIx22Vd1saQRCHF3uJvSdGY3rv9QA5ARU8OWkqJKCgh4SWiDXlyzuzs8vewc3f7zPPu7+Zm2P2WlmaH3j+KJTe9HrDP9Yfj79ZWPYw9/o04I/ubHxf2w2lvfsArwe3VrdHZ265oD2v8z6/P8rhzU2gEQY6tjd1r529YwbyvgNsvbaGHtg6GFxFOBe/60B7By0zEPD5CN5NQ2uAD9ED4eysx8a+NKzjq+Z/7rHR8jhEj1gsl8smJhQ9eGQUmo1G48Lv39kBGD3C6EHS8Ww2MdvyjUSMZq3WaPw7EJ1DUlp6JDLCu0ePHF3WoE7zPgovBNL74TBJb8cQTmQok0m9WDyrAxvIH4BHKzxMmuBcHOAuZIc1vXher9f+8vCiUZJW4UmPDE6nX9P1a4CvOpMmDwFj696UdqKf1esX1rEZQFh4eCEPAUMeCGc8bCilafp5/dooHNNYVNLUeVW+MPORzZUA1i+LAAsP6Owu/YH1l8ADwjMMgKWHgslDSvdVNICLEcOwTDOPHq3wVNJ73OMFuw+dNYS5NI4FaLkeTukxlqyksDVMvGCZCLdJb9nCY8kkly7CLtmld92SZlUBwxNPf33rqN9/wCNG0g4Y2U6awovHEf6ZTOILUdodVh4AkzTC7ho8PAlXeR7cw8KJwxP5TsNBwImr9cgmWBlgaA0w5UFJ0/XAPACW0gCjB0pzuGNN123hIVytlNRYaPPIA9dUeSD8pGyTLpgmwPIgpOVOb9HEx1gfeABMHpbwwM7SQ63pBOsGWM6FPNSakkdQhtfF5spllbRBsJR2XLG9+AIbKlPSMjySdoQnD9MyGykraRUewio8kh71MLs00BKO4jVFWEnP4JEBD4Q1lBbhAUzSMjxcU/4LeCWSPpHrkbclrX4BU3QY0SOVapdGWEoj/JXxuo0emkpafeNp5bHIRHWDh3yhYz3UxN8xWSN9zvBo4vZrOu5hiu6ukLSauOOavpWs8KbwXNc0vNjx05yU0nRNcfPIY/oL66zhfvJwfC6h6c/MvXqH3g8+fWAJ+OGzgfmlFWarG2rqAKqUjHVOAAAAAElFTkSuQmCC",__vite_glob_0_78=""+new URL("../svg/task-bg-8f66edfc.svg",import.meta.url).href,__vite_glob_0_79="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAMAAABg3Am1AAAAq1BMVEUAAAD////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////Nr6iZAAAAOHRSTlMAJgv9++oO8xXvGQf3ppph39y9UzQe5NLBrZ9+cV1GLdbOs5CHOsq5jIlnV0xCI8OvhHdrk5JoP6sIt7sAAAHaSURBVEjH3ZTpcvIwDEUF2cgCCYEkQAhbodAW6PYt9/2frJGnnQyWhgfo+escS9G1Tb+Ryc5z8I0T5indZ5DDYlvQHfoVBFl0R/gLhTkxcZrGsqEECs6a10bAQggpVOp2qXCBsRBGUBm1S0/QKjxCIZ/yNELTmk0AyZ7oZV6N2RTf9yBZUPRT9yxDhsDz/U3n2tQQvJu/3TX/WFvZwhyCA4XAA+f2yAlajNGRBGAGayDp8+IK8OyD5HTf7/qxCcU/ANnPRBJLOKCjnX2ElvUVcM15bdi85RkdvbYgWj65z9xvC5Sc+C1/FGFrtilHwwBwe5YwUwSk3ew+ySLUhJIuMHgNWRTQhD29AchPjU82Z01wo6sLBANS+NCEIT2YC3FWhKEmTH2+CL31URE2ijCjJYAjLTwSxK4iTCgDsBokiIQwhRTG5opsqG4lITSKsDRhPsce8CGEkxRCn8t6/dSMy+YohRMNTXRbAJUQSiG4RZRwdBeToBASIQzp3fTyBkaE7QnhEHsc3dVBixPbwswSvp/aV3M2tHd1KYWKo/MDME9C6Je2sAKQmY308/rftYQdOLoMLc4LKVy8GyFygMCfmP35ewW/3oadUDj85r0iqPaiH506nA3oV/IFZYG/rsR0MY4AAAAASUVORK5CYII=",__vite_glob_0_80=""+new URL("../svg/tickoff-aad687e9.svg",import.meta.url).href,__vite_glob_0_81="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAMAAABg3Am1AAAAqFBMVEUAAAD///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8j1z1tAAAAN3RSTlMAnCjnJlsL/O+8DvXr497MtV4fEgTVwq6YhmhiRRsXnzn5jYlySywIBqilkn53blNAMy4i0HxPwwsuwgAAAblJREFUSMfd1dlyqkAUheEdUeYZHFAgajQx83RO1vu/WUgXJbB3k/I6/w3Y9GdXKwr9mWaz8+kx9nHOdja5dj5wRaosBitKtaAVdxFEQa0RV63YQNNSTcmTzUkIdZTdtjOu6ULx1IynFhDShWLVDN+ArTAunPdm0LQBfNAlomg+xOW/8EcSSwr1uora0y+6QPiuO4dKbEEvCrXbeLb+YSWxTCm2uQ3s23tgycFi0omVp0B9C3gmNZWAwRewjJ7I1SLZFgjU1SmwY6C51heVuis+AauipgQIGVhjINRxTSHguM0CBrBi4BFSROptgtWDB1gTvmdoxIaWaHshlg2NCOgNKj8hVgpoRKFWcPaJS7wjdML9tAAvI03P0Iq1+kEcNeAePZENdj75cDRgjl5T6omYrg0SnSwGOpHWHmoB3sFBJxKgFCDh4DT4Pp4F2HNgGtOeeBDAEQAFdeIgQCCAldaTToh2AtxTYfwifAG2dz5+EQsG2v/ymMbEiwRzAK/u2BpmwEEJIMwPxph42zEQAzjkIUZF6Q9AZQG2+wqcxYyL7H9kdyAF8EgLePObihrBgezJXmTDR/Nf6RuYZKNPXpyrswAAAABJRU5ErkJggg==",__vite_glob_0_82=""+new URL("../svg/tickon-208216b3.svg",import.meta.url).href,__vite_glob_0_83=""+new URL("../png/tj-a46bf4d1.png",import.meta.url).href,__vite_glob_0_84=""+new URL("../png/tpbz-57c42ef9.png",import.meta.url).href,__vite_glob_0_85=""+new URL("../svg/tv-dc7f6f77.svg",import.meta.url).href,__vite_glob_0_86=""+new URL("../svg/yijian-739ef8fd.svg",import.meta.url).href,__vite_glob_0_87=""+new URL("../png/yjfk-ac627152.png",import.meta.url).href,nameImg="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAK4AAAAqCAMAAAAd85ASAAAAn1BMVEUAAAD///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8Kd3m4AAAANHRSTlMA8UX6vTtxKulsaLVizhiWqH4hJtmuFe3gQQj2glsNNwSRe50yxi4ehk5HdVTSEsLki8mi9hji2gAABVJJREFUWMPdmNtiojAQQEdRQUWgIoogCGpV6qVa8//ftkkGCAgp1O7L7nkok7TAaTIziPAvYPfhiTk8EZqMEGqYv1E20IpuQMkvHk8oNg1UFtzhe/ozRgCGq7xBiVVnj0G0ZRgABmEYUINKKApQDtMnjAjK9AglX5wxG7E77VjgNOh+cIVBOKE/e4X1vNLLuGjmEYbaUndBKrhv4d/VPfX44baGlJ3Lxl/er3WRcZ3udMbw2cilAb9jh8+FTbox4ShDQLY4tn6vi9g1ujaR0aQ7AN0Xfkzxi3BWf0n3/Jd1Ya3R48SDFONGOAFASOrZ1eoONlzY2aTg/538XFcd1mAShkOjOz3eh8MRIGtcbr8PSYPukTagGZ+hwSYtHhNSHMJY4mBkUm78jqYZdxgKG/GIBQqPuO6ItMGHFJ0PtdGCNOha+QxqHnnVeoC4xdwdl+tP3e/3n5LO8FNdMNl6Hfbkp7oBDzbAwa1ZQJ0u5vmBMmfw4HXd6ItYHqS6CgOjDJnuFK+TAGXqYgXLdCt0PpMXdeFwAkh1tQNIO0NZN5dSTh4kacH2pbryLqJ3akgLSkxoUAR1XdMAue5S1/UNF6TBmlWpQjjuOx5FRiZDCi/LeDhMJLoXkLPExwQg4rKMM6uAaH6NAGnTd6+qqu4dUkJbq+oBIP3tQTyEF5L9lbMmjDcQFDdtPAekte6J1DPO89FBXS/T7RfR2MwcpGBqHqu6yAPUbs4ZUysfr6u6XltdU1NT3UGRRYMulnEs0yXhlkj5etbtPjpxG13OLKxNBqEbWRU2+ITdSnX37XVRQmRsz7RmikyXBQ26HqnQA19cTLBxHOdCGN1Wut4oL+sgCM7JcnewTcbysOsmZzq3LOkipxd0XVnvGLTVNfSxn88tolINj0BQ0cXnzqpIp0n3nd9ErnvqMSZ88EkjHkz4pIk7QUr02+lqJEMtojXpPvjxKtUttme2cumsICCCW7wM3pFL+qRAhs+6QYdWTOf7ZBhzZriTPD7Cio+WDboJ9u863TnJUPp4Wg13oWth3w06gbzUihz53Acg2EwHcl0xuNXqwiXXhR/oggGv6GLjtRp0Hzx163Vj4luDdrpD1jSfHsKu62qYOBSlSRfP0b7XvXbyZ192smCth4WXn2CCzFAhHQ0gL8tY6I4/KfSo55XhsJnrd7qO+Kwt0/UKbzD1uSN0Qd4Z8AV7k+ka3RRsln435/CN7gh3S6brzff6BbsXMPg6d6yYMf+h7ontdZDp6kTGSKIrkleL6nU/RC4maWEJphVdT8/AjvPIx3P+OkWxf6cL+CFar9cNct0Yp81vda9ShX567gx+qTvEDh9CmQ0mSaZrRjht+3W6u9a659/qhgvcNygSrRQsbbSeJJDRv1R1sXtrzbo3HXJdY4kECkGUUTpjFDyuMdrdt9b4faZtmH/llWKXOy0mljnYQxH7rI84ISCpwqRJNwwBhK74fivjVrzP8TJzNb+mgYcaho95eWkRZWyu3urpZ39v5m+QdgY+LVf52JN8YZoUa1eJxcKapI5t4VOK7xxHLG9WpAViP9T0jueGRlbWnSZn/WS5WSHPCDKJV6cBW7c7qcPC9i1gm4bnKr12uldMfjf6iW75aT2ObO3pC6KN/CUqGpd0Ye+z2/chbqWLNd7Zwcu6j4ie4JZ1h2KoaLNJz9nSdR99iOxDsub2CNlx0ayLrdvvwku6ou2EsVLUXW7vJ/3cXduGB1WWn0Vd2AZ4DEfO5aZJGOSNRPmy4SVdzRmIXTF05+ajbjOHkzPRfB9eYV2ZiQyGB1WMKcUDY7225xFUuNLfRvDf8ge6+7WRrwc33wAAAABJRU5ErkJggg==",__vite_glob_0_89="data:image/png;base64,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",icons$5=Object.assign({"./add.png":__vite_glob_0_0$1,"./addImg.png":__vite_glob_0_1$1,"./back.png":backImg,"./background.png":__vite_glob_0_3$1,"./background.svg":__vite_glob_0_4$1,"./background1.png":__vite_glob_0_5$1,"./bg.png":__vite_glob_0_6$1,"./close2.svg":__vite_glob_0_7$1,"./closeImg.png":__vite_glob_0_8$1,"./cursor-icon-1.svg":__vite_glob_0_9$1,"./cursor-icon-2.svg":__vite_glob_0_10$1,"./cursor-icon-3.svg":__vite_glob_0_11$1,"./cutImg.png":__vite_glob_0_12$1,"./down.svg":__vite_glob_0_13$1,"./gl.png":glImg,"./guan.png":__vite_glob_0_15$1,"./guding-active.svg":__vite_glob_0_16$1,"./guding.svg":__vite_glob_0_17$1,"./headImg.png":__vite_glob_0_18$1,"./headTit.png":__vite_glob_0_19$1,"./icon-back.png":iconBack,"./icon-staff-active.svg":__vite_glob_0_21$1,"./icon-staff.svg":__vite_glob_0_22$1,"./icon_evaluatingOff.svg":__vite_glob_0_23$1,"./icon_evaluatingOn.svg":__vite_glob_0_24$1,"./icon_menu.png":__vite_glob_0_25$1,"./icon_menu.svg":__vite_glob_0_26$1,"./icon_minus.svg":__vite_glob_0_27$1,"./icon_pause.png":__vite_glob_0_28$1,"./icon_pause.svg":__vite_glob_0_29$1,"./icon_play.png":__vite_glob_0_30$1,"./icon_play.svg":__vite_glob_0_31$1,"./icon_plus.svg":__vite_glob_0_32,"./icon_reset.png":__vite_glob_0_33,"./icon_resetbtn.svg":__vite_glob_0_34,"./icon_speed.svg":__vite_glob_0_35,"./icon_speedRest.svg":__vite_glob_0_36,"./icon_zhuanpu.svg":__vite_glob_0_37,"./info.svg":__vite_glob_0_38,"./kai.png":__vite_glob_0_39,"./list.png":listImg,"./lx.png":lxImg,"./mingsong.png":__vite_glob_0_42,"./mode.png":iconMode,"./modeType.svg":__vite_glob_0_44,"./music.png":__vite_glob_0_45,"./music.svg":__vite_glob_0_46,"./music1.png":__vite_glob_0_47,"./off.svg":__vite_glob_0_48,"./on.svg":__vite_glob_0_49,"./pc.png":pcImg,"./pc_end_icon.png":PcEndIcon,"./pc_icon_pausebtn.png":__vite_glob_0_52,"./pc_icon_playbtn.png":__vite_glob_0_53,"./pc_icon_resetbtn.png":__vite_glob_0_54,"./perform.png":__vite_glob_0_55,"./photo.png":__vite_glob_0_56,"./qipao.png":__vite_glob_0_57,"./qx.png":__vite_glob_0_58,"./radio.png":__vite_glob_0_59,"./radioActive.png":__vite_glob_0_60,"./recommendationName.png":__vite_glob_0_61,"./section0.png":__vite_glob_0_62,"./section0.svg":__vite_glob_0_63,"./section1.png":__vite_glob_0_64,"./section1.svg":__vite_glob_0_65,"./section2.png":__vite_glob_0_66,"./section2.svg":__vite_glob_0_67,"./settingName.png":__vite_glob_0_68,"./shenggui.png":__vite_glob_0_69,"./shenggui.svg":__vite_glob_0_70,"./shuodiao-active.svg":__vite_glob_0_71,"./shuodiao.svg":__vite_glob_0_72,"./sing.png":__vite_glob_0_73,"./sj.png":__vite_glob_0_74,"./speed.png":__vite_glob_0_75,"./speedBtn.png":__vite_glob_0_76,"./subtract.png":__vite_glob_0_77,"./task-bg.svg":__vite_glob_0_78,"./tickoff.png":__vite_glob_0_79,"./tickoff.svg":__vite_glob_0_80,"./tickon.png":__vite_glob_0_81,"./tickon.svg":__vite_glob_0_82,"./tj.png":__vite_glob_0_83,"./tpbz.png":__vite_glob_0_84,"./tv.svg":__vite_glob_0_85,"./yijian.svg":__vite_glob_0_86,"./yjfk.png":__vite_glob_0_87,"./zt.png":nameImg,"./大按钮/播放小备份 3@2x.png":__vite_glob_0_89}),headImg=i=>icons$5[`./${i}`]||"",speedContainer="_speedContainer_qtzmq_1",head$3="_head_qtzmq_1",headTit$2="_headTit_qtzmq_8",closeImg$2="_closeImg_qtzmq_16",content$8="_content_qtzmq_24",conBox$2="_conBox_qtzmq_33",tit$2="_tit_qtzmq_45",spendCon="_spendCon_qtzmq_51",btn$8="_btn_qtzmq_57",sliderCon="_sliderCon_qtzmq_63",customButton="_customButton_qtzmq_82",speedVal="_speedVal_qtzmq_87",speedBtn="_speedBtn_qtzmq_99",speedSel="_speedSel_qtzmq_105",metronome="_metronome_qtzmq_125",styles$q={speedContainer,head:head$3,headTit:headTit$2,closeImg:closeImg$2,content:content$8,conBox:conBox$2,tit:tit$2,spendCon,btn:btn$8,sliderCon,customButton,speedVal,speedBtn,speedSel,metronome},Speed=defineComponent({name:"speed",setup(){const i=ref(state$1.speed),e=()=>{i.value=Math.max(i.value-1,45)},r=()=>{i.value=Math.min(i.value+1,270)};watch(()=>i.value,()=>{handleSetSpeed(i.value)});const s=computed({get(){return!metronomeData.disable},set(o){metronomeData.disable=!o}});return()=>createVNode("div",{class:styles$q.speedContainer},[createVNode("div",{class:styles$q.head},[createVNode("img",{class:styles$q.headTit,src:headImg("headTit.png")},null),createVNode("img",{class:styles$q.closeImg,src:headImg("closeImg.png"),onClick:()=>{headData.speedShow=!1}},null)]),createVNode("div",{class:styles$q.content},[createVNode("div",{class:styles$q.conBox},[createVNode("div",{class:styles$q.tit},[createTextVNode("速度")]),createVNode("div",{class:styles$q.spendCon},[createVNode("img",{src:headImg("cutImg.png"),class:[styles$q.btn],onClick:e},null),createVNode("div",{class:styles$q.sliderCon},[createVNode(Slider,{class:styles$q.slider,max:270,min:45,modelValue:i.value,"onUpdate:modelValue":o=>i.value=o},{button:()=>createVNode("div",{class:styles$q.customButton},[createVNode("div",{class:styles$q.speedVal},[i.value]),createVNode("div",{class:styles$q.speedBtn},null)])})]),createVNode("img",{src:headImg("addImg.png"),class:[styles$q.btn],onClick:r},null)]),createVNode("div",{class:styles$q.speedSel},[createVNode("div",{onClick:()=>{i.value=state$1.originSpeed}},[createTextVNode("原速")]),createVNode("div",{onClick:()=>{i.value=70}},[createTextVNode("70")]),createVNode("div",{onClick:()=>{i.value=80}},[createTextVNode("80")]),createVNode("div",{onClick:()=>{i.value=90}},[createTextVNode("90")]),createVNode("div",{onClick:()=>{i.value=100}},[createTextVNode("100")]),createVNode("div",{onClick:()=>{i.value=110}},[createTextVNode("110")])]),createVNode("div",{class:styles$q.metronome},[createVNode("div",{class:styles$q.tit},[createTextVNode("节拍器")]),createVNode(Switch$1,{modelValue:s.value,"onUpdate:modelValue":o=>s.value=o},null)])])])])}}),settting="_settting_qz7lt_1",head$2="_head_qz7lt_1",headTit$1="_headTit_qz7lt_8",closeImg$1="_closeImg_qz7lt_16",content$7="_content_qz7lt_24",conBox$1="_conBox_qz7lt_33",cellBox="_cellBox_qz7lt_45",tit$1="_tit_qz7lt_67",radioBox="_radioBox_qz7lt_73",active$2="_active_qz7lt_92",frequency$1="_frequency_qz7lt_97",frequencyNum="_frequencyNum_qz7lt_101",btn$7="_btn_qz7lt_113",reactionTimeBox="_reactionTimeBox_qz7lt_119",reactionTime="_reactionTime_qz7lt_119",timeName="_timeName_qz7lt_136",cellBtnBox="_cellBtnBox_qz7lt_142",styles$p={settting,head:head$2,headTit:headTit$1,closeImg:closeImg$1,content:content$7,conBox:conBox$1,cellBox,tit:tit$1,radioBox,active:active$2,frequency:frequency$1,frequencyNum,btn:btn$7,reactionTimeBox,reactionTime,timeName,cellBtnBox},index$1="",_numberOfSegments=58,smoothAnimationState={isShow:ref(!1),canvasDom:null,canvasCtx:null,canvasDomWith:0,canvasDomHeight:80,smoothAnimationBoxDom:null,smoothBotDom:null,osmdCanvasPageDom:null,osdmScrollDom:null,osdmScrollDomWith:0,selectionBoxDom:null,pointsPos:[],translateXNum:0,aveSpeed:0,clientWidth:0};watch(smoothAnimationState.isShow,()=>{var i,e;smoothAnimationState.isShow.value?(i=smoothAnimationState.smoothAnimationBoxDom)==null||i.classList.remove("smoothAnimationBoxHide"):(e=smoothAnimationState.smoothAnimationBoxDom)==null||e.classList.add("smoothAnimationBoxHide")});function initSmoothAnimation(){createSmoothAnimation();const i=getPointsPosByBatePos();console.log(i,"batePos"),smoothAnimationState.pointsPos=createSmoothCurvePoints(i,void 0,void 0,_numberOfSegments);const e=i.reduce((r,s,o,a)=>(o!==0&&Math.abs(s.MeasureNumberXML-a[o-1].MeasureNumberXML)<=1&&(r+=s.x-a[o-1].x),r),0);smoothAnimationState.aveSpeed=e/(state$1.times[state$1.times.length-1].time-state$1.times[0].time)/1e3*16.67,calcClientWidth(),document.addEventListener("resize",calcClientWidth),smoothAnimationState.isShow.value=!0,console.log(smoothAnimationState,"一行谱小鸟数据")}function destroySmoothAnimation(){var i;smoothAnimationState.isShow.value=!1,document.removeEventListener("resize",calcClientWidth),(i=smoothAnimationState.smoothAnimationBoxDom)==null||i.remove(),Object.assign(smoothAnimationState,{canvasDom:null,canvasCtx:null,canvasDomWith:0,canvasDomHeight:80,smoothAnimationBoxDom:null,smoothBotDom:null,osmdCanvasPageDom:null,osdmScrollDom:null,pointsPos:[],translateXNum:0,aveSpeed:0,clientWidth:0}),Object.assign(moveState,{oldIndex:-1,progress:0,activeIndex:0})}function moveSmoothAnimationByPlayTime(){var a,l,c,u,m,g;const i=getAudioCurrentTime();if(i<=state$1.fixtime||i>((a=state$1.times.last())==null?void 0:a.endtime))return;let e=state$1.activeNoteIndex+1,r=(l=state$1.times[e])==null?void 0:l.bbox;for(;!r&&estate$1.times.length-1?(u=state$1.times[state$1.activeNoteIndex])==null?void 0:u.endtime:state$1.times[e].time)-((m=state$1.times[state$1.activeNoteIndex])==null?void 0:m.time),o=(i-((g=state$1.times[state$1.activeNoteIndex])==null?void 0:g.time))/s;moveSmoothAnimation(o,state$1.activeNoteIndex)}const moveState={oldIndex:-1,progress:0,activeIndex:0};function moveSmoothAnimation(i,e){var l,c;moveState.progress=i,moveState.activeIndex=e;const r=(e+1)*(_numberOfSegments+1)-1,s=Math.round(i*_numberOfSegments);let o=r-_numberOfSegments+s;if(moveState.oldIndex===o)return;moveState.oldIndex=o;const a=smoothAnimationState.pointsPos[o];(l=smoothAnimationState.canvasCtx)==null||l.clearRect(0,0,smoothAnimationState.canvasDomWith,smoothAnimationState.canvasDomHeight),smoothAnimationMove({x:a.x-20,y:a.y-25},smoothAnimationState.pointsPos,smoothAnimationState.pointsPos.slice(0,o)),!((((c=smoothAnimationState.osdmScrollDom)==null?void 0:c.scrollLeft)||0)+smoothAnimationState.translateXNum+smoothAnimationState.osdmScrollDomWith>smoothAnimationState.canvasDomWith)&&move_osmd(a)}function move_osmd(i){const e=smoothAnimationState.aveSpeed*(state$1.speed/60),r=smoothAnimationState.clientWidth,s=smoothAnimationState.clientWidth/2,{left:o,right:a,width:l}=smoothAnimationState.smoothBotDom.getBoundingClientRect(),c=o+l/2;a>r?(smoothAnimationState.translateXNum=0,smoothAnimationState.osdmScrollDom.scrollLeft=i.x-r*.9):o<0?(smoothAnimationState.translateXNum=0,smoothAnimationState.osdmScrollDom.scrollLeft=i.x-r*.1):c>s-r*.3&&c<=s-r*.25?smoothAnimationState.translateXNum+=e*.5:c>s-r*.25&&c<=s-r*.2?smoothAnimationState.translateXNum+=e*.6:c>s-r*.2&&c<=s-r*.15?smoothAnimationState.translateXNum+=e*.7:c>s-r*.15&&c<=s-r*.1?smoothAnimationState.translateXNum+=e*.8:c>s-r*.1&&c<=s-r*.05?smoothAnimationState.translateXNum+=e*.9:c>s-r*.05&&c<=s?smoothAnimationState.translateXNum+=e:c>s&&c<=s+r*.05?smoothAnimationState.translateXNum+=e*1.2:c>s+r*.05&&c<=s+r*.1?smoothAnimationState.translateXNum+=e*1.4:c>s+r*.1&&c<=s+r*.15?smoothAnimationState.translateXNum+=e*1.7:c>s+r*.15&&c<=s+r*.2?smoothAnimationState.translateXNum+=e*2:c>s+r*.2&&c<=s+r*.25?smoothAnimationState.translateXNum+=e*2.4:c>s+r*.25&&c<=s+r*.3?smoothAnimationState.translateXNum+=e*2.8:c>s+r*.3&&c<=s+r*.35?smoothAnimationState.translateXNum+=e*3.3:c>s+r*.35&&c<=s+r*.4?smoothAnimationState.translateXNum+=e*3.8:c>s+r*.4&&c<=s+r*.45?smoothAnimationState.translateXNum+=e*4.4:c>s+r*.45&&c<=s+r*.5&&(smoothAnimationState.translateXNum+=e*5),moveTranslateXNum(smoothAnimationState.translateXNum)}function moveTranslateXNum(i){smoothAnimationState.osmdCanvasPageDom&&(smoothAnimationState.osmdCanvasPageDom.style.transform=`translateX(-${i}px)`),smoothAnimationState.selectionBoxDom&&(smoothAnimationState.selectionBoxDom.style.transform=`translateX(-${i}px)`)}function smoothAnimationMove(i,e,r){smoothAnimationState.smoothBotDom&&(smoothAnimationState.smoothBotDom.style.transform=`translate(${i.x}px, ${i.y}px)`),smoothAnimationState.canvasCtx&&drawSmoothCurve(smoothAnimationState.canvasCtx,e,r)}function calcClientWidth(){smoothAnimationState.clientWidth=document.body.clientWidth}function createSmoothAnimation(){const i=document.querySelector("#musicAndSelection");smoothAnimationState.osdmScrollDom=i,smoothAnimationState.osdmScrollDomWith=(i==null?void 0:i.offsetWidth)|0;const e=document.querySelector("#osmdCanvasPage1");smoothAnimationState.osmdCanvasPageDom=e,setTimeout(()=>{const l=document.querySelector("#selectionBox");smoothAnimationState.selectionBoxDom=l},0);const r=document.createElement("div");r.className="smoothAnimationBox",smoothAnimationState.smoothAnimationBoxDom=r;const s=document.createElement("div");s.className="smoothAnimationCon";const o=document.createElement("canvas");o.className="smoothCanvas",smoothAnimationState.canvasDom=o,smoothAnimationState.canvasDomWith=(e==null?void 0:e.offsetWidth)|0,o.width=smoothAnimationState.canvasDomWith,o.height=smoothAnimationState.canvasDomHeight,smoothAnimationState.canvasCtx=o.getContext("2d");const a=document.createElement("div");a.className="smoothBot",smoothAnimationState.smoothBotDom=a,s.appendChild(o),s.appendChild(a),r.appendChild(s),e==null||e.insertBefore(r,e.firstChild)}function getPointsPosByBatePos(){let i=0;const e=state$1.times.reduce((o,a)=>(a.frequency!==-1&&(o+=a.frequency,i++),o),0)/i,r=state$1.times.reduce((o,a)=>(a.bbox&&o.push({MeasureNumberXML:a.MeasureNumberXML,x:a.bbox.x,y:((a.frequency===-1?2*e*.9:a.frequency)-e)/e*smoothAnimationState.canvasDomHeight/2+smoothAnimationState.canvasDomHeight/2}),o),[]),s={...r[r.length-1]};return s.MeasureNumberXML++,s.x=smoothAnimationState.canvasDomWith-30>s.x?smoothAnimationState.canvasDomWith-30:s.x+15,r.push(s),r}function createSmoothCurvePoints(i,e,r,s){if(i.length<=2)return i;e=e||.5,r=!!r,s=s||20;let o=i.slice(0),a=[],l,c,u,m,g,d,y,A,b,S,E,x,C;for(r?(o.unshift(i[i.length-1]),o.unshift(i[i.length-1]),o.push(i[0])):(o.unshift(i[0]),o.push(i[i.length-1])),C=1;C1){const I=o[C+1].MeasureNumberXML+1;let M=o.findIndex(T=>I===T.MeasureNumberXML);M===-1&&(M=C+1),m=(o[M].x-o[C].x)*e}if(o[C-1].MeasureNumberXML-o[C].MeasureNumberXML>1){const I=o[C].MeasureNumberXML-1;let M=o.findIndex((T,F)=>{var D;return I===T.MeasureNumberXML&&I!==((D=o[F+1])==null?void 0:D.MeasureNumberXML)});M===-1&&(M=C),u=(o[C+1].x-o[M].x)*e}if(o[C+1].MeasureNumberXML-o[C+2].MeasureNumberXML<-1){const I=o[C+1].MeasureNumberXML+1;let M=o.findIndex(T=>I===T.MeasureNumberXML);M===-1&&(M=C+1),m=(o[M].x-o[C].x)*e}if(o[C-1].MeasureNumberXML-o[C].MeasureNumberXML<-1){const I=o[C].MeasureNumberXML-1;let M=o.findIndex((T,F)=>{var D;return I===T.MeasureNumberXML&&I!==((D=o[F+1])==null?void 0:D.MeasureNumberXML)});M===-1&&(M=C),u=(o[C+1].x-o[M].x)*e}const P=i[C-1].MeasureNumberXML,k=i[C].MeasureNumberXML;for(x=0;x<=s;x++){if(k-P<0||k-P>1){a.push({x:l,y:c,MeasureNumberXML:P});continue}E=x/s,y=2*Math.pow(E,3)-3*Math.pow(E,2)+1,A=-(2*Math.pow(E,3))+3*Math.pow(E,2),b=Math.pow(E,3)-2*Math.pow(E,2)+E,S=Math.pow(E,3)-Math.pow(E,2),l=y*o[C].x+A*o[C+1].x+b*u+S*m,c=y*o[C].y+A*o[C+1].y+b*g+S*d,a.push({x:l,y:c,MeasureNumberXML:x===s?k:P})}}return a}function drawSmoothCurve(i,e,r){i.lineWidth=4,i.lineJoin="round",i.strokeStyle="rgba(255,255,255,0.6)",drawLines(i,e),r!=null&&r.length&&(i.strokeStyle="#FFC121",drawLines(i,r))}function drawLines(i,e){i.beginPath(),i.moveTo(e[0].x,e[0].y);for(let r=1;r1){i.stroke(),i.beginPath(),i.moveTo(e[r+1].x,e[r+1].y);continue}i.lineTo(e[r].x,e[r].y)}i.stroke()}const recommendation="_recommendation_f3qyk_1",head$1="_head_f3qyk_1",headTit="_headTit_f3qyk_8",closeImg="_closeImg_f3qyk_16",content$6="_content_f3qyk_24",conBox="_conBox_f3qyk_33",dropdownMenu="_dropdownMenu_f3qyk_45",currItem="_currItem_f3qyk_103",field="_field_f3qyk_107",uploader="_uploader_f3qyk_124",uploaderbox="_uploaderbox_f3qyk_152",img$2="_img_f3qyk_163",btnCon$1="_btnCon_f3qyk_173",styles$o={recommendation,head:head$1,headTit,closeImg,content:content$6,conBox,dropdownMenu,currItem,field,uploader,uploaderbox,img:img$2,btnCon:btnCon$1};var cosJsSdkV5Exports={},cosJsSdkV5={get exports(){return cosJsSdkV5Exports},set exports(i){cosJsSdkV5Exports=i}};(function(i,e){(function(s,o){i.exports=o()})(commonjsGlobal,function(){return function(r){var s={};function o(a){if(s[a])return s[a].exports;var l=s[a]={i:a,l:!1,exports:{}};return r[a].call(l.exports,l,l.exports,o),l.l=!0,l.exports}return o.m=r,o.c=s,o.d=function(a,l,c){o.o(a,l)||Object.defineProperty(a,l,{enumerable:!0,get:c})},o.r=function(a){typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty(a,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(a,"__esModule",{value:!0})},o.t=function(a,l){if(l&1&&(a=o(a)),l&8||l&4&&typeof a=="object"&&a&&a.__esModule)return a;var c=Object.create(null);if(o.r(c),Object.defineProperty(c,"default",{enumerable:!0,value:a}),l&2&&typeof a!="string")for(var u in a)o.d(c,u,function(m){return a[m]}.bind(null,u));return c},o.n=function(a){var l=a&&a.__esModule?function(){return a.default}:function(){return a};return o.d(l,"a",l),l},o.o=function(a,l){return Object.prototype.hasOwnProperty.call(a,l)},o.p="/dist/",o(o.s="./index.js")}({"./index.js":function(r,s,o){var a=o("./src/cos.js");r.exports=a},"./lib/base64.js":function(r,s){var o=function(a){a=a||{};var l=a.Base64,c="2.1.9",u="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",m=function(B){for(var V={},R=0,Q=B.length;R>>6)+g(128|R&63):g(224|R>>>12&15)+g(128|R>>>6&63)+g(128|R&63)}else{var R=65536+(V.charCodeAt(0)-55296)*1024+(V.charCodeAt(1)-56320);return g(240|R>>>18&7)+g(128|R>>>12&63)+g(128|R>>>6&63)+g(128|R&63)}},y=/[\uD800-\uDBFF][\uDC00-\uDFFFF]|[^\x00-\x7F]/g,A=function(V){return V.replace(y,d)},b=function(V){var R=[0,2,1][V.length%3],Q=V.charCodeAt(0)<<16|(V.length>1?V.charCodeAt(1):0)<<8|(V.length>2?V.charCodeAt(2):0),_=[u.charAt(Q>>>18),u.charAt(Q>>>12&63),R>=2?"=":u.charAt(Q>>>6&63),R>=1?"=":u.charAt(Q&63)];return _.join("")},S=a.btoa?function(B){return a.btoa(B)}:function(B){return B.replace(/[\s\S]{1,3}/g,b)},E=function(B){return S(A(B))},x=function(V,R){return R?E(String(V)).replace(/[+\/]/g,function(Q){return Q=="+"?"-":"_"}).replace(/=/g,""):E(String(V))},C=function(V){return x(V,!0)},P=new RegExp(["[À-ß][€-¿]","[à-ï][€-¿]{2}","[ð-÷][€-¿]{3}"].join("|"),"g"),k=function(V){switch(V.length){case 4:var R=(7&V.charCodeAt(0))<<18|(63&V.charCodeAt(1))<<12|(63&V.charCodeAt(2))<<6|63&V.charCodeAt(3),Q=R-65536;return g((Q>>>10)+55296)+g((Q&1023)+56320);case 3:return g((15&V.charCodeAt(0))<<12|(63&V.charCodeAt(1))<<6|63&V.charCodeAt(2));default:return g((31&V.charCodeAt(0))<<6|63&V.charCodeAt(1))}},I=function(V){return V.replace(P,k)},M=function(V){var R=V.length,Q=R%4,_=(R>0?m[V.charAt(0)]<<18:0)|(R>1?m[V.charAt(1)]<<12:0)|(R>2?m[V.charAt(2)]<<6:0)|(R>3?m[V.charAt(3)]:0),K=[g(_>>>16),g(_>>>8&255),g(_&255)];return K.length-=[0,0,2,1][Q],K.join("")},T=a.atob?function(B){return a.atob(B)}:function(B){return B.replace(/[\s\S]{1,4}/g,M)},F=function(B){return I(T(B))},D=function(V){return F(String(V).replace(/[-_]/g,function(R){return R=="-"?"+":"/"}).replace(/[^A-Za-z0-9\+\/]/g,""))},N=function(){var V=a.Base64;return a.Base64=l,V},O={VERSION:c,atob:T,btoa:S,fromBase64:D,toBase64:x,utob:A,encode:x,encodeURI:C,btou:I,decode:D,noConflict:N};return O}();r.exports=o},"./lib/crypto.js":function(r,s,o){(function(a){var l=o("./node_modules/@babel/runtime/helpers/typeof.js"),c=c||function(u,m){var g={},d=g.lib={},y=function(){},A=d.Base={extend:function(M){y.prototype=this;var T=new y;return M&&T.mixIn(M),T.hasOwnProperty("init")||(T.init=function(){T.$super.init.apply(this,arguments)}),T.init.prototype=T,T.$super=this,T},create:function(){var M=this.extend();return M.init.apply(M,arguments),M},init:function(){},mixIn:function(M){for(var T in M)M.hasOwnProperty(T)&&(this[T]=M[T]);M.hasOwnProperty("toString")&&(this.toString=M.toString)},clone:function(){return this.init.prototype.extend(this)}},b=d.WordArray=A.extend({init:function(M,T){M=this.words=M||[],this.sigBytes=T!=m?T:4*M.length},toString:function(M){return(M||E).stringify(this)},concat:function(M){var T=this.words,F=M.words,D=this.sigBytes;if(M=M.sigBytes,this.clamp(),D%4)for(var N=0;N>>2]|=(F[N>>>2]>>>24-8*(N%4)&255)<<24-8*((D+N)%4);else if(65535>>2]=F[N>>>2];else T.push.apply(T,F);return this.sigBytes+=M,this},clamp:function(){var M=this.words,T=this.sigBytes;M[T>>>2]&=4294967295<<32-8*(T%4),M.length=u.ceil(T/4)},clone:function(){var M=A.clone.call(this);return M.words=this.words.slice(0),M},random:function(M){for(var T=[],F=0;F>>2]>>>24-8*(D%4)&255;F.push((N>>>4).toString(16)),F.push((N&15).toString(16))}return F.join("")},parse:function(M){for(var T=M.length,F=[],D=0;D>>3]|=parseInt(M.substr(D,2),16)<<24-4*(D%8);return new b.init(F,T/2)}},x=S.Latin1={stringify:function(M){var T=M.words;M=M.sigBytes;for(var F=[],D=0;D>>2]>>>24-8*(D%4)&255));return F.join("")},parse:function(M){for(var T=M.length,F=[],D=0;D>>2]|=(M.charCodeAt(D)&255)<<24-8*(D%4);return new b.init(F,T)}},C=S.Utf8={stringify:function(M){try{return decodeURIComponent(escape(x.stringify(M)))}catch(T){throw Error("Malformed UTF-8 data")}},parse:function(M){return x.parse(unescape(encodeURIComponent(M)))}},P=d.BufferedBlockAlgorithm=A.extend({reset:function(){this._data=new b.init,this._nDataBytes=0},_append:function(M){typeof M=="string"&&(M=C.parse(M)),this._data.concat(M),this._nDataBytes+=M.sigBytes},_process:function(M){var T=this._data,F=T.words,D=T.sigBytes,N=this.blockSize,O=D/(4*N),O=M?u.ceil(O):u.max((O|0)-this._minBufferSize,0);if(M=O*N,D=u.min(4*M,D),M){for(var B=0;BM;M++){if(16>M)d[M]=b[S+M]|0;else{var T=d[M-3]^d[M-8]^d[M-14]^d[M-16];d[M]=T<<1|T>>>31}T=(x<<5|x>>>27)+I+d[M],T=20>M?T+((C&P|~C&k)+1518500249):40>M?T+((C^P^k)+1859775393):60>M?T+((C&P|C&k|P&k)-1894007588):T+((C^P^k)-899497514),I=k,k=P,P=C<<30|C>>>2,C=x,x=T}E[0]=E[0]+x|0,E[1]=E[1]+C|0,E[2]=E[2]+P|0,E[3]=E[3]+k|0,E[4]=E[4]+I|0},_doFinalize:function(){var b=this._data,S=b.words,E=8*this._nDataBytes,x=8*b.sigBytes;return S[x>>>5]|=128<<24-x%32,S[(x+64>>>9<<4)+14]=Math.floor(E/4294967296),S[(x+64>>>9<<4)+15]=E,b.sigBytes=4*S.length,this._process(),this._hash},clone:function(){var b=g.clone.call(this);return b._hash=this._hash.clone(),b}});u.SHA1=g._createHelper(y),u.HmacSHA1=g._createHmacHelper(y)})(),function(){var u=c,m=u.enc.Utf8;u.algo.HMAC=u.lib.Base.extend({init:function(d,y){d=this._hasher=new d.init,typeof y=="string"&&(y=m.parse(y));var A=d.blockSize,b=4*A;y.sigBytes>b&&(y=d.finalize(y)),y.clamp();for(var S=this._oKey=y.clone(),E=this._iKey=y.clone(),x=S.words,C=E.words,P=0;P>>2]>>>24-C%4*8&255,k=b[C+1>>>2]>>>24-(C+1)%4*8&255,I=b[C+2>>>2]>>>24-(C+2)%4*8&255,M=P<<16|k<<8|I,T=0;T<4&&C+T*.75>>6*(3-T)&63));var F=E.charAt(64);if(F)for(;x.length%4;)x.push(F);return x.join("")},parse:function(A){var b=A.length,S=this._map,E=S.charAt(64);if(E){var x=A.indexOf(E);x!=-1&&(b=x)}for(var C=[],P=0,k=0;k>>6-k%4*2;C[P>>>2]|=(I|M)<<24-P%4*8,P++}return g.create(C,P)},_map:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="}}(),l(a)==="object"?a.exports=c:window.CryptoJS=c}).call(this,o("./node_modules/webpack/buildin/module.js")(r))},"./lib/json2xml.js":function(r,s,o){var a=o("./node_modules/@babel/runtime/helpers/typeof.js"),l="a-zA-Z_À-ÖØ-öø-ÿͰ-ͽͿ-῿‌-‍⁰-↏Ⰰ-⿿、-퟿豈-﷏ﷰ-�",c="-.0-9·̀-ͯ‿⁀",u=new RegExp("^([^"+l+"])|^((x|X)(m|M)(l|L))|([^"+l+c+"])","g"),m=/[^\x09\x0A\x0D\x20-\xFF\x85\xA0-\uD7FF\uE000-\uFDCF\uFDE0-\uFFFD]/gm,g=function(S){var E=[];if(S instanceof Object)for(var x in S)S.hasOwnProperty(x)&&E.push(x);return E},d=function(S,E){var x=function(P,k,I,M,T){var F=E.indent!==void 0?E.indent:" ",D=E.prettyPrint?` `+new Array(M).join(F):"";E.removeIllegalNameCharacters&&(P=P.replace(u,"_"));var N=[D,"<",P,I||""];return k&&k.length>0?(N.push(">"),N.push(k),T&&N.push(D),N.push("")):N.push("/>"),N.join("")};return function C(P,k,I){var M=a(P);switch((Array.isArray?Array.isArray(P):P instanceof Array)?M="array":P instanceof Date&&(M="date"),M){case"array":var T=[];return P.map(function(O){T.push(C(O,1,I+1))}),E.prettyPrint&&T.push(` `),T.join("");case"date":return P.toJSON?P.toJSON():P+"";case"object":var F=[];for(var D in P)if(P.hasOwnProperty(D))if(P[D]instanceof Array)for(var N=0;N0&&F.push(` `),F.join("");case"function":return P();default:return E.escape?A(P):""+P}}(S,0,0)},y=function(S){var E=['"),E.join("")};function A(b){return(""+b).replace(/&/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""").replace(m,"")}r.exports=function(b,S){if(S||(S={xmlHeader:{standalone:!0},prettyPrint:!0,indent:" ",escape:!0}),typeof b=="string")try{b=JSON.parse(b.toString())}catch(P){return!1}var E="",x="";S&&(a(S)=="object"?(S.xmlHeader&&(E=y(!!S.xmlHeader.standalone)),typeof S.docType<"u"&&(x="")):E=y()),S=S||{};var C=[E,S.prettyPrint&&x?` `:"",x,d(b,S)];return C.join("").replace(/\n{2,}/g,` `).replace(/\s+$/g,"")}},"./lib/md5.js":function(r,s,o){(function(a){var l,c=o("./node_modules/@babel/runtime/helpers/typeof.js");(function(){var u=(typeof window>"u"?"undefined":c(window))==="object",m=u?window:{};m.JS_MD5_NO_WINDOW&&(u=!1);var g=!u&&(typeof self>"u"?"undefined":c(self))==="object";g&&(m=self);var d=!m.JS_MD5_NO_COMMON_JS&&c(a)==="object"&&a.exports,y=o("./node_modules/webpack/buildin/amd-options.js"),A=!m.JS_MD5_NO_ARRAY_BUFFER&&typeof ArrayBuffer<"u",b="0123456789abcdef".split(""),S=[128,32768,8388608,-2147483648],E=[0,8,16,24],x=["hex","array","digest","buffer","arrayBuffer","base64"],C="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split(""),P=[],k;if(A){var I=new ArrayBuffer(68);k=new Uint8Array(I),P=new Uint32Array(I)}(m.JS_MD5_NO_NODE_JS||!Array.isArray)&&(Array.isArray=function(N){return Object.prototype.toString.call(N)==="[object Array]"}),A&&(m.JS_MD5_NO_ARRAY_BUFFER_IS_VIEW||!ArrayBuffer.isView)&&(ArrayBuffer.isView=function(N){return c(N)==="object"&&N.buffer&&N.buffer.constructor===ArrayBuffer});var M=function(O){return function(B,V){return new F(!0).update(B,V)[O]()}},T=function(){var O=M("hex");O.getCtx=O.create=function(){return new F},O.update=function(R){return O.create().update(R)};for(var B=0;B>6,K[R++]=128|B&63):B<55296||B>=57344?(K[R++]=224|B>>12,K[R++]=128|B>>6&63,K[R++]=128|B&63):(B=65536+((B&1023)<<10|N.charCodeAt(++V)&1023),K[R++]=240|B>>18,K[R++]=128|B>>12&63,K[R++]=128|B>>6&63,K[R++]=128|B&63);else for(R=this.start;V>2]|=B<>2]|=(192|B>>6)<>2]|=(128|B&63)<=57344?(_[R>>2]|=(224|B>>12)<>2]|=(128|B>>6&63)<>2]|=(128|B&63)<>2]|=(240|B>>18)<>2]|=(128|B>>12&63)<>2]|=(128|B>>6&63)<>2]|=(128|B&63)<=64?(this.start=R-64,this.hash(),this.hashed=!0):this.start=R}return this.bytes>4294967295&&(this.hBytes+=this.bytes/4294967296<<0,this.bytes=this.bytes%4294967296),this}},F.prototype.finalize=function(){if(!this.finalized){this.finalized=!0;var N=this.blocks,O=this.lastByteIndex;N[O>>2]|=S[O&3],O>=56&&(this.hashed||this.hash(),N[0]=N[16],N[16]=N[1]=N[2]=N[3]=N[4]=N[5]=N[6]=N[7]=N[8]=N[9]=N[10]=N[11]=N[12]=N[13]=N[14]=N[15]=0),N[14]=this.bytes<<3,N[15]=this.hBytes<<3|this.bytes>>>29,this.hash()}},F.prototype.hash=function(){var N,O,B,V,R,Q,_=this.blocks;this.first?(N=_[0]-680876937,N=(N<<7|N>>>25)-271733879<<0,V=(-1732584194^N&2004318071)+_[1]-117830708,V=(V<<12|V>>>20)+N<<0,B=(-271733879^V&(N^-271733879))+_[2]-1126478375,B=(B<<17|B>>>15)+V<<0,O=(N^B&(V^N))+_[3]-1316259209,O=(O<<22|O>>>10)+B<<0):(N=this.h0,O=this.h1,B=this.h2,V=this.h3,N+=(V^O&(B^V))+_[0]-680876936,N=(N<<7|N>>>25)+O<<0,V+=(B^N&(O^B))+_[1]-389564586,V=(V<<12|V>>>20)+N<<0,B+=(O^V&(N^O))+_[2]+606105819,B=(B<<17|B>>>15)+V<<0,O+=(N^B&(V^N))+_[3]-1044525330,O=(O<<22|O>>>10)+B<<0),N+=(V^O&(B^V))+_[4]-176418897,N=(N<<7|N>>>25)+O<<0,V+=(B^N&(O^B))+_[5]+1200080426,V=(V<<12|V>>>20)+N<<0,B+=(O^V&(N^O))+_[6]-1473231341,B=(B<<17|B>>>15)+V<<0,O+=(N^B&(V^N))+_[7]-45705983,O=(O<<22|O>>>10)+B<<0,N+=(V^O&(B^V))+_[8]+1770035416,N=(N<<7|N>>>25)+O<<0,V+=(B^N&(O^B))+_[9]-1958414417,V=(V<<12|V>>>20)+N<<0,B+=(O^V&(N^O))+_[10]-42063,B=(B<<17|B>>>15)+V<<0,O+=(N^B&(V^N))+_[11]-1990404162,O=(O<<22|O>>>10)+B<<0,N+=(V^O&(B^V))+_[12]+1804603682,N=(N<<7|N>>>25)+O<<0,V+=(B^N&(O^B))+_[13]-40341101,V=(V<<12|V>>>20)+N<<0,B+=(O^V&(N^O))+_[14]-1502002290,B=(B<<17|B>>>15)+V<<0,O+=(N^B&(V^N))+_[15]+1236535329,O=(O<<22|O>>>10)+B<<0,N+=(B^V&(O^B))+_[1]-165796510,N=(N<<5|N>>>27)+O<<0,V+=(O^B&(N^O))+_[6]-1069501632,V=(V<<9|V>>>23)+N<<0,B+=(N^O&(V^N))+_[11]+643717713,B=(B<<14|B>>>18)+V<<0,O+=(V^N&(B^V))+_[0]-373897302,O=(O<<20|O>>>12)+B<<0,N+=(B^V&(O^B))+_[5]-701558691,N=(N<<5|N>>>27)+O<<0,V+=(O^B&(N^O))+_[10]+38016083,V=(V<<9|V>>>23)+N<<0,B+=(N^O&(V^N))+_[15]-660478335,B=(B<<14|B>>>18)+V<<0,O+=(V^N&(B^V))+_[4]-405537848,O=(O<<20|O>>>12)+B<<0,N+=(B^V&(O^B))+_[9]+568446438,N=(N<<5|N>>>27)+O<<0,V+=(O^B&(N^O))+_[14]-1019803690,V=(V<<9|V>>>23)+N<<0,B+=(N^O&(V^N))+_[3]-187363961,B=(B<<14|B>>>18)+V<<0,O+=(V^N&(B^V))+_[8]+1163531501,O=(O<<20|O>>>12)+B<<0,N+=(B^V&(O^B))+_[13]-1444681467,N=(N<<5|N>>>27)+O<<0,V+=(O^B&(N^O))+_[2]-51403784,V=(V<<9|V>>>23)+N<<0,B+=(N^O&(V^N))+_[7]+1735328473,B=(B<<14|B>>>18)+V<<0,O+=(V^N&(B^V))+_[12]-1926607734,O=(O<<20|O>>>12)+B<<0,R=O^B,N+=(R^V)+_[5]-378558,N=(N<<4|N>>>28)+O<<0,V+=(R^N)+_[8]-2022574463,V=(V<<11|V>>>21)+N<<0,Q=V^N,B+=(Q^O)+_[11]+1839030562,B=(B<<16|B>>>16)+V<<0,O+=(Q^B)+_[14]-35309556,O=(O<<23|O>>>9)+B<<0,R=O^B,N+=(R^V)+_[1]-1530992060,N=(N<<4|N>>>28)+O<<0,V+=(R^N)+_[4]+1272893353,V=(V<<11|V>>>21)+N<<0,Q=V^N,B+=(Q^O)+_[7]-155497632,B=(B<<16|B>>>16)+V<<0,O+=(Q^B)+_[10]-1094730640,O=(O<<23|O>>>9)+B<<0,R=O^B,N+=(R^V)+_[13]+681279174,N=(N<<4|N>>>28)+O<<0,V+=(R^N)+_[0]-358537222,V=(V<<11|V>>>21)+N<<0,Q=V^N,B+=(Q^O)+_[3]-722521979,B=(B<<16|B>>>16)+V<<0,O+=(Q^B)+_[6]+76029189,O=(O<<23|O>>>9)+B<<0,R=O^B,N+=(R^V)+_[9]-640364487,N=(N<<4|N>>>28)+O<<0,V+=(R^N)+_[12]-421815835,V=(V<<11|V>>>21)+N<<0,Q=V^N,B+=(Q^O)+_[15]+530742520,B=(B<<16|B>>>16)+V<<0,O+=(Q^B)+_[2]-995338651,O=(O<<23|O>>>9)+B<<0,N+=(B^(O|~V))+_[0]-198630844,N=(N<<6|N>>>26)+O<<0,V+=(O^(N|~B))+_[7]+1126891415,V=(V<<10|V>>>22)+N<<0,B+=(N^(V|~O))+_[14]-1416354905,B=(B<<15|B>>>17)+V<<0,O+=(V^(B|~N))+_[5]-57434055,O=(O<<21|O>>>11)+B<<0,N+=(B^(O|~V))+_[12]+1700485571,N=(N<<6|N>>>26)+O<<0,V+=(O^(N|~B))+_[3]-1894986606,V=(V<<10|V>>>22)+N<<0,B+=(N^(V|~O))+_[10]-1051523,B=(B<<15|B>>>17)+V<<0,O+=(V^(B|~N))+_[1]-2054922799,O=(O<<21|O>>>11)+B<<0,N+=(B^(O|~V))+_[8]+1873313359,N=(N<<6|N>>>26)+O<<0,V+=(O^(N|~B))+_[15]-30611744,V=(V<<10|V>>>22)+N<<0,B+=(N^(V|~O))+_[6]-1560198380,B=(B<<15|B>>>17)+V<<0,O+=(V^(B|~N))+_[13]+1309151649,O=(O<<21|O>>>11)+B<<0,N+=(B^(O|~V))+_[4]-145523070,N=(N<<6|N>>>26)+O<<0,V+=(O^(N|~B))+_[11]-1120210379,V=(V<<10|V>>>22)+N<<0,B+=(N^(V|~O))+_[2]+718787259,B=(B<<15|B>>>17)+V<<0,O+=(V^(B|~N))+_[9]-343485551,O=(O<<21|O>>>11)+B<<0,this.first?(this.h0=N+1732584193<<0,this.h1=O-271733879<<0,this.h2=B-1732584194<<0,this.h3=V+271733878<<0,this.first=!1):(this.h0=this.h0+N<<0,this.h1=this.h1+O<<0,this.h2=this.h2+B<<0,this.h3=this.h3+V<<0)},F.prototype.hex=function(){this.finalize();var N=this.h0,O=this.h1,B=this.h2,V=this.h3;return b[N>>4&15]+b[N&15]+b[N>>12&15]+b[N>>8&15]+b[N>>20&15]+b[N>>16&15]+b[N>>28&15]+b[N>>24&15]+b[O>>4&15]+b[O&15]+b[O>>12&15]+b[O>>8&15]+b[O>>20&15]+b[O>>16&15]+b[O>>28&15]+b[O>>24&15]+b[B>>4&15]+b[B&15]+b[B>>12&15]+b[B>>8&15]+b[B>>20&15]+b[B>>16&15]+b[B>>28&15]+b[B>>24&15]+b[V>>4&15]+b[V&15]+b[V>>12&15]+b[V>>8&15]+b[V>>20&15]+b[V>>16&15]+b[V>>28&15]+b[V>>24&15]},F.prototype.toString=F.prototype.hex,F.prototype.digest=function(N){if(N==="hex")return this.hex();this.finalize();var O=this.h0,B=this.h1,V=this.h2,R=this.h3,Q=[O&255,O>>8&255,O>>16&255,O>>24&255,B&255,B>>8&255,B>>16&255,B>>24&255,V&255,V>>8&255,V>>16&255,V>>24&255,R&255,R>>8&255,R>>16&255,R>>24&255];return Q},F.prototype.array=F.prototype.digest,F.prototype.arrayBuffer=function(){this.finalize();var N=new ArrayBuffer(16),O=new Uint32Array(N);return O[0]=this.h0,O[1]=this.h1,O[2]=this.h2,O[3]=this.h3,N},F.prototype.buffer=F.prototype.arrayBuffer,F.prototype.base64=function(){for(var N,O,B,V="",R=this.array(),Q=0;Q<15;)N=R[Q++],O=R[Q++],B=R[Q++],V+=C[N>>>2]+C[(N<<4|O>>>4)&63]+C[(O<<2|B>>>6)&63]+C[B&63];return N=R[Q],V+=C[N>>>2]+C[N<<4&63]+"==",V};var D=T();d?a.exports=D:(m.md5=D,y&&(l=function(){return D}.call(D,o,D,a),l!==void 0&&(a.exports=l)))})()}).call(this,o("./node_modules/webpack/buildin/module.js")(r))},"./lib/request.js":function(r,s,o){var a=o("./node_modules/@babel/runtime/helpers/typeof.js"),l=function(y){switch(a(y)){case"string":return y;case"boolean":return y?"true":"false";case"number":return isFinite(y)?y:"";default:return""}},c=function(y,A,b,S){return A=A||"&",b=b||"=",y===null&&(y=void 0),a(y)==="object"?Object.keys(y).map(function(E){var x=encodeURIComponent(l(E))+b;return Array.isArray(y[E])?y[E].map(function(C){return x+encodeURIComponent(l(C))}).join(A):x+encodeURIComponent(l(y[E]))}).filter(Boolean).join(A):S?encodeURIComponent(l(S))+b+encodeURIComponent(l(y)):""},u=function(y,A,b){var S={},E=A.getAllResponseHeaders();return E&&E.length>0&&E.trim().split(` `).forEach(function(x){if(x){var C=x.indexOf(":"),P=x.substr(0,C).trim().toLowerCase(),k=x.substr(C+1).trim();S[P]=k}}),{error:y,statusCode:A.status,statusMessage:A.statusText,headers:S,body:b}},m=function(y,A){return!A&&A==="text"?y.responseText:y.response},g=function(y,A){var b=(y.method||"GET").toUpperCase(),S=y.url;if(y.qs){var E=c(y.qs);E&&(S+=(S.indexOf("?")===-1?"?":"&")+E)}var x=new XMLHttpRequest;if(x.open(b,S,!0),x.responseType=y.dataType||"text",y.xhrFields)for(var C in y.xhrFields)x[C]=y.xhrFields[C];var P=y.headers;if(P)for(var k in P)P.hasOwnProperty(k)&&k.toLowerCase()!=="content-length"&&k.toLowerCase()!=="user-agent"&&k.toLowerCase()!=="origin"&&k.toLowerCase()!=="host"&&x.setRequestHeader(k,P[k]);return y.onProgress&&x.upload&&(x.upload.onprogress=y.onProgress),y.onDownloadProgress&&(x.onprogress=y.onDownloadProgress),y.timeout&&(x.timeout=y.timeout),x.ontimeout=function(I){var M=new Error("timeout");A(u(M,x))},x.onload=function(){A(u(null,x,m(x,y.dataType)))},x.onerror=function(I){var M=m(x,y.dataType);if(M)A(u(null,x,M));else{var T=x.statusText;!T&&x.status===0&&(T=new Error("CORS blocked or network error")),A(u(T,x,M))}},x.send(y.body||""),x};r.exports=g},"./lib/xml2json.js":function(r,s,o){var a=o("./node_modules/@xmldom/xmldom/lib/index.js").DOMParser,l=function(){this.version="1.3.5";var u={mergeCDATA:!0,normalize:!0,stripElemPrefix:!0},m=new RegExp(/(?!xmlns)^.*:/);return this.grokType=function(g){return/^\s*$/.test(g)?null:/^(?:true|false)$/i.test(g)?g.toLowerCase()==="true":isFinite(g)?parseFloat(g):g},this.parseString=function(g,d){if(g){var y=this.stringToXML(g);return y.getElementsByTagName("parsererror").length?null:this.parseXML(y,d)}else return null},this.parseXML=function(g,d){for(var y in d)u[y]=d[y];var A={},b=0,S="",E=g.childNodes.length;if(E)for(var x,C,P,k=0;k=M+T||M?new java.lang.String(I,M,T)+"":I}"endDTD,startEntity,endEntity,attributeDecl,elementDecl,externalEntityDecl,internalEntityDecl,resolveEntity,getExternalSubset,notationDecl,unparsedEntityDecl".replace(/\w+/g,function(I){E.prototype[I]=function(){return null}});function k(I,M){I.currentElement?I.currentElement.appendChild(M):I.doc.appendChild(M)}s.__DOMHandler=E,s.normalizeLineEndings=A,s.DOMParser=b},"./node_modules/@xmldom/xmldom/lib/dom.js":function(r,s,o){var a=o("./node_modules/@xmldom/xmldom/lib/conventions.js"),l=a.find,c=a.NAMESPACE;function u(te){return te!==""}function m(te){return te?te.split(/[\t\n\f\r ]+/).filter(u):[]}function g(te,de){return te.hasOwnProperty(de)||(te[de]=!0),te}function d(te){if(!te)return[];var de=m(te);return Object.keys(de.reduce(g,{}))}function y(te){return function(de){return te&&te.indexOf(de)!==-1}}function A(te,de){for(var ke in te)Object.prototype.hasOwnProperty.call(te,ke)&&(de[ke]=te[ke])}function b(te,de){var ke=te.prototype;if(!(ke instanceof de)){let Oe=function(){};Oe.prototype=de.prototype,Oe=new Oe,A(ke,Oe),te.prototype=ke=Oe}ke.constructor!=te&&(typeof te!="function"&&console.error("unknown Class:"+te),ke.constructor=te)}var S={},E=S.ELEMENT_NODE=1,x=S.ATTRIBUTE_NODE=2,C=S.TEXT_NODE=3,P=S.CDATA_SECTION_NODE=4,k=S.ENTITY_REFERENCE_NODE=5,I=S.ENTITY_NODE=6,M=S.PROCESSING_INSTRUCTION_NODE=7,T=S.COMMENT_NODE=8,F=S.DOCUMENT_NODE=9,D=S.DOCUMENT_TYPE_NODE=10,N=S.DOCUMENT_FRAGMENT_NODE=11,O=S.NOTATION_NODE=12,B={},V={};B.INDEX_SIZE_ERR=(V[1]="Index size error",1),B.DOMSTRING_SIZE_ERR=(V[2]="DOMString size error",2);var R=B.HIERARCHY_REQUEST_ERR=(V[3]="Hierarchy request error",3);B.WRONG_DOCUMENT_ERR=(V[4]="Wrong document",4),B.INVALID_CHARACTER_ERR=(V[5]="Invalid character",5),B.NO_DATA_ALLOWED_ERR=(V[6]="No data allowed",6),B.NO_MODIFICATION_ALLOWED_ERR=(V[7]="No modification allowed",7);var Q=B.NOT_FOUND_ERR=(V[8]="Not found",8);B.NOT_SUPPORTED_ERR=(V[9]="Not supported",9);var _=B.INUSE_ATTRIBUTE_ERR=(V[10]="Attribute in use",10);B.INVALID_STATE_ERR=(V[11]="Invalid state",11),B.SYNTAX_ERR=(V[12]="Syntax error",12),B.INVALID_MODIFICATION_ERR=(V[13]="Invalid modification",13),B.NAMESPACE_ERR=(V[14]="Invalid namespace",14),B.INVALID_ACCESS_ERR=(V[15]="Invalid access",15);function K(te,de){if(de instanceof Error)var ke=de;else ke=this,Error.call(this,V[te]),this.message=V[te],Error.captureStackTrace&&Error.captureStackTrace(this,K);return ke.code=te,de&&(this.message=this.message+": "+de),ke}K.prototype=Error.prototype,A(B,K);function G(){}G.prototype={length:0,item:function(te){return te>=0&&te=0){for(var We=de.length-1;Oe0},lookupPrefix:function(te){for(var de=this;de;){var ke=de._nsMap;if(ke){for(var Oe in ke)if(Object.prototype.hasOwnProperty.call(ke,Oe)&&ke[Oe]===te)return Oe}de=de.nodeType==x?de.ownerDocument:de.parentNode}return null},lookupNamespaceURI:function(te){for(var de=this;de;){var ke=de._nsMap;if(ke&&Object.prototype.hasOwnProperty.call(ke,te))return ke[te];de=de.nodeType==x?de.ownerDocument:de.parentNode}return null},isDefaultNamespace:function(te){var de=this.lookupPrefix(te);return de==null}};function ce(te){return te=="<"&&"<"||te==">"&&">"||te=="&"&&"&"||te=='"'&&"""||"&#"+te.charCodeAt()+";"}A(S,J),A(S,J.prototype);function ge(te,de){if(de(te))return!0;if(te=te.firstChild)do if(ge(te,de))return!0;while(te=te.nextSibling)}function Ee(){this.ownerDocument=this}function Ie(te,de,ke){te&&te._inc++;var Oe=ke.namespaceURI;Oe===c.XMLNS&&(de._nsMap[ke.prefix?ke.localName:""]=ke.value)}function De(te,de,ke,Oe){te&&te._inc++;var We=ke.namespaceURI;We===c.XMLNS&&delete de._nsMap[ke.prefix?ke.localName:""]}function ie(te,de,ke){if(te&&te._inc){te._inc++;var Oe=de.childNodes;if(ke)Oe[Oe.length++]=ke;else{for(var We=de.firstChild,Ze=0;We;)Oe[Ze++]=We,We=We.nextSibling;Oe.length=Ze,delete Oe[Oe.length]}}}function ae(te,de){var ke=de.previousSibling,Oe=de.nextSibling;return ke?ke.nextSibling=Oe:te.firstChild=Oe,Oe?Oe.previousSibling=ke:te.lastChild=ke,de.parentNode=null,de.previousSibling=null,de.nextSibling=null,ie(te.ownerDocument,te),de}function H(te){return te&&(te.nodeType===J.DOCUMENT_NODE||te.nodeType===J.DOCUMENT_FRAGMENT_NODE||te.nodeType===J.ELEMENT_NODE)}function ve(te){return te&&(ee(te)||ne(te)||pe(te)||te.nodeType===J.DOCUMENT_FRAGMENT_NODE||te.nodeType===J.COMMENT_NODE||te.nodeType===J.PROCESSING_INSTRUCTION_NODE)}function pe(te){return te&&te.nodeType===J.DOCUMENT_TYPE_NODE}function ee(te){return te&&te.nodeType===J.ELEMENT_NODE}function ne(te){return te&&te.nodeType===J.TEXT_NODE}function me(te,de){var ke=te.childNodes||[];if(l(ke,ee)||pe(de))return!1;var Oe=l(ke,pe);return!(de&&Oe&&ke.indexOf(Oe)>ke.indexOf(de))}function Be(te,de){var ke=te.childNodes||[];function Oe(Ze){return ee(Ze)&&Ze!==de}if(l(ke,Oe))return!1;var We=l(ke,pe);return!(de&&We&&ke.indexOf(We)>ke.indexOf(de))}function oe(te,de,ke){if(!H(te))throw new K(R,"Unexpected parent node type "+te.nodeType);if(ke&&ke.parentNode!==te)throw new K(Q,"child not in parent");if(!ve(de)||pe(de)&&te.nodeType!==J.DOCUMENT_NODE)throw new K(R,"Unexpected node type "+de.nodeType+" for parent node type "+te.nodeType)}function Ae(te,de,ke){var Oe=te.childNodes||[],We=de.childNodes||[];if(de.nodeType===J.DOCUMENT_FRAGMENT_NODE){var Ze=We.filter(ee);if(Ze.length>1||l(We,ne))throw new K(R,"More than one element or text in fragment");if(Ze.length===1&&!me(te,ke))throw new K(R,"Element in fragment can not be inserted before doctype")}if(ee(de)&&!me(te,ke))throw new K(R,"Only one element can be added and only after doctype");if(pe(de)){if(l(Oe,pe))throw new K(R,"Only one doctype is allowed");var nt=l(Oe,ee);if(ke&&Oe.indexOf(nt)1||l(We,ne))throw new K(R,"More than one element or text in fragment");if(Ze.length===1&&!Be(te,ke))throw new K(R,"Element in fragment can not be inserted before doctype")}if(ee(de)&&!Be(te,ke))throw new K(R,"Only one element can be added and only after doctype");if(pe(de)){if(l(Oe,function(qe){return pe(qe)&&qe!==ke}))throw new K(R,"Only one doctype is allowed");var nt=l(Oe,ee);if(ke&&Oe.indexOf(nt)0&&ge(ke.documentElement,function(We){if(We!==ke&&We.nodeType===E){var Ze=We.getAttribute("class");if(Ze){var nt=te===Ze;if(!nt){var vt=d(Ze);nt=de.every(y(vt))}nt&&Oe.push(We)}}}),Oe})},createElement:function(te){var de=new he;de.ownerDocument=this,de.nodeName=te,de.tagName=te,de.localName=te,de.childNodes=new G;var ke=de.attributes=new q;return ke._ownerElement=de,de},createDocumentFragment:function(){var te=new ot;return te.ownerDocument=this,te.childNodes=new G,te},createTextNode:function(te){var de=new Ve;return de.ownerDocument=this,de.appendData(te),de},createComment:function(te){var de=new Ue;return de.ownerDocument=this,de.appendData(te),de},createCDATASection:function(te){var de=new je;return de.ownerDocument=this,de.appendData(te),de},createProcessingInstruction:function(te,de){var ke=new yt;return ke.ownerDocument=this,ke.tagName=ke.nodeName=ke.target=te,ke.nodeValue=ke.data=de,ke},createAttribute:function(te){var de=new Pe;return de.ownerDocument=this,de.name=te,de.nodeName=te,de.localName=te,de.specified=!0,de},createEntityReference:function(te){var de=new $e;return de.ownerDocument=this,de.nodeName=te,de},createElementNS:function(te,de){var ke=new he,Oe=de.split(":"),We=ke.attributes=new q;return ke.childNodes=new G,ke.ownerDocument=this,ke.nodeName=de,ke.tagName=de,ke.namespaceURI=te,Oe.length==2?(ke.prefix=Oe[0],ke.localName=Oe[1]):ke.localName=de,We._ownerElement=ke,ke},createAttributeNS:function(te,de){var ke=new Pe,Oe=de.split(":");return ke.ownerDocument=this,ke.nodeName=de,ke.name=de,ke.namespaceURI=te,ke.specified=!0,Oe.length==2?(ke.prefix=Oe[0],ke.localName=Oe[1]):ke.localName=de,ke}},b(Ee,J);function he(){this._nsMap={}}he.prototype={nodeType:E,hasAttribute:function(te){return this.getAttributeNode(te)!=null},getAttribute:function(te){var de=this.getAttributeNode(te);return de&&de.value||""},getAttributeNode:function(te){return this.attributes.getNamedItem(te)},setAttribute:function(te,de){var ke=this.ownerDocument.createAttribute(te);ke.value=ke.nodeValue=""+de,this.setAttributeNode(ke)},removeAttribute:function(te){var de=this.getAttributeNode(te);de&&this.removeAttributeNode(de)},appendChild:function(te){return te.nodeType===N?this.insertBefore(te,null):Ce(this,te)},setAttributeNode:function(te){return this.attributes.setNamedItem(te)},setAttributeNodeNS:function(te){return this.attributes.setNamedItemNS(te)},removeAttributeNode:function(te){return this.attributes.removeNamedItem(te.nodeName)},removeAttributeNS:function(te,de){var ke=this.getAttributeNodeNS(te,de);ke&&this.removeAttributeNode(ke)},hasAttributeNS:function(te,de){return this.getAttributeNodeNS(te,de)!=null},getAttributeNS:function(te,de){var ke=this.getAttributeNodeNS(te,de);return ke&&ke.value||""},setAttributeNS:function(te,de,ke){var Oe=this.ownerDocument.createAttributeNS(te,de);Oe.value=Oe.nodeValue=""+ke,this.setAttributeNode(Oe)},getAttributeNodeNS:function(te,de){return this.attributes.getNamedItemNS(te,de)},getElementsByTagName:function(te){return new U(this,function(de){var ke=[];return ge(de,function(Oe){Oe!==de&&Oe.nodeType==E&&(te==="*"||Oe.tagName==te)&&ke.push(Oe)}),ke})},getElementsByTagNameNS:function(te,de){return new U(this,function(ke){var Oe=[];return ge(ke,function(We){We!==ke&&We.nodeType===E&&(te==="*"||We.namespaceURI===te)&&(de==="*"||We.localName==de)&&Oe.push(We)}),Oe})}},Ee.prototype.getElementsByTagName=he.prototype.getElementsByTagName,Ee.prototype.getElementsByTagNameNS=he.prototype.getElementsByTagNameNS,b(he,J);function Pe(){}Pe.prototype.nodeType=x,b(Pe,J);function ye(){}ye.prototype={data:"",substringData:function(te,de){return this.data.substring(te,te+de)},appendData:function(te){te=this.data+te,this.nodeValue=this.data=te,this.length=te.length},insertData:function(te,de){this.replaceData(te,0,de)},appendChild:function(te){throw new Error(V[R])},deleteData:function(te,de){this.replaceData(te,de,"")},replaceData:function(te,de,ke){var Oe=this.data.substring(0,te),We=this.data.substring(te+de);ke=Oe+ke+We,this.nodeValue=this.data=ke,this.length=ke.length}},b(ye,J);function Ve(){}Ve.prototype={nodeName:"#text",nodeType:C,splitText:function(te){var de=this.data,ke=de.substring(te);de=de.substring(0,te),this.data=this.nodeValue=de,this.length=de.length;var Oe=this.ownerDocument.createTextNode(ke);return this.parentNode&&this.parentNode.insertBefore(Oe,this.nextSibling),Oe}},b(Ve,ye);function Ue(){}Ue.prototype={nodeName:"#comment",nodeType:T},b(Ue,ye);function je(){}je.prototype={nodeName:"#cdata-section",nodeType:P},b(je,ye);function _e(){}_e.prototype.nodeType=D,b(_e,J);function Ke(){}Ke.prototype.nodeType=O,b(Ke,J);function tt(){}tt.prototype.nodeType=I,b(tt,J);function $e(){}$e.prototype.nodeType=k,b($e,J);function ot(){}ot.prototype.nodeName="#document-fragment",ot.prototype.nodeType=N,b(ot,J);function yt(){}yt.prototype.nodeType=M,b(yt,J);function ct(){}ct.prototype.serializeToString=function(te,de,ke){return dt.call(te,de,ke)},J.prototype.toString=dt;function dt(te,de){var ke=[],Oe=this.nodeType==9&&this.documentElement||this,We=Oe.prefix,Ze=Oe.namespaceURI;if(Ze&&We==null){var We=Oe.lookupPrefix(Ze);if(We==null)var nt=[{namespace:Ze,prefix:null}]}return pt(this,ke,te,de,nt),ke.join("")}function Pt(te,de,ke){var Oe=te.prefix||"",We=te.namespaceURI;if(!We||Oe==="xml"&&We===c.XML||We===c.XMLNS)return!1;for(var Ze=ke.length;Ze--;){var nt=ke[Ze];if(nt.prefix===Oe)return nt.namespace!==We}return!0}function ht(te,de,ke){te.push(" ",de,'="',ke.replace(/[<>&"\t\n\r]/g,ce),'"')}function pt(te,de,ke,Oe,We){if(We||(We=[]),Oe)if(te=Oe(te),te){if(typeof te=="string"){de.push(te);return}}else return;switch(te.nodeType){case E:var Ze=te.attributes,nt=Ze.length,Se=te.firstChild,vt=te.tagName;ke=c.isHTML(te.namespaceURI)||ke;var qe=vt;if(!ke&&!te.prefix&&te.namespaceURI){for(var xt,Mt=0;Mt=0;Ft--){var z=We[Ft];if(z.prefix===""&&z.namespace===te.namespaceURI){xt=z.namespace;break}}if(xt!==te.namespaceURI)for(var Ft=We.length-1;Ft>=0;Ft--){var z=We[Ft];if(z.namespace===te.namespaceURI){z.prefix&&(qe=z.prefix+":"+vt);break}}}de.push("<",qe);for(var fe=0;fe"),ke&&/^script$/i.test(vt))for(;Se;)Se.data?de.push(Se.data):pt(Se,de,ke,Oe,We.slice()),Se=Se.nextSibling;else for(;Se;)pt(Se,de,ke,Oe,We.slice()),Se=Se.nextSibling;de.push("")}else de.push("/>");return;case F:case N:for(var Se=te.firstChild;Se;)pt(Se,de,ke,Oe,We.slice()),Se=Se.nextSibling;return;case x:return ht(de,te.name,te.value);case C:return de.push(te.data.replace(/[<&>]/g,ce));case P:return de.push("");case T:return de.push("");case D:var Te=te.publicId,Fe=te.systemId;if(de.push("");else if(Fe&&Fe!=".")de.push(" SYSTEM ",Fe,">");else{var He=te.internalSubset;He&&de.push(" [",He,"]"),de.push(">")}return;case M:return de.push("");case k:return de.push("&",te.nodeName,";");default:de.push("??",te.nodeName)}}function Ct(te,de,ke){var Oe;switch(de.nodeType){case E:Oe=de.cloneNode(!1),Oe.ownerDocument=te;case N:break;case x:ke=!0;break}if(Oe||(Oe=de.cloneNode(!1)),Oe.ownerDocument=te,Oe.parentNode=null,ke)for(var We=de.firstChild;We;)Oe.appendChild(Ct(te,We,ke)),We=We.nextSibling;return Oe}function Gt(te,de,ke){var Oe=new de.constructor;for(var We in de)if(Object.prototype.hasOwnProperty.call(de,We)){var Ze=de[We];typeof Ze!="object"&&Ze!=Oe[We]&&(Oe[We]=Ze)}switch(de.childNodes&&(Oe.childNodes=new G),Oe.ownerDocument=te,Oe.nodeType){case E:var nt=de.attributes,vt=Oe.attributes=new q,qe=nt.length;vt._ownerElement=Oe;for(var xt=0;xt",lt:"<",quot:'"'}),s.HTML_ENTITIES=a({Aacute:"Á",aacute:"á",Abreve:"Ă",abreve:"ă",ac:"∾",acd:"∿",acE:"∾̳",Acirc:"Â",acirc:"â",acute:"´",Acy:"А",acy:"а",AElig:"Æ",aelig:"æ",af:"⁡",Afr:"𝔄",afr:"𝔞",Agrave:"À",agrave:"à",alefsym:"ℵ",aleph:"ℵ",Alpha:"Α",alpha:"α",Amacr:"Ā",amacr:"ā",amalg:"⨿",AMP:"&",amp:"&",And:"⩓",and:"∧",andand:"⩕",andd:"⩜",andslope:"⩘",andv:"⩚",ang:"∠",ange:"⦤",angle:"∠",angmsd:"∡",angmsdaa:"⦨",angmsdab:"⦩",angmsdac:"⦪",angmsdad:"⦫",angmsdae:"⦬",angmsdaf:"⦭",angmsdag:"⦮",angmsdah:"⦯",angrt:"∟",angrtvb:"⊾",angrtvbd:"⦝",angsph:"∢",angst:"Å",angzarr:"⍼",Aogon:"Ą",aogon:"ą",Aopf:"𝔸",aopf:"𝕒",ap:"≈",apacir:"⩯",apE:"⩰",ape:"≊",apid:"≋",apos:"'",ApplyFunction:"⁡",approx:"≈",approxeq:"≊",Aring:"Å",aring:"å",Ascr:"𝒜",ascr:"𝒶",Assign:"≔",ast:"*",asymp:"≈",asympeq:"≍",Atilde:"Ã",atilde:"ã",Auml:"Ä",auml:"ä",awconint:"∳",awint:"⨑",backcong:"≌",backepsilon:"϶",backprime:"‵",backsim:"∽",backsimeq:"⋍",Backslash:"∖",Barv:"⫧",barvee:"⊽",Barwed:"⌆",barwed:"⌅",barwedge:"⌅",bbrk:"⎵",bbrktbrk:"⎶",bcong:"≌",Bcy:"Б",bcy:"б",bdquo:"„",becaus:"∵",Because:"∵",because:"∵",bemptyv:"⦰",bepsi:"϶",bernou:"ℬ",Bernoullis:"ℬ",Beta:"Β",beta:"β",beth:"ℶ",between:"≬",Bfr:"𝔅",bfr:"𝔟",bigcap:"⋂",bigcirc:"◯",bigcup:"⋃",bigodot:"⨀",bigoplus:"⨁",bigotimes:"⨂",bigsqcup:"⨆",bigstar:"★",bigtriangledown:"▽",bigtriangleup:"△",biguplus:"⨄",bigvee:"⋁",bigwedge:"⋀",bkarow:"⤍",blacklozenge:"⧫",blacksquare:"▪",blacktriangle:"▴",blacktriangledown:"▾",blacktriangleleft:"◂",blacktriangleright:"▸",blank:"␣",blk12:"▒",blk14:"░",blk34:"▓",block:"█",bne:"=⃥",bnequiv:"≡⃥",bNot:"⫭",bnot:"⌐",Bopf:"𝔹",bopf:"𝕓",bot:"⊥",bottom:"⊥",bowtie:"⋈",boxbox:"⧉",boxDL:"╗",boxDl:"╖",boxdL:"╕",boxdl:"┐",boxDR:"╔",boxDr:"╓",boxdR:"╒",boxdr:"┌",boxH:"═",boxh:"─",boxHD:"╦",boxHd:"╤",boxhD:"╥",boxhd:"┬",boxHU:"╩",boxHu:"╧",boxhU:"╨",boxhu:"┴",boxminus:"⊟",boxplus:"⊞",boxtimes:"⊠",boxUL:"╝",boxUl:"╜",boxuL:"╛",boxul:"┘",boxUR:"╚",boxUr:"╙",boxuR:"╘",boxur:"└",boxV:"║",boxv:"│",boxVH:"╬",boxVh:"╫",boxvH:"╪",boxvh:"┼",boxVL:"╣",boxVl:"╢",boxvL:"╡",boxvl:"┤",boxVR:"╠",boxVr:"╟",boxvR:"╞",boxvr:"├",bprime:"‵",Breve:"˘",breve:"˘",brvbar:"¦",Bscr:"ℬ",bscr:"𝒷",bsemi:"⁏",bsim:"∽",bsime:"⋍",bsol:"\\",bsolb:"⧅",bsolhsub:"⟈",bull:"•",bullet:"•",bump:"≎",bumpE:"⪮",bumpe:"≏",Bumpeq:"≎",bumpeq:"≏",Cacute:"Ć",cacute:"ć",Cap:"⋒",cap:"∩",capand:"⩄",capbrcup:"⩉",capcap:"⩋",capcup:"⩇",capdot:"⩀",CapitalDifferentialD:"ⅅ",caps:"∩︀",caret:"⁁",caron:"ˇ",Cayleys:"ℭ",ccaps:"⩍",Ccaron:"Č",ccaron:"č",Ccedil:"Ç",ccedil:"ç",Ccirc:"Ĉ",ccirc:"ĉ",Cconint:"∰",ccups:"⩌",ccupssm:"⩐",Cdot:"Ċ",cdot:"ċ",cedil:"¸",Cedilla:"¸",cemptyv:"⦲",cent:"¢",CenterDot:"·",centerdot:"·",Cfr:"ℭ",cfr:"𝔠",CHcy:"Ч",chcy:"ч",check:"✓",checkmark:"✓",Chi:"Χ",chi:"χ",cir:"○",circ:"ˆ",circeq:"≗",circlearrowleft:"↺",circlearrowright:"↻",circledast:"⊛",circledcirc:"⊚",circleddash:"⊝",CircleDot:"⊙",circledR:"®",circledS:"Ⓢ",CircleMinus:"⊖",CirclePlus:"⊕",CircleTimes:"⊗",cirE:"⧃",cire:"≗",cirfnint:"⨐",cirmid:"⫯",cirscir:"⧂",ClockwiseContourIntegral:"∲",CloseCurlyDoubleQuote:"”",CloseCurlyQuote:"’",clubs:"♣",clubsuit:"♣",Colon:"∷",colon:":",Colone:"⩴",colone:"≔",coloneq:"≔",comma:",",commat:"@",comp:"∁",compfn:"∘",complement:"∁",complexes:"ℂ",cong:"≅",congdot:"⩭",Congruent:"≡",Conint:"∯",conint:"∮",ContourIntegral:"∮",Copf:"ℂ",copf:"𝕔",coprod:"∐",Coproduct:"∐",COPY:"©",copy:"©",copysr:"℗",CounterClockwiseContourIntegral:"∳",crarr:"↵",Cross:"⨯",cross:"✗",Cscr:"𝒞",cscr:"𝒸",csub:"⫏",csube:"⫑",csup:"⫐",csupe:"⫒",ctdot:"⋯",cudarrl:"⤸",cudarrr:"⤵",cuepr:"⋞",cuesc:"⋟",cularr:"↶",cularrp:"⤽",Cup:"⋓",cup:"∪",cupbrcap:"⩈",CupCap:"≍",cupcap:"⩆",cupcup:"⩊",cupdot:"⊍",cupor:"⩅",cups:"∪︀",curarr:"↷",curarrm:"⤼",curlyeqprec:"⋞",curlyeqsucc:"⋟",curlyvee:"⋎",curlywedge:"⋏",curren:"¤",curvearrowleft:"↶",curvearrowright:"↷",cuvee:"⋎",cuwed:"⋏",cwconint:"∲",cwint:"∱",cylcty:"⌭",Dagger:"‡",dagger:"†",daleth:"ℸ",Darr:"↡",dArr:"⇓",darr:"↓",dash:"‐",Dashv:"⫤",dashv:"⊣",dbkarow:"⤏",dblac:"˝",Dcaron:"Ď",dcaron:"ď",Dcy:"Д",dcy:"д",DD:"ⅅ",dd:"ⅆ",ddagger:"‡",ddarr:"⇊",DDotrahd:"⤑",ddotseq:"⩷",deg:"°",Del:"∇",Delta:"Δ",delta:"δ",demptyv:"⦱",dfisht:"⥿",Dfr:"𝔇",dfr:"𝔡",dHar:"⥥",dharl:"⇃",dharr:"⇂",DiacriticalAcute:"´",DiacriticalDot:"˙",DiacriticalDoubleAcute:"˝",DiacriticalGrave:"`",DiacriticalTilde:"˜",diam:"⋄",Diamond:"⋄",diamond:"⋄",diamondsuit:"♦",diams:"♦",die:"¨",DifferentialD:"ⅆ",digamma:"ϝ",disin:"⋲",div:"÷",divide:"÷",divideontimes:"⋇",divonx:"⋇",DJcy:"Ђ",djcy:"ђ",dlcorn:"⌞",dlcrop:"⌍",dollar:"$",Dopf:"𝔻",dopf:"𝕕",Dot:"¨",dot:"˙",DotDot:"⃜",doteq:"≐",doteqdot:"≑",DotEqual:"≐",dotminus:"∸",dotplus:"∔",dotsquare:"⊡",doublebarwedge:"⌆",DoubleContourIntegral:"∯",DoubleDot:"¨",DoubleDownArrow:"⇓",DoubleLeftArrow:"⇐",DoubleLeftRightArrow:"⇔",DoubleLeftTee:"⫤",DoubleLongLeftArrow:"⟸",DoubleLongLeftRightArrow:"⟺",DoubleLongRightArrow:"⟹",DoubleRightArrow:"⇒",DoubleRightTee:"⊨",DoubleUpArrow:"⇑",DoubleUpDownArrow:"⇕",DoubleVerticalBar:"∥",DownArrow:"↓",Downarrow:"⇓",downarrow:"↓",DownArrowBar:"⤓",DownArrowUpArrow:"⇵",DownBreve:"̑",downdownarrows:"⇊",downharpoonleft:"⇃",downharpoonright:"⇂",DownLeftRightVector:"⥐",DownLeftTeeVector:"⥞",DownLeftVector:"↽",DownLeftVectorBar:"⥖",DownRightTeeVector:"⥟",DownRightVector:"⇁",DownRightVectorBar:"⥗",DownTee:"⊤",DownTeeArrow:"↧",drbkarow:"⤐",drcorn:"⌟",drcrop:"⌌",Dscr:"𝒟",dscr:"𝒹",DScy:"Ѕ",dscy:"ѕ",dsol:"⧶",Dstrok:"Đ",dstrok:"đ",dtdot:"⋱",dtri:"▿",dtrif:"▾",duarr:"⇵",duhar:"⥯",dwangle:"⦦",DZcy:"Џ",dzcy:"џ",dzigrarr:"⟿",Eacute:"É",eacute:"é",easter:"⩮",Ecaron:"Ě",ecaron:"ě",ecir:"≖",Ecirc:"Ê",ecirc:"ê",ecolon:"≕",Ecy:"Э",ecy:"э",eDDot:"⩷",Edot:"Ė",eDot:"≑",edot:"ė",ee:"ⅇ",efDot:"≒",Efr:"𝔈",efr:"𝔢",eg:"⪚",Egrave:"È",egrave:"è",egs:"⪖",egsdot:"⪘",el:"⪙",Element:"∈",elinters:"⏧",ell:"ℓ",els:"⪕",elsdot:"⪗",Emacr:"Ē",emacr:"ē",empty:"∅",emptyset:"∅",EmptySmallSquare:"◻",emptyv:"∅",EmptyVerySmallSquare:"▫",emsp:" ",emsp13:" ",emsp14:" ",ENG:"Ŋ",eng:"ŋ",ensp:" ",Eogon:"Ę",eogon:"ę",Eopf:"𝔼",eopf:"𝕖",epar:"⋕",eparsl:"⧣",eplus:"⩱",epsi:"ε",Epsilon:"Ε",epsilon:"ε",epsiv:"ϵ",eqcirc:"≖",eqcolon:"≕",eqsim:"≂",eqslantgtr:"⪖",eqslantless:"⪕",Equal:"⩵",equals:"=",EqualTilde:"≂",equest:"≟",Equilibrium:"⇌",equiv:"≡",equivDD:"⩸",eqvparsl:"⧥",erarr:"⥱",erDot:"≓",Escr:"ℰ",escr:"ℯ",esdot:"≐",Esim:"⩳",esim:"≂",Eta:"Η",eta:"η",ETH:"Ð",eth:"ð",Euml:"Ë",euml:"ë",euro:"€",excl:"!",exist:"∃",Exists:"∃",expectation:"ℰ",ExponentialE:"ⅇ",exponentiale:"ⅇ",fallingdotseq:"≒",Fcy:"Ф",fcy:"ф",female:"♀",ffilig:"ffi",fflig:"ff",ffllig:"ffl",Ffr:"𝔉",ffr:"𝔣",filig:"fi",FilledSmallSquare:"◼",FilledVerySmallSquare:"▪",fjlig:"fj",flat:"♭",fllig:"fl",fltns:"▱",fnof:"ƒ",Fopf:"𝔽",fopf:"𝕗",ForAll:"∀",forall:"∀",fork:"⋔",forkv:"⫙",Fouriertrf:"ℱ",fpartint:"⨍",frac12:"½",frac13:"⅓",frac14:"¼",frac15:"⅕",frac16:"⅙",frac18:"⅛",frac23:"⅔",frac25:"⅖",frac34:"¾",frac35:"⅗",frac38:"⅜",frac45:"⅘",frac56:"⅚",frac58:"⅝",frac78:"⅞",frasl:"⁄",frown:"⌢",Fscr:"ℱ",fscr:"𝒻",gacute:"ǵ",Gamma:"Γ",gamma:"γ",Gammad:"Ϝ",gammad:"ϝ",gap:"⪆",Gbreve:"Ğ",gbreve:"ğ",Gcedil:"Ģ",Gcirc:"Ĝ",gcirc:"ĝ",Gcy:"Г",gcy:"г",Gdot:"Ġ",gdot:"ġ",gE:"≧",ge:"≥",gEl:"⪌",gel:"⋛",geq:"≥",geqq:"≧",geqslant:"⩾",ges:"⩾",gescc:"⪩",gesdot:"⪀",gesdoto:"⪂",gesdotol:"⪄",gesl:"⋛︀",gesles:"⪔",Gfr:"𝔊",gfr:"𝔤",Gg:"⋙",gg:"≫",ggg:"⋙",gimel:"ℷ",GJcy:"Ѓ",gjcy:"ѓ",gl:"≷",gla:"⪥",glE:"⪒",glj:"⪤",gnap:"⪊",gnapprox:"⪊",gnE:"≩",gne:"⪈",gneq:"⪈",gneqq:"≩",gnsim:"⋧",Gopf:"𝔾",gopf:"𝕘",grave:"`",GreaterEqual:"≥",GreaterEqualLess:"⋛",GreaterFullEqual:"≧",GreaterGreater:"⪢",GreaterLess:"≷",GreaterSlantEqual:"⩾",GreaterTilde:"≳",Gscr:"𝒢",gscr:"ℊ",gsim:"≳",gsime:"⪎",gsiml:"⪐",Gt:"≫",GT:">",gt:">",gtcc:"⪧",gtcir:"⩺",gtdot:"⋗",gtlPar:"⦕",gtquest:"⩼",gtrapprox:"⪆",gtrarr:"⥸",gtrdot:"⋗",gtreqless:"⋛",gtreqqless:"⪌",gtrless:"≷",gtrsim:"≳",gvertneqq:"≩︀",gvnE:"≩︀",Hacek:"ˇ",hairsp:" ",half:"½",hamilt:"ℋ",HARDcy:"Ъ",hardcy:"ъ",hArr:"⇔",harr:"↔",harrcir:"⥈",harrw:"↭",Hat:"^",hbar:"ℏ",Hcirc:"Ĥ",hcirc:"ĥ",hearts:"♥",heartsuit:"♥",hellip:"…",hercon:"⊹",Hfr:"ℌ",hfr:"𝔥",HilbertSpace:"ℋ",hksearow:"⤥",hkswarow:"⤦",hoarr:"⇿",homtht:"∻",hookleftarrow:"↩",hookrightarrow:"↪",Hopf:"ℍ",hopf:"𝕙",horbar:"―",HorizontalLine:"─",Hscr:"ℋ",hscr:"𝒽",hslash:"ℏ",Hstrok:"Ħ",hstrok:"ħ",HumpDownHump:"≎",HumpEqual:"≏",hybull:"⁃",hyphen:"‐",Iacute:"Í",iacute:"í",ic:"⁣",Icirc:"Î",icirc:"î",Icy:"И",icy:"и",Idot:"İ",IEcy:"Е",iecy:"е",iexcl:"¡",iff:"⇔",Ifr:"ℑ",ifr:"𝔦",Igrave:"Ì",igrave:"ì",ii:"ⅈ",iiiint:"⨌",iiint:"∭",iinfin:"⧜",iiota:"℩",IJlig:"IJ",ijlig:"ij",Im:"ℑ",Imacr:"Ī",imacr:"ī",image:"ℑ",ImaginaryI:"ⅈ",imagline:"ℐ",imagpart:"ℑ",imath:"ı",imof:"⊷",imped:"Ƶ",Implies:"⇒",in:"∈",incare:"℅",infin:"∞",infintie:"⧝",inodot:"ı",Int:"∬",int:"∫",intcal:"⊺",integers:"ℤ",Integral:"∫",intercal:"⊺",Intersection:"⋂",intlarhk:"⨗",intprod:"⨼",InvisibleComma:"⁣",InvisibleTimes:"⁢",IOcy:"Ё",iocy:"ё",Iogon:"Į",iogon:"į",Iopf:"𝕀",iopf:"𝕚",Iota:"Ι",iota:"ι",iprod:"⨼",iquest:"¿",Iscr:"ℐ",iscr:"𝒾",isin:"∈",isindot:"⋵",isinE:"⋹",isins:"⋴",isinsv:"⋳",isinv:"∈",it:"⁢",Itilde:"Ĩ",itilde:"ĩ",Iukcy:"І",iukcy:"і",Iuml:"Ï",iuml:"ï",Jcirc:"Ĵ",jcirc:"ĵ",Jcy:"Й",jcy:"й",Jfr:"𝔍",jfr:"𝔧",jmath:"ȷ",Jopf:"𝕁",jopf:"𝕛",Jscr:"𝒥",jscr:"𝒿",Jsercy:"Ј",jsercy:"ј",Jukcy:"Є",jukcy:"є",Kappa:"Κ",kappa:"κ",kappav:"ϰ",Kcedil:"Ķ",kcedil:"ķ",Kcy:"К",kcy:"к",Kfr:"𝔎",kfr:"𝔨",kgreen:"ĸ",KHcy:"Х",khcy:"х",KJcy:"Ќ",kjcy:"ќ",Kopf:"𝕂",kopf:"𝕜",Kscr:"𝒦",kscr:"𝓀",lAarr:"⇚",Lacute:"Ĺ",lacute:"ĺ",laemptyv:"⦴",lagran:"ℒ",Lambda:"Λ",lambda:"λ",Lang:"⟪",lang:"⟨",langd:"⦑",langle:"⟨",lap:"⪅",Laplacetrf:"ℒ",laquo:"«",Larr:"↞",lArr:"⇐",larr:"←",larrb:"⇤",larrbfs:"⤟",larrfs:"⤝",larrhk:"↩",larrlp:"↫",larrpl:"⤹",larrsim:"⥳",larrtl:"↢",lat:"⪫",lAtail:"⤛",latail:"⤙",late:"⪭",lates:"⪭︀",lBarr:"⤎",lbarr:"⤌",lbbrk:"❲",lbrace:"{",lbrack:"[",lbrke:"⦋",lbrksld:"⦏",lbrkslu:"⦍",Lcaron:"Ľ",lcaron:"ľ",Lcedil:"Ļ",lcedil:"ļ",lceil:"⌈",lcub:"{",Lcy:"Л",lcy:"л",ldca:"⤶",ldquo:"“",ldquor:"„",ldrdhar:"⥧",ldrushar:"⥋",ldsh:"↲",lE:"≦",le:"≤",LeftAngleBracket:"⟨",LeftArrow:"←",Leftarrow:"⇐",leftarrow:"←",LeftArrowBar:"⇤",LeftArrowRightArrow:"⇆",leftarrowtail:"↢",LeftCeiling:"⌈",LeftDoubleBracket:"⟦",LeftDownTeeVector:"⥡",LeftDownVector:"⇃",LeftDownVectorBar:"⥙",LeftFloor:"⌊",leftharpoondown:"↽",leftharpoonup:"↼",leftleftarrows:"⇇",LeftRightArrow:"↔",Leftrightarrow:"⇔",leftrightarrow:"↔",leftrightarrows:"⇆",leftrightharpoons:"⇋",leftrightsquigarrow:"↭",LeftRightVector:"⥎",LeftTee:"⊣",LeftTeeArrow:"↤",LeftTeeVector:"⥚",leftthreetimes:"⋋",LeftTriangle:"⊲",LeftTriangleBar:"⧏",LeftTriangleEqual:"⊴",LeftUpDownVector:"⥑",LeftUpTeeVector:"⥠",LeftUpVector:"↿",LeftUpVectorBar:"⥘",LeftVector:"↼",LeftVectorBar:"⥒",lEg:"⪋",leg:"⋚",leq:"≤",leqq:"≦",leqslant:"⩽",les:"⩽",lescc:"⪨",lesdot:"⩿",lesdoto:"⪁",lesdotor:"⪃",lesg:"⋚︀",lesges:"⪓",lessapprox:"⪅",lessdot:"⋖",lesseqgtr:"⋚",lesseqqgtr:"⪋",LessEqualGreater:"⋚",LessFullEqual:"≦",LessGreater:"≶",lessgtr:"≶",LessLess:"⪡",lesssim:"≲",LessSlantEqual:"⩽",LessTilde:"≲",lfisht:"⥼",lfloor:"⌊",Lfr:"𝔏",lfr:"𝔩",lg:"≶",lgE:"⪑",lHar:"⥢",lhard:"↽",lharu:"↼",lharul:"⥪",lhblk:"▄",LJcy:"Љ",ljcy:"љ",Ll:"⋘",ll:"≪",llarr:"⇇",llcorner:"⌞",Lleftarrow:"⇚",llhard:"⥫",lltri:"◺",Lmidot:"Ŀ",lmidot:"ŀ",lmoust:"⎰",lmoustache:"⎰",lnap:"⪉",lnapprox:"⪉",lnE:"≨",lne:"⪇",lneq:"⪇",lneqq:"≨",lnsim:"⋦",loang:"⟬",loarr:"⇽",lobrk:"⟦",LongLeftArrow:"⟵",Longleftarrow:"⟸",longleftarrow:"⟵",LongLeftRightArrow:"⟷",Longleftrightarrow:"⟺",longleftrightarrow:"⟷",longmapsto:"⟼",LongRightArrow:"⟶",Longrightarrow:"⟹",longrightarrow:"⟶",looparrowleft:"↫",looparrowright:"↬",lopar:"⦅",Lopf:"𝕃",lopf:"𝕝",loplus:"⨭",lotimes:"⨴",lowast:"∗",lowbar:"_",LowerLeftArrow:"↙",LowerRightArrow:"↘",loz:"◊",lozenge:"◊",lozf:"⧫",lpar:"(",lparlt:"⦓",lrarr:"⇆",lrcorner:"⌟",lrhar:"⇋",lrhard:"⥭",lrm:"‎",lrtri:"⊿",lsaquo:"‹",Lscr:"ℒ",lscr:"𝓁",Lsh:"↰",lsh:"↰",lsim:"≲",lsime:"⪍",lsimg:"⪏",lsqb:"[",lsquo:"‘",lsquor:"‚",Lstrok:"Ł",lstrok:"ł",Lt:"≪",LT:"<",lt:"<",ltcc:"⪦",ltcir:"⩹",ltdot:"⋖",lthree:"⋋",ltimes:"⋉",ltlarr:"⥶",ltquest:"⩻",ltri:"◃",ltrie:"⊴",ltrif:"◂",ltrPar:"⦖",lurdshar:"⥊",luruhar:"⥦",lvertneqq:"≨︀",lvnE:"≨︀",macr:"¯",male:"♂",malt:"✠",maltese:"✠",Map:"⤅",map:"↦",mapsto:"↦",mapstodown:"↧",mapstoleft:"↤",mapstoup:"↥",marker:"▮",mcomma:"⨩",Mcy:"М",mcy:"м",mdash:"—",mDDot:"∺",measuredangle:"∡",MediumSpace:" ",Mellintrf:"ℳ",Mfr:"𝔐",mfr:"𝔪",mho:"℧",micro:"µ",mid:"∣",midast:"*",midcir:"⫰",middot:"·",minus:"−",minusb:"⊟",minusd:"∸",minusdu:"⨪",MinusPlus:"∓",mlcp:"⫛",mldr:"…",mnplus:"∓",models:"⊧",Mopf:"𝕄",mopf:"𝕞",mp:"∓",Mscr:"ℳ",mscr:"𝓂",mstpos:"∾",Mu:"Μ",mu:"μ",multimap:"⊸",mumap:"⊸",nabla:"∇",Nacute:"Ń",nacute:"ń",nang:"∠⃒",nap:"≉",napE:"⩰̸",napid:"≋̸",napos:"ʼn",napprox:"≉",natur:"♮",natural:"♮",naturals:"ℕ",nbsp:" ",nbump:"≎̸",nbumpe:"≏̸",ncap:"⩃",Ncaron:"Ň",ncaron:"ň",Ncedil:"Ņ",ncedil:"ņ",ncong:"≇",ncongdot:"⩭̸",ncup:"⩂",Ncy:"Н",ncy:"н",ndash:"–",ne:"≠",nearhk:"⤤",neArr:"⇗",nearr:"↗",nearrow:"↗",nedot:"≐̸",NegativeMediumSpace:"​",NegativeThickSpace:"​",NegativeThinSpace:"​",NegativeVeryThinSpace:"​",nequiv:"≢",nesear:"⤨",nesim:"≂̸",NestedGreaterGreater:"≫",NestedLessLess:"≪",NewLine:` `,nexist:"∄",nexists:"∄",Nfr:"𝔑",nfr:"𝔫",ngE:"≧̸",nge:"≱",ngeq:"≱",ngeqq:"≧̸",ngeqslant:"⩾̸",nges:"⩾̸",nGg:"⋙̸",ngsim:"≵",nGt:"≫⃒",ngt:"≯",ngtr:"≯",nGtv:"≫̸",nhArr:"⇎",nharr:"↮",nhpar:"⫲",ni:"∋",nis:"⋼",nisd:"⋺",niv:"∋",NJcy:"Њ",njcy:"њ",nlArr:"⇍",nlarr:"↚",nldr:"‥",nlE:"≦̸",nle:"≰",nLeftarrow:"⇍",nleftarrow:"↚",nLeftrightarrow:"⇎",nleftrightarrow:"↮",nleq:"≰",nleqq:"≦̸",nleqslant:"⩽̸",nles:"⩽̸",nless:"≮",nLl:"⋘̸",nlsim:"≴",nLt:"≪⃒",nlt:"≮",nltri:"⋪",nltrie:"⋬",nLtv:"≪̸",nmid:"∤",NoBreak:"⁠",NonBreakingSpace:" ",Nopf:"ℕ",nopf:"𝕟",Not:"⫬",not:"¬",NotCongruent:"≢",NotCupCap:"≭",NotDoubleVerticalBar:"∦",NotElement:"∉",NotEqual:"≠",NotEqualTilde:"≂̸",NotExists:"∄",NotGreater:"≯",NotGreaterEqual:"≱",NotGreaterFullEqual:"≧̸",NotGreaterGreater:"≫̸",NotGreaterLess:"≹",NotGreaterSlantEqual:"⩾̸",NotGreaterTilde:"≵",NotHumpDownHump:"≎̸",NotHumpEqual:"≏̸",notin:"∉",notindot:"⋵̸",notinE:"⋹̸",notinva:"∉",notinvb:"⋷",notinvc:"⋶",NotLeftTriangle:"⋪",NotLeftTriangleBar:"⧏̸",NotLeftTriangleEqual:"⋬",NotLess:"≮",NotLessEqual:"≰",NotLessGreater:"≸",NotLessLess:"≪̸",NotLessSlantEqual:"⩽̸",NotLessTilde:"≴",NotNestedGreaterGreater:"⪢̸",NotNestedLessLess:"⪡̸",notni:"∌",notniva:"∌",notnivb:"⋾",notnivc:"⋽",NotPrecedes:"⊀",NotPrecedesEqual:"⪯̸",NotPrecedesSlantEqual:"⋠",NotReverseElement:"∌",NotRightTriangle:"⋫",NotRightTriangleBar:"⧐̸",NotRightTriangleEqual:"⋭",NotSquareSubset:"⊏̸",NotSquareSubsetEqual:"⋢",NotSquareSuperset:"⊐̸",NotSquareSupersetEqual:"⋣",NotSubset:"⊂⃒",NotSubsetEqual:"⊈",NotSucceeds:"⊁",NotSucceedsEqual:"⪰̸",NotSucceedsSlantEqual:"⋡",NotSucceedsTilde:"≿̸",NotSuperset:"⊃⃒",NotSupersetEqual:"⊉",NotTilde:"≁",NotTildeEqual:"≄",NotTildeFullEqual:"≇",NotTildeTilde:"≉",NotVerticalBar:"∤",npar:"∦",nparallel:"∦",nparsl:"⫽⃥",npart:"∂̸",npolint:"⨔",npr:"⊀",nprcue:"⋠",npre:"⪯̸",nprec:"⊀",npreceq:"⪯̸",nrArr:"⇏",nrarr:"↛",nrarrc:"⤳̸",nrarrw:"↝̸",nRightarrow:"⇏",nrightarrow:"↛",nrtri:"⋫",nrtrie:"⋭",nsc:"⊁",nsccue:"⋡",nsce:"⪰̸",Nscr:"𝒩",nscr:"𝓃",nshortmid:"∤",nshortparallel:"∦",nsim:"≁",nsime:"≄",nsimeq:"≄",nsmid:"∤",nspar:"∦",nsqsube:"⋢",nsqsupe:"⋣",nsub:"⊄",nsubE:"⫅̸",nsube:"⊈",nsubset:"⊂⃒",nsubseteq:"⊈",nsubseteqq:"⫅̸",nsucc:"⊁",nsucceq:"⪰̸",nsup:"⊅",nsupE:"⫆̸",nsupe:"⊉",nsupset:"⊃⃒",nsupseteq:"⊉",nsupseteqq:"⫆̸",ntgl:"≹",Ntilde:"Ñ",ntilde:"ñ",ntlg:"≸",ntriangleleft:"⋪",ntrianglelefteq:"⋬",ntriangleright:"⋫",ntrianglerighteq:"⋭",Nu:"Ν",nu:"ν",num:"#",numero:"№",numsp:" ",nvap:"≍⃒",nVDash:"⊯",nVdash:"⊮",nvDash:"⊭",nvdash:"⊬",nvge:"≥⃒",nvgt:">⃒",nvHarr:"⤄",nvinfin:"⧞",nvlArr:"⤂",nvle:"≤⃒",nvlt:"<⃒",nvltrie:"⊴⃒",nvrArr:"⤃",nvrtrie:"⊵⃒",nvsim:"∼⃒",nwarhk:"⤣",nwArr:"⇖",nwarr:"↖",nwarrow:"↖",nwnear:"⤧",Oacute:"Ó",oacute:"ó",oast:"⊛",ocir:"⊚",Ocirc:"Ô",ocirc:"ô",Ocy:"О",ocy:"о",odash:"⊝",Odblac:"Ő",odblac:"ő",odiv:"⨸",odot:"⊙",odsold:"⦼",OElig:"Œ",oelig:"œ",ofcir:"⦿",Ofr:"𝔒",ofr:"𝔬",ogon:"˛",Ograve:"Ò",ograve:"ò",ogt:"⧁",ohbar:"⦵",ohm:"Ω",oint:"∮",olarr:"↺",olcir:"⦾",olcross:"⦻",oline:"‾",olt:"⧀",Omacr:"Ō",omacr:"ō",Omega:"Ω",omega:"ω",Omicron:"Ο",omicron:"ο",omid:"⦶",ominus:"⊖",Oopf:"𝕆",oopf:"𝕠",opar:"⦷",OpenCurlyDoubleQuote:"“",OpenCurlyQuote:"‘",operp:"⦹",oplus:"⊕",Or:"⩔",or:"∨",orarr:"↻",ord:"⩝",order:"ℴ",orderof:"ℴ",ordf:"ª",ordm:"º",origof:"⊶",oror:"⩖",orslope:"⩗",orv:"⩛",oS:"Ⓢ",Oscr:"𝒪",oscr:"ℴ",Oslash:"Ø",oslash:"ø",osol:"⊘",Otilde:"Õ",otilde:"õ",Otimes:"⨷",otimes:"⊗",otimesas:"⨶",Ouml:"Ö",ouml:"ö",ovbar:"⌽",OverBar:"‾",OverBrace:"⏞",OverBracket:"⎴",OverParenthesis:"⏜",par:"∥",para:"¶",parallel:"∥",parsim:"⫳",parsl:"⫽",part:"∂",PartialD:"∂",Pcy:"П",pcy:"п",percnt:"%",period:".",permil:"‰",perp:"⊥",pertenk:"‱",Pfr:"𝔓",pfr:"𝔭",Phi:"Φ",phi:"φ",phiv:"ϕ",phmmat:"ℳ",phone:"☎",Pi:"Π",pi:"π",pitchfork:"⋔",piv:"ϖ",planck:"ℏ",planckh:"ℎ",plankv:"ℏ",plus:"+",plusacir:"⨣",plusb:"⊞",pluscir:"⨢",plusdo:"∔",plusdu:"⨥",pluse:"⩲",PlusMinus:"±",plusmn:"±",plussim:"⨦",plustwo:"⨧",pm:"±",Poincareplane:"ℌ",pointint:"⨕",Popf:"ℙ",popf:"𝕡",pound:"£",Pr:"⪻",pr:"≺",prap:"⪷",prcue:"≼",prE:"⪳",pre:"⪯",prec:"≺",precapprox:"⪷",preccurlyeq:"≼",Precedes:"≺",PrecedesEqual:"⪯",PrecedesSlantEqual:"≼",PrecedesTilde:"≾",preceq:"⪯",precnapprox:"⪹",precneqq:"⪵",precnsim:"⋨",precsim:"≾",Prime:"″",prime:"′",primes:"ℙ",prnap:"⪹",prnE:"⪵",prnsim:"⋨",prod:"∏",Product:"∏",profalar:"⌮",profline:"⌒",profsurf:"⌓",prop:"∝",Proportion:"∷",Proportional:"∝",propto:"∝",prsim:"≾",prurel:"⊰",Pscr:"𝒫",pscr:"𝓅",Psi:"Ψ",psi:"ψ",puncsp:" ",Qfr:"𝔔",qfr:"𝔮",qint:"⨌",Qopf:"ℚ",qopf:"𝕢",qprime:"⁗",Qscr:"𝒬",qscr:"𝓆",quaternions:"ℍ",quatint:"⨖",quest:"?",questeq:"≟",QUOT:'"',quot:'"',rAarr:"⇛",race:"∽̱",Racute:"Ŕ",racute:"ŕ",radic:"√",raemptyv:"⦳",Rang:"⟫",rang:"⟩",rangd:"⦒",range:"⦥",rangle:"⟩",raquo:"»",Rarr:"↠",rArr:"⇒",rarr:"→",rarrap:"⥵",rarrb:"⇥",rarrbfs:"⤠",rarrc:"⤳",rarrfs:"⤞",rarrhk:"↪",rarrlp:"↬",rarrpl:"⥅",rarrsim:"⥴",Rarrtl:"⤖",rarrtl:"↣",rarrw:"↝",rAtail:"⤜",ratail:"⤚",ratio:"∶",rationals:"ℚ",RBarr:"⤐",rBarr:"⤏",rbarr:"⤍",rbbrk:"❳",rbrace:"}",rbrack:"]",rbrke:"⦌",rbrksld:"⦎",rbrkslu:"⦐",Rcaron:"Ř",rcaron:"ř",Rcedil:"Ŗ",rcedil:"ŗ",rceil:"⌉",rcub:"}",Rcy:"Р",rcy:"р",rdca:"⤷",rdldhar:"⥩",rdquo:"”",rdquor:"”",rdsh:"↳",Re:"ℜ",real:"ℜ",realine:"ℛ",realpart:"ℜ",reals:"ℝ",rect:"▭",REG:"®",reg:"®",ReverseElement:"∋",ReverseEquilibrium:"⇋",ReverseUpEquilibrium:"⥯",rfisht:"⥽",rfloor:"⌋",Rfr:"ℜ",rfr:"𝔯",rHar:"⥤",rhard:"⇁",rharu:"⇀",rharul:"⥬",Rho:"Ρ",rho:"ρ",rhov:"ϱ",RightAngleBracket:"⟩",RightArrow:"→",Rightarrow:"⇒",rightarrow:"→",RightArrowBar:"⇥",RightArrowLeftArrow:"⇄",rightarrowtail:"↣",RightCeiling:"⌉",RightDoubleBracket:"⟧",RightDownTeeVector:"⥝",RightDownVector:"⇂",RightDownVectorBar:"⥕",RightFloor:"⌋",rightharpoondown:"⇁",rightharpoonup:"⇀",rightleftarrows:"⇄",rightleftharpoons:"⇌",rightrightarrows:"⇉",rightsquigarrow:"↝",RightTee:"⊢",RightTeeArrow:"↦",RightTeeVector:"⥛",rightthreetimes:"⋌",RightTriangle:"⊳",RightTriangleBar:"⧐",RightTriangleEqual:"⊵",RightUpDownVector:"⥏",RightUpTeeVector:"⥜",RightUpVector:"↾",RightUpVectorBar:"⥔",RightVector:"⇀",RightVectorBar:"⥓",ring:"˚",risingdotseq:"≓",rlarr:"⇄",rlhar:"⇌",rlm:"‏",rmoust:"⎱",rmoustache:"⎱",rnmid:"⫮",roang:"⟭",roarr:"⇾",robrk:"⟧",ropar:"⦆",Ropf:"ℝ",ropf:"𝕣",roplus:"⨮",rotimes:"⨵",RoundImplies:"⥰",rpar:")",rpargt:"⦔",rppolint:"⨒",rrarr:"⇉",Rrightarrow:"⇛",rsaquo:"›",Rscr:"ℛ",rscr:"𝓇",Rsh:"↱",rsh:"↱",rsqb:"]",rsquo:"’",rsquor:"’",rthree:"⋌",rtimes:"⋊",rtri:"▹",rtrie:"⊵",rtrif:"▸",rtriltri:"⧎",RuleDelayed:"⧴",ruluhar:"⥨",rx:"℞",Sacute:"Ś",sacute:"ś",sbquo:"‚",Sc:"⪼",sc:"≻",scap:"⪸",Scaron:"Š",scaron:"š",sccue:"≽",scE:"⪴",sce:"⪰",Scedil:"Ş",scedil:"ş",Scirc:"Ŝ",scirc:"ŝ",scnap:"⪺",scnE:"⪶",scnsim:"⋩",scpolint:"⨓",scsim:"≿",Scy:"С",scy:"с",sdot:"⋅",sdotb:"⊡",sdote:"⩦",searhk:"⤥",seArr:"⇘",searr:"↘",searrow:"↘",sect:"§",semi:";",seswar:"⤩",setminus:"∖",setmn:"∖",sext:"✶",Sfr:"𝔖",sfr:"𝔰",sfrown:"⌢",sharp:"♯",SHCHcy:"Щ",shchcy:"щ",SHcy:"Ш",shcy:"ш",ShortDownArrow:"↓",ShortLeftArrow:"←",shortmid:"∣",shortparallel:"∥",ShortRightArrow:"→",ShortUpArrow:"↑",shy:"­",Sigma:"Σ",sigma:"σ",sigmaf:"ς",sigmav:"ς",sim:"∼",simdot:"⩪",sime:"≃",simeq:"≃",simg:"⪞",simgE:"⪠",siml:"⪝",simlE:"⪟",simne:"≆",simplus:"⨤",simrarr:"⥲",slarr:"←",SmallCircle:"∘",smallsetminus:"∖",smashp:"⨳",smeparsl:"⧤",smid:"∣",smile:"⌣",smt:"⪪",smte:"⪬",smtes:"⪬︀",SOFTcy:"Ь",softcy:"ь",sol:"/",solb:"⧄",solbar:"⌿",Sopf:"𝕊",sopf:"𝕤",spades:"♠",spadesuit:"♠",spar:"∥",sqcap:"⊓",sqcaps:"⊓︀",sqcup:"⊔",sqcups:"⊔︀",Sqrt:"√",sqsub:"⊏",sqsube:"⊑",sqsubset:"⊏",sqsubseteq:"⊑",sqsup:"⊐",sqsupe:"⊒",sqsupset:"⊐",sqsupseteq:"⊒",squ:"□",Square:"□",square:"□",SquareIntersection:"⊓",SquareSubset:"⊏",SquareSubsetEqual:"⊑",SquareSuperset:"⊐",SquareSupersetEqual:"⊒",SquareUnion:"⊔",squarf:"▪",squf:"▪",srarr:"→",Sscr:"𝒮",sscr:"𝓈",ssetmn:"∖",ssmile:"⌣",sstarf:"⋆",Star:"⋆",star:"☆",starf:"★",straightepsilon:"ϵ",straightphi:"ϕ",strns:"¯",Sub:"⋐",sub:"⊂",subdot:"⪽",subE:"⫅",sube:"⊆",subedot:"⫃",submult:"⫁",subnE:"⫋",subne:"⊊",subplus:"⪿",subrarr:"⥹",Subset:"⋐",subset:"⊂",subseteq:"⊆",subseteqq:"⫅",SubsetEqual:"⊆",subsetneq:"⊊",subsetneqq:"⫋",subsim:"⫇",subsub:"⫕",subsup:"⫓",succ:"≻",succapprox:"⪸",succcurlyeq:"≽",Succeeds:"≻",SucceedsEqual:"⪰",SucceedsSlantEqual:"≽",SucceedsTilde:"≿",succeq:"⪰",succnapprox:"⪺",succneqq:"⪶",succnsim:"⋩",succsim:"≿",SuchThat:"∋",Sum:"∑",sum:"∑",sung:"♪",Sup:"⋑",sup:"⊃",sup1:"¹",sup2:"²",sup3:"³",supdot:"⪾",supdsub:"⫘",supE:"⫆",supe:"⊇",supedot:"⫄",Superset:"⊃",SupersetEqual:"⊇",suphsol:"⟉",suphsub:"⫗",suplarr:"⥻",supmult:"⫂",supnE:"⫌",supne:"⊋",supplus:"⫀",Supset:"⋑",supset:"⊃",supseteq:"⊇",supseteqq:"⫆",supsetneq:"⊋",supsetneqq:"⫌",supsim:"⫈",supsub:"⫔",supsup:"⫖",swarhk:"⤦",swArr:"⇙",swarr:"↙",swarrow:"↙",swnwar:"⤪",szlig:"ß",Tab:" ",target:"⌖",Tau:"Τ",tau:"τ",tbrk:"⎴",Tcaron:"Ť",tcaron:"ť",Tcedil:"Ţ",tcedil:"ţ",Tcy:"Т",tcy:"т",tdot:"⃛",telrec:"⌕",Tfr:"𝔗",tfr:"𝔱",there4:"∴",Therefore:"∴",therefore:"∴",Theta:"Θ",theta:"θ",thetasym:"ϑ",thetav:"ϑ",thickapprox:"≈",thicksim:"∼",ThickSpace:"  ",thinsp:" ",ThinSpace:" ",thkap:"≈",thksim:"∼",THORN:"Þ",thorn:"þ",Tilde:"∼",tilde:"˜",TildeEqual:"≃",TildeFullEqual:"≅",TildeTilde:"≈",times:"×",timesb:"⊠",timesbar:"⨱",timesd:"⨰",tint:"∭",toea:"⤨",top:"⊤",topbot:"⌶",topcir:"⫱",Topf:"𝕋",topf:"𝕥",topfork:"⫚",tosa:"⤩",tprime:"‴",TRADE:"™",trade:"™",triangle:"▵",triangledown:"▿",triangleleft:"◃",trianglelefteq:"⊴",triangleq:"≜",triangleright:"▹",trianglerighteq:"⊵",tridot:"◬",trie:"≜",triminus:"⨺",TripleDot:"⃛",triplus:"⨹",trisb:"⧍",tritime:"⨻",trpezium:"⏢",Tscr:"𝒯",tscr:"𝓉",TScy:"Ц",tscy:"ц",TSHcy:"Ћ",tshcy:"ћ",Tstrok:"Ŧ",tstrok:"ŧ",twixt:"≬",twoheadleftarrow:"↞",twoheadrightarrow:"↠",Uacute:"Ú",uacute:"ú",Uarr:"↟",uArr:"⇑",uarr:"↑",Uarrocir:"⥉",Ubrcy:"Ў",ubrcy:"ў",Ubreve:"Ŭ",ubreve:"ŭ",Ucirc:"Û",ucirc:"û",Ucy:"У",ucy:"у",udarr:"⇅",Udblac:"Ű",udblac:"ű",udhar:"⥮",ufisht:"⥾",Ufr:"𝔘",ufr:"𝔲",Ugrave:"Ù",ugrave:"ù",uHar:"⥣",uharl:"↿",uharr:"↾",uhblk:"▀",ulcorn:"⌜",ulcorner:"⌜",ulcrop:"⌏",ultri:"◸",Umacr:"Ū",umacr:"ū",uml:"¨",UnderBar:"_",UnderBrace:"⏟",UnderBracket:"⎵",UnderParenthesis:"⏝",Union:"⋃",UnionPlus:"⊎",Uogon:"Ų",uogon:"ų",Uopf:"𝕌",uopf:"𝕦",UpArrow:"↑",Uparrow:"⇑",uparrow:"↑",UpArrowBar:"⤒",UpArrowDownArrow:"⇅",UpDownArrow:"↕",Updownarrow:"⇕",updownarrow:"↕",UpEquilibrium:"⥮",upharpoonleft:"↿",upharpoonright:"↾",uplus:"⊎",UpperLeftArrow:"↖",UpperRightArrow:"↗",Upsi:"ϒ",upsi:"υ",upsih:"ϒ",Upsilon:"Υ",upsilon:"υ",UpTee:"⊥",UpTeeArrow:"↥",upuparrows:"⇈",urcorn:"⌝",urcorner:"⌝",urcrop:"⌎",Uring:"Ů",uring:"ů",urtri:"◹",Uscr:"𝒰",uscr:"𝓊",utdot:"⋰",Utilde:"Ũ",utilde:"ũ",utri:"▵",utrif:"▴",uuarr:"⇈",Uuml:"Ü",uuml:"ü",uwangle:"⦧",vangrt:"⦜",varepsilon:"ϵ",varkappa:"ϰ",varnothing:"∅",varphi:"ϕ",varpi:"ϖ",varpropto:"∝",vArr:"⇕",varr:"↕",varrho:"ϱ",varsigma:"ς",varsubsetneq:"⊊︀",varsubsetneqq:"⫋︀",varsupsetneq:"⊋︀",varsupsetneqq:"⫌︀",vartheta:"ϑ",vartriangleleft:"⊲",vartriangleright:"⊳",Vbar:"⫫",vBar:"⫨",vBarv:"⫩",Vcy:"В",vcy:"в",VDash:"⊫",Vdash:"⊩",vDash:"⊨",vdash:"⊢",Vdashl:"⫦",Vee:"⋁",vee:"∨",veebar:"⊻",veeeq:"≚",vellip:"⋮",Verbar:"‖",verbar:"|",Vert:"‖",vert:"|",VerticalBar:"∣",VerticalLine:"|",VerticalSeparator:"❘",VerticalTilde:"≀",VeryThinSpace:" ",Vfr:"𝔙",vfr:"𝔳",vltri:"⊲",vnsub:"⊂⃒",vnsup:"⊃⃒",Vopf:"𝕍",vopf:"𝕧",vprop:"∝",vrtri:"⊳",Vscr:"𝒱",vscr:"𝓋",vsubnE:"⫋︀",vsubne:"⊊︀",vsupnE:"⫌︀",vsupne:"⊋︀",Vvdash:"⊪",vzigzag:"⦚",Wcirc:"Ŵ",wcirc:"ŵ",wedbar:"⩟",Wedge:"⋀",wedge:"∧",wedgeq:"≙",weierp:"℘",Wfr:"𝔚",wfr:"𝔴",Wopf:"𝕎",wopf:"𝕨",wp:"℘",wr:"≀",wreath:"≀",Wscr:"𝒲",wscr:"𝓌",xcap:"⋂",xcirc:"◯",xcup:"⋃",xdtri:"▽",Xfr:"𝔛",xfr:"𝔵",xhArr:"⟺",xharr:"⟷",Xi:"Ξ",xi:"ξ",xlArr:"⟸",xlarr:"⟵",xmap:"⟼",xnis:"⋻",xodot:"⨀",Xopf:"𝕏",xopf:"𝕩",xoplus:"⨁",xotime:"⨂",xrArr:"⟹",xrarr:"⟶",Xscr:"𝒳",xscr:"𝓍",xsqcup:"⨆",xuplus:"⨄",xutri:"△",xvee:"⋁",xwedge:"⋀",Yacute:"Ý",yacute:"ý",YAcy:"Я",yacy:"я",Ycirc:"Ŷ",ycirc:"ŷ",Ycy:"Ы",ycy:"ы",yen:"¥",Yfr:"𝔜",yfr:"𝔶",YIcy:"Ї",yicy:"ї",Yopf:"𝕐",yopf:"𝕪",Yscr:"𝒴",yscr:"𝓎",YUcy:"Ю",yucy:"ю",Yuml:"Ÿ",yuml:"ÿ",Zacute:"Ź",zacute:"ź",Zcaron:"Ž",zcaron:"ž",Zcy:"З",zcy:"з",Zdot:"Ż",zdot:"ż",zeetrf:"ℨ",ZeroWidthSpace:"​",Zeta:"Ζ",zeta:"ζ",Zfr:"ℨ",zfr:"𝔷",ZHcy:"Ж",zhcy:"ж",zigrarr:"⇝",Zopf:"ℤ",zopf:"𝕫",Zscr:"𝒵",zscr:"𝓏",zwj:"‍",zwnj:"‌"}),s.entityMap=s.HTML_ENTITIES},"./node_modules/@xmldom/xmldom/lib/index.js":function(r,s,o){var a=o("./node_modules/@xmldom/xmldom/lib/dom.js");s.DOMImplementation=a.DOMImplementation,s.XMLSerializer=a.XMLSerializer,s.DOMParser=o("./node_modules/@xmldom/xmldom/lib/dom-parser.js").DOMParser},"./node_modules/@xmldom/xmldom/lib/sax.js":function(r,s,o){var a=o("./node_modules/@xmldom/xmldom/lib/conventions.js").NAMESPACE,l=/[A-Z_a-z\xC0-\xD6\xD8-\xF6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]/,c=new RegExp("[\\-\\.0-9"+l.source.slice(1,-1)+"\\u00B7\\u0300-\\u036F\\u203F-\\u2040]"),u=new RegExp("^"+l.source+c.source+"*(?::"+l.source+c.source+"*)?$"),m=0,g=1,d=2,y=3,A=4,b=5,S=6,E=7;function x(R,Q){this.message=R,this.locator=Q,Error.captureStackTrace&&Error.captureStackTrace(this,x)}x.prototype=new Error,x.prototype.name=x.name;function C(){}C.prototype={parse:function(R,Q,_){var K=this.domBuilder;K.startDocument(),D(Q,Q={}),P(R,Q,_,K,this.errorHandler),K.endDocument()}};function P(R,Q,_,K,G){function U(he){if(he>65535){he-=65536;var Pe=55296+(he>>10),ye=56320+(he&1023);return String.fromCharCode(Pe,ye)}else return String.fromCharCode(he)}function $(he){var Pe=he.slice(1,-1);return Object.hasOwnProperty.call(_,Pe)?_[Pe]:Pe.charAt(0)==="#"?U(parseInt(Pe.substr(1).replace("x","0x"))):(G.error("entity not found:"+he),he)}function q(he){if(he>Ee){var Pe=R.substring(Ee,he).replace(/&#?\w+;/g,$);J&&W(Ee),K.characters(Pe,0,he-Ee),Ee=he}}function W(he,Pe){for(;he>=ue&&(Pe=Y.exec(R));)xe=Pe.index,ue=xe+Pe[0].length,J.lineNumber++;J.columnNumber=he-xe+1}for(var xe=0,ue=0,Y=/.*(?:\r\n?|\n)|.*$/g,J=K.locator,ce=[{currentNSMap:Q}],ge={},Ee=0;;){try{var Ie=R.indexOf("<",Ee);if(Ie<0){if(!R.substr(Ee).match(/^\s*$/)){var De=K.doc,ie=De.createTextNode(R.substr(Ee));De.appendChild(ie),K.currentElement=ie}return}switch(Ie>Ee&&q(Ie),R.charAt(Ie+1)){case"/":var oe=R.indexOf(">",Ie+3),ae=R.substring(Ie+2,oe).replace(/[ \t\n\r]+$/g,""),H=ce.pop();oe<0?(ae=R.substring(Ie+2).replace(/[\s<].*/,""),G.error("end tag name: "+ae+" is not complete:"+H.tagName),oe=Ie+1+ae.length):ae.match(/\sEe?Ee=oe:q(Math.max(Ie,Ee)+1)}}function k(R,Q){return Q.lineNumber=R.lineNumber,Q.columnNumber=R.columnNumber,Q}function I(R,Q,_,K,G,U){function $(J,ce,ge){_.attributeNames.hasOwnProperty(J)&&U.fatalError("Attribute "+J+" redefined"),_.addValue(J,ce.replace(/[\t\n\r]/g," ").replace(/&#?\w+;/g,G),ge)}for(var q,W,xe=++Q,ue=m;;){var Y=R.charAt(xe);switch(Y){case"=":if(ue===g)q=R.slice(Q,xe),ue=y;else if(ue===d)ue=y;else throw new Error("attribute equal must after attrName");break;case"'":case'"':if(ue===y||ue===g)if(ue===g&&(U.warning('attribute value must after "="'),q=R.slice(Q,xe)),Q=xe+1,xe=R.indexOf(Y,Q),xe>0)W=R.slice(Q,xe),$(q,W,Q-1),ue=b;else throw new Error("attribute value no end '"+Y+"' match");else if(ue==A)W=R.slice(Q,xe),$(q,W,Q),U.warning('attribute "'+q+'" missed start quot('+Y+")!!"),Q=xe+1,ue=b;else throw new Error('attribute value must after "="');break;case"/":switch(ue){case m:_.setTagName(R.slice(Q,xe));case b:case S:case E:ue=E,_.closed=!0;case A:case g:break;case d:_.closed=!0;break;default:throw new Error("attribute invalid close char('/')")}break;case"":return U.error("unexpected end of input"),ue==m&&_.setTagName(R.slice(Q,xe)),xe;case">":switch(ue){case m:_.setTagName(R.slice(Q,xe));case b:case S:case E:break;case A:case g:W=R.slice(Q,xe),W.slice(-1)==="/"&&(_.closed=!0,W=W.slice(0,-1));case d:ue===d&&(W=q),ue==A?(U.warning('attribute "'+W+'" missed quot(")!'),$(q,W,Q)):((!a.isHTML(K[""])||!W.match(/^(?:disabled|checked|selected)$/i))&&U.warning('attribute "'+W+'" missed value!! "'+W+'" instead!!'),$(W,W,Q));break;case y:throw new Error("attribute value missed!!")}return xe;case"€":Y=" ";default:if(Y<=" ")switch(ue){case m:_.setTagName(R.slice(Q,xe)),ue=S;break;case g:q=R.slice(Q,xe),ue=d;break;case A:var W=R.slice(Q,xe);U.warning('attribute "'+W+'" missed quot(")!!'),$(q,W,Q);case b:ue=S;break}else switch(ue){case d:_.tagName,(!a.isHTML(K[""])||!q.match(/^(?:disabled|checked|selected)$/i))&&U.warning('attribute "'+q+'" missed value!! "'+q+'" instead2!!'),$(q,q,Q),Q=xe,ue=g;break;case b:U.warning('attribute space is required"'+q+'"!!');case S:ue=g,Q=xe;break;case y:ue=A,Q=xe;break;case E:throw new Error("elements closed character '/' and '>' must be connected to")}}xe++}}function M(R,Q,_){for(var K=R.tagName,G=null,Y=R.length;Y--;){var U=R[Y],$=U.qName,q=U.value,J=$.indexOf(":");if(J>0)var W=U.prefix=$.slice(0,J),xe=$.slice(J+1),ue=W==="xmlns"&&xe;else xe=$,W=null,ue=$==="xmlns"&&"";U.localName=xe,ue!==!1&&(G==null&&(G={},D(_,_={})),_[ue]=G[ue]=q,U.uri=a.XMLNS,Q.startPrefixMapping(ue,q))}for(var Y=R.length;Y--;){U=R[Y];var W=U.prefix;W&&(W==="xml"&&(U.uri=a.XML),W!=="xmlns"&&(U.uri=_[W||""]))}var J=K.indexOf(":");J>0?(W=R.prefix=K.slice(0,J),xe=R.localName=K.slice(J+1)):(W=null,xe=R.localName=K);var ce=R.uri=_[W||""];if(Q.startElement(ce,xe,K,R),R.closed){if(Q.endElement(ce,xe,K),G)for(W in G)Object.prototype.hasOwnProperty.call(G,W)&&Q.endPrefixMapping(W)}else return R.currentNSMap=_,R.localNSMap=G,!0}function T(R,Q,_,K,G){if(/^(?:script|textarea)$/i.test(_)){var U=R.indexOf("",Q),$=R.substring(Q+1,U);if(/[&<]/.test($))return/^script$/i.test(_)?(G.characters($,0,$.length),U):($=$.replace(/&#?\w+;/g,K),G.characters($,0,$.length),U)}return Q+1}function F(R,Q,_,K){var G=K[_];return G==null&&(G=R.lastIndexOf(""),G",Q+4);return U>Q?(_.comment(R,Q+4,U-Q-4),U+3):(K.error("Unclosed comment"),-1)}else return-1;default:if(R.substr(Q+3,6)=="CDATA["){var U=R.indexOf("]]>",Q+9);return _.startCDATA(),_.characters(R,Q+9,U-Q-9),_.endCDATA(),U+3}var $=V(R,Q),q=$.length;if(q>1&&/!doctype/i.test($[0][0])){var W=$[1][0],xe=!1,ue=!1;q>3&&(/^public$/i.test($[2][0])?(xe=$[3][0],ue=q>4&&$[4][0]):/^system$/i.test($[2][0])&&(ue=$[3][0]));var Y=$[q-1];return _.startDTD(W,xe,ue),_.endDTD(),Y.index+Y[0].length}}return-1}function O(R,Q,_){var K=R.indexOf("?>",Q);if(K){var G=R.substring(Q,K).match(/^<\?(\S*)\s*([\s\S]*?)\s*$/);return G?(G[0].length,_.processingInstruction(G[1],G[2]),K+2):-1}return-1}function B(){this.attributeNames={}}B.prototype={setTagName:function(R){if(!u.test(R))throw new Error("invalid tagName:"+R);this.tagName=R},addValue:function(R,Q,_){if(!u.test(R))throw new Error("invalid attribute:"+R);this.attributeNames[R]=this.length,this[this.length++]={qName:R,value:Q,offset:_}},length:0,getLocalName:function(R){return this[R].localName},getLocator:function(R){return this[R].locator},getQName:function(R){return this[R].qName},getURI:function(R){return this[R].uri},getValue:function(R){return this[R].value}};function V(R,Q){var _,K=[],G=/'[^']+'|"[^"]+"|[^\s<>\/=]+=?|(\/?\s*>|<)/g;for(G.lastIndex=Q,G.exec(R);_=G.exec(R);)if(K.push(_),_[1])return K}s.XMLReader=C,s.ParseError=x},"./node_modules/process/browser.js":function(r,s){var o=r.exports={},a,l;function c(){throw new Error("setTimeout has not been defined")}function u(){throw new Error("clearTimeout has not been defined")}(function(){try{typeof setTimeout=="function"?a=setTimeout:a=c}catch(P){a=c}try{typeof clearTimeout=="function"?l=clearTimeout:l=u}catch(P){l=u}})();function m(P){if(a===setTimeout)return setTimeout(P,0);if((a===c||!a)&&setTimeout)return a=setTimeout,setTimeout(P,0);try{return a(P,0)}catch(k){try{return a.call(null,P,0)}catch(I){return a.call(this,P,0)}}}function g(P){if(l===clearTimeout)return clearTimeout(P);if((l===u||!l)&&clearTimeout)return l=clearTimeout,clearTimeout(P);try{return l(P)}catch(k){try{return l.call(null,P)}catch(I){return l.call(this,P)}}}var d=[],y=!1,A,b=-1;function S(){!y||!A||(y=!1,A.length?d=A.concat(d):b=-1,d.length&&E())}function E(){if(!y){var P=m(S);y=!0;for(var k=d.length;k;){for(A=d,d=[];++b1)for(var I=1;I$)return ge(null,!1);if(Ee>1){var Ie=Math.max(ce[0].Size,ce[1].Size);if(Ie!==U)return ge(null,!1)}var De=function ie(ae){if(ae=ge.length){Y.emit("has_and_check_upload_id",J);return}var ie=ge[De];if(!m.isInArray(J,ie)){l.removeUploadId.call(_,ie),Ie(De+1);return}if(l.using[ie]){Ie(De+1);return}b.call(_,{Bucket:B,Region:V,Key:R,UploadId:ie,tracker:D.tracker},function(ae,H){_._isRunningTask(O)&&(ae?(l.removeUploadId.call(_,ie),Ie(De+1)):Y.emit("upload_id_available",{UploadId:ie,PartList:H.PartList}))})};Ee(0)}),Y.on("get_remote_upload_id_list",function(){A.call(_,{Bucket:B,Region:V,Key:R,tracker:D.tracker},function(J,ce){if(_._isRunningTask(O)){if(J)return Y.emit("error",J);var ge=m.filter(ce.UploadList,function(De){return De.Key===R&&(!Q||De.StorageClass.toUpperCase()===Q.toUpperCase())}).reverse().map(function(De){return De.UploadId||De.UploadID});if(ge.length)Y.emit("seek_local_avail_upload_id",ge);else{var Ee=l.getFileId(D.Body,D.ChunkSize,B,R),Ie;Ee&&(Ie=l.getUploadIdList.call(_,Ee))&&m.each(Ie,function(De){l.removeUploadId.call(_,De)}),Y.emit("no_available_upload_id")}}})}),Y.emit("get_remote_upload_id_list")}function A(D,N){var O=this,B=[],V={Bucket:D.Bucket,Region:D.Region,Prefix:D.Key,calledBySdk:D.calledBySdk||"sliceUploadFile",tracker:D.tracker},R=function Q(){O.multipartList(V,function(_,K){if(_)return N(_);B.push.apply(B,K.Upload||[]),K.IsTruncated==="true"?(V.KeyMarker=K.NextKeyMarker,V.UploadIdMarker=K.NextUploadIdMarker,Q()):N(null,{UploadList:B})})};R()}function b(D,N){var O=this,B=[],V={Bucket:D.Bucket,Region:D.Region,Key:D.Key,UploadId:D.UploadId,calledBySdk:"sliceUploadFile",tracker:D.tracker},R=function Q(){O.multipartListPart(V,function(_,K){if(_)return N(_);B.push.apply(B,K.Part||[]),K.IsTruncated==="true"?(V.PartNumberMarker=K.NextPartNumberMarker,Q()):N(null,{PartList:B})})};R()}function S(D,N){var O=this,B=D.TaskId,V=D.Bucket,R=D.Region,Q=D.Key,_=D.UploadData,K=D.FileSize,G=D.SliceSize,U=Math.min(D.AsyncLimit||O.options.ChunkParallelLimit||1,256),$=D.Body,q=Math.ceil(K/G),W=0,xe=D.ServerSideEncryption,ue=D.Headers,Y=m.filter(_.PartList,function(ce){return ce.Uploaded&&(W+=ce.PartNumber>=q&&K%G||G),!ce.Uploaded}),J=D.onProgress;c.eachLimit(Y,U,function(ce,ge){if(O._isRunningTask(B)){var Ee=ce.PartNumber,Ie=Math.min(K,ce.PartNumber*G)-(ce.PartNumber-1)*G,De=0;E.call(O,{TaskId:B,Bucket:V,Region:R,Key:Q,SliceSize:G,FileSize:K,PartNumber:Ee,ServerSideEncryption:xe,Body:$,UploadData:_,Headers:ue,onProgress:function(ae){W+=ae.loaded-De,De=ae.loaded,J({loaded:W,total:K})},tracker:D.tracker},function(ie,ae){O._isRunningTask(B)&&(!ie&&!ae.ETag&&(ie='get ETag error, please add "ETag" to CORS ExposeHeader setting.( 获取ETag失败,请在CORS ExposeHeader设置中添加ETag,请参考文档:https://cloud.tencent.com/document/product/436/13318 )'),ie?W-=De:(W+=Ie-De,ce.ETag=ae.ETag),J({loaded:W,total:K}),ge(ie||null,ae))})}},function(ce){if(O._isRunningTask(B)){if(ce)return N(ce);N(null,{UploadId:_.UploadId,SliceList:_.PartList})}})}function E(D,N){var O=this,B=D.TaskId,V=D.Bucket,R=D.Region,Q=D.Key,_=D.FileSize,K=D.Body,G=D.PartNumber*1,U=D.SliceSize,$=D.ServerSideEncryption,q=D.UploadData,W=D.Headers||{},xe=O.options.ChunkRetryTimes+1,ue=U*(G-1),Y=U,J=ue+U;J>_&&(J=_,Y=J-ue);var ce=["x-cos-traffic-limit","x-cos-mime-limit"],ge={};m.each(W,function(Ie,De){ce.indexOf(De)>-1&&(ge[De]=Ie)});var Ee=q.PartList[G-1];c.retry(xe,function(Ie){O._isRunningTask(B)&&m.fileSlice(K,ue,J,!0,function(De){O.multipartUpload({TaskId:B,Bucket:V,Region:R,Key:Q,ContentLength:Y,PartNumber:G,UploadId:q.UploadId,ServerSideEncryption:$,Body:De,Headers:ge,onProgress:D.onProgress,calledBySdk:"sliceUploadFile",tracker:D.tracker},function(ie,ae){if(O._isRunningTask(B))return ie?Ie(ie):(Ee.Uploaded=!0,Ie(null,ae))})})},function(Ie,De){if(O._isRunningTask(B))return N(Ie,De)})}function x(D,N){var O=D.Bucket,B=D.Region,V=D.Key,R=D.UploadId,Q=D.SliceList,_=this,K=this.options.ChunkRetryTimes+1,G=D.Headers,U=Q.map(function($){return{PartNumber:$.PartNumber,ETag:$.ETag}});c.retry(K,function($){_.multipartComplete({Bucket:O,Region:B,Key:V,UploadId:R,Parts:U,Headers:G,calledBySdk:"sliceUploadFile",tracker:D.tracker},$)},function($,q){N($,q)})}function C(D,N){var O=D.Bucket,B=D.Region,V=D.Key,R=D.UploadId,Q=D.Level||"task",_=D.AsyncLimit,K=this,G=new u;if(G.on("error",function(U){return N(U)}),G.on("get_abort_array",function(U){P.call(K,{Bucket:O,Region:B,Key:V,Headers:D.Headers,AsyncLimit:_,AbortArray:U},N)}),Q==="bucket")A.call(K,{Bucket:O,Region:B,calledBySdk:"abortUploadTask"},function(U,$){if(U)return N(U);G.emit("get_abort_array",$.UploadList||[])});else if(Q==="file"){if(!V)return N(m.error(new Error("abort_upload_task_no_key")));A.call(K,{Bucket:O,Region:B,Key:V,calledBySdk:"abortUploadTask"},function(U,$){if(U)return N(U);G.emit("get_abort_array",$.UploadList||[])})}else if(Q==="task"){if(!R)return N(m.error(new Error("abort_upload_task_no_id")));if(!V)return N(m.error(new Error("abort_upload_task_no_key")));G.emit("get_abort_array",[{Key:V,UploadId:R}])}else return N(m.error(new Error("abort_unknown_level")))}function P(D,N){var O=D.Bucket,B=D.Region,V=D.Key,R=D.AbortArray,Q=D.AsyncLimit||1,_=this,K=0,G=new Array(R.length);c.eachLimit(R,Q,function(U,$){var q=K;if(V&&V!==U.Key){G[q]={error:{KeyNotMatch:!0}},$(null);return}var W=U.UploadId||U.UploadID;_.multipartAbort({Bucket:O,Region:B,Key:U.Key,Headers:D.Headers,UploadId:W},function(xe){var ue={Bucket:O,Region:B,Key:U.Key,UploadId:W};G[q]={error:xe,task:ue},$(null)}),K++},function(U){if(U)return N(U);for(var $=[],q=[],W=0,xe=G.length;WB?"sliceUploadFile":"putObject";D.tracker=new g({Beacon:O.options.BeaconReporter,clsReporter:O.options.ClsReporter,bucket:D.Bucket,region:D.Region,apiName:"uploadFile",realApi:G,fileKey:D.Key,fileSize:Q,accelerate:K,deepTracker:O.options.DeepTracker,customId:O.options.CustomId,delay:O.options.TrackerDelay})}m.each(D,function(ue,Y){a(ue)!=="object"&&typeof ue!="function"&&(_[Y]=ue)});var U=D.onTaskReady,$=function(Y){_.TaskId=Y,U&&U(Y)};D.onTaskReady=$;var q=Q>B?"sliceUploadFile":"putObject",W=D.onFileFinish,xe=function(Y,J){D.tracker&&D.tracker.report(Y,J),W&&W(Y,J,_),N&&N(Y,J)};V.push({api:q,params:D,callback:xe}),O._addTasks(V)}function I(D,N){var O=this,B=D.SliceSize===void 0?O.options.SliceSize:D.SliceSize,V=0,R=0,Q=m.throttleOnProgress.call(O,R,D.onProgress),_=D.files.length,K=D.onFileFinish,G=Array(_),U=function(W,xe,ue){Q(null,!0),K&&K(W,xe,ue),G[ue.Index]={options:ue,error:W,data:xe},--_<=0&&N&&N(null,{files:G})},$=[];m.each(D.files,function(q,W){(function(){var xe=q.Body,ue=xe.size||xe.length||0,Y={Index:W,TaskId:""};if(!O.options.UseRawKey&&q.Key&&q.Key.substr(0,1)==="/"&&(q.Key=q.Key.substr(1)),V+=ue,O.options.EnableReporter){var J=O.options.UseAccelerate||typeof O.options.Domain=="string"&&O.options.Domain.includes("accelerate."),ce=ue>B?"sliceUploadFile":"putObject";q.tracker=new g({Beacon:O.options.BeaconReporter,clsReporter:O.options.ClsReporter,bucket:q.Bucket,region:q.Region,apiName:"uploadFiles",realApi:ce,fileKey:q.Key,fileSize:ue,accelerate:J,deepTracker:O.options.DeepTracker,customId:O.options.CustomId,delay:O.options.TrackerDelay})}m.each(q,function(pe,ee){a(pe)!=="object"&&typeof pe!="function"&&(Y[ee]=pe)});var ge=q.onTaskReady,Ee=function(ee){Y.TaskId=ee,ge&&ge(ee)};q.onTaskReady=Ee;var Ie=0,De=q.onProgress,ie=function(ee){R=R-Ie+ee.loaded,Ie=ee.loaded,De&&De(ee),Q({loaded:R,total:V})};q.onProgress=ie;var ae=ue>B?"sliceUploadFile":"putObject",H=q.onFileFinish,ve=function(ee,ne){q.tracker&&q.tracker.report(ee,ne),H&&H(ee,ne),U&&U(ee,ne,Y)};$.push({api:ae,params:q,callback:ve})})()}),O._addTasks($)}function M(D,N){var O=new u,B=this,V=D.Bucket,R=D.Region,Q=D.Key,_=D.CopySource,K=m.getSourceParams.call(this,_);if(!K){N(m.error(new Error("CopySource format error")));return}var G=K.Bucket,U=K.Region,$=decodeURIComponent(K.Key),q=D.CopySliceSize===void 0?B.options.CopySliceSize:D.CopySliceSize;q=Math.max(0,q);var W=D.CopyChunkSize||this.options.CopyChunkSize,xe=this.options.CopyChunkParallelLimit,ue=this.options.ChunkRetryTimes+1,Y=0,J=0,ce,ge,Ee={},Ie={},De={};O.on("copy_slice_complete",function(ie){m.each(D.Headers,function(H,ve){ve.toLowerCase().indexOf("x-cos-meta-")});var ae=m.map(ie.PartList,function(H){return{PartNumber:H.PartNumber,ETag:H.ETag}});c.retry(ue,function(H){B.multipartComplete({Bucket:V,Region:R,Key:Q,UploadId:ie.UploadId,Parts:ae,tracker:D.tracker,calledBySdk:"sliceCopyFile"},H)},function(H,ve){if(l.removeUsing(ie.UploadId),H)return ge(null,!0),N(H);l.removeUploadId(ie.UploadId),ge({loaded:ce,total:ce},!0),N(null,ve)})}),O.on("get_copy_data_finish",function(ie){var ae=l.getCopyFileId(_,Ee,W,V,Q);ae&&l.saveUploadId(ae,ie.UploadId,B.options.UploadIdCacheLimit),l.setUsing(ie.UploadId);var H=m.filter(ie.PartList,function(ve){return ve.Uploaded&&(J+=ve.PartNumber>=Y&&ce%W||W),!ve.Uploaded});c.eachLimit(H,xe,function(ve,pe){var ee=ve.PartNumber,ne=ve.CopySourceRange,me=ve.end-ve.start;c.retry(ue,function(Be){T.call(B,{Bucket:V,Region:R,Key:Q,CopySource:_,UploadId:ie.UploadId,PartNumber:ee,CopySourceRange:ne,tracker:D.tracker,calledBySdk:"sliceCopyFile"},Be)},function(Be,oe){if(Be)return pe(Be);J+=me,ge({loaded:J,total:ce}),ve.ETag=oe.ETag,pe(Be||null,oe)})},function(ve){if(ve)return l.removeUsing(ie.UploadId),ge(null,!0),N(ve);O.emit("copy_slice_complete",ie)})}),O.on("get_chunk_size_finish",function(){var ie=function(){B.multipartInit({Bucket:V,Region:R,Key:Q,Headers:De,tracker:D.tracker,calledBySdk:"sliceCopyFile"},function(ee,ne){if(ee)return N(ee);D.UploadId=ne.UploadId,O.emit("get_copy_data_finish",{UploadId:D.UploadId,PartList:D.PartList})})},ae=l.getCopyFileId(_,Ee,W,V,Q),H=l.getUploadIdList(ae);if(!ae||!H)return ie();var ve=function pe(ee){if(ee>=H.length)return ie();var ne=H[ee];if(l.using[ne])return pe(ee+1);b.call(B,{Bucket:V,Region:R,Key:Q,UploadId:ne,tracker:D.tracker,calledBySdk:"sliceCopyFile"},function(me,Be){if(me)l.removeUploadId(ne),pe(ee+1);else{if(l.using[ne])return pe(ee+1);var oe={},Ae=0;m.each(Be.PartList,function(Me){var Le=parseInt(Me.Size),Ce=Ae+Le-1;oe[Me.PartNumber+"|"+Ae+"|"+Ce]=Me.ETag,Ae+=Le}),m.each(D.PartList,function(Me){var Le=oe[Me.PartNumber+"|"+Me.start+"|"+Me.end];Le&&(Me.ETag=Le,Me.Uploaded=!0)}),O.emit("get_copy_data_finish",{UploadId:ne,PartList:D.PartList})}})};ve(0)}),O.on("get_file_size_finish",function(){if(function(){for(var ae=[1,2,4,8,16,32,64,128,256,512,1024,2048,4096,5120],H=1024*1024,ve=0;veee.length&&(Ie[pe]=ve)}),O.emit("get_file_size_finish")}})}function T(D,N){var O=D.TaskId,B=D.Bucket,V=D.Region,R=D.Key,Q=D.CopySource,_=D.UploadId,K=D.PartNumber*1,G=D.CopySourceRange,U=this.options.ChunkRetryTimes+1,$=this;c.retry(U,function(q){$.uploadPartCopy({TaskId:O,Bucket:B,Region:V,Key:R,CopySource:Q,UploadId:_,PartNumber:K,CopySourceRange:G,tracker:D.tracker,calledBySdk:D.calledBySdk},function(W,xe){q(W||null,xe)})},function(q,W){return N(q,W)})}var F={sliceUploadFile:d,abortUploadTask:C,uploadFile:k,uploadFiles:I,sliceCopyFile:M};r.exports.init=function(D,N){N.transferToTaskMethod(F,"sliceUploadFile"),m.each(F,function(O,B){D.prototype[B]=m.apiWrapper(B,O)})}},"./src/async.js":function(r,s){var o=function(u,m,g,d){if(d=d||function(){},!u.length||m<=0)return d();var y=0,A=0,b=0;(function S(){if(y>=u.length)return d();for(;b=u.length?d():S())})})()},a=function(u,m,g){var d=function y(A){m(function(b,S){b&&A"u"?"undefined":a(location))==="object"&&location.protocol==="http:"?"http:":"https:"),re=this.options.ServiceDomain,we=z.AppId||this.options.appId,Se=z.Region;re?(re=re.replace(/\{\{AppId\}\}/gi,we||"").replace(/\{\{Region\}\}/gi,Se||"").replace(/\{\{.*?\}\}/gi,""),/^[a-zA-Z]+:\/\//.test(re)||(re=Z+"//"+re),re.slice(-1)==="/"&&(re=re.slice(0,-1))):Se?re=Z+"//cos."+Se+".myqcloud.com":re=Z+"//service.cos.myqcloud.com";var Te="",Fe=Se?"cos."+Se+".myqcloud.com":"service.cos.myqcloud.com",He=re.replace(/^https?:\/\/([^/]+)(\/.*)?$/,"$1");Fe===He&&(Te=Fe),qe.call(this,{Action:"name/cos:GetService",url:re,method:"GET",headers:z.Headers,SignHost:Te,tracker:z.tracker},function(lt,st){if(lt)return fe(lt);var ft=st&&st.ListAllMyBucketsResult&&st.ListAllMyBucketsResult.Buckets&&st.ListAllMyBucketsResult.Buckets.Bucket||[];ft=c.isArray(ft)?ft:[ft];var Qe=st&&st.ListAllMyBucketsResult&&st.ListAllMyBucketsResult.Owner||{};fe(null,{Buckets:ft,Owner:Qe,statusCode:st.statusCode,headers:st.headers})})}function m(z,fe){var Z=this,re="";if(z.BucketAZConfig){var we={BucketAZConfig:z.BucketAZConfig};re=c.json2xml({CreateBucketConfiguration:we})}qe.call(this,{Action:"name/cos:PutBucket",method:"PUT",Bucket:z.Bucket,Region:z.Region,headers:z.Headers,body:re,tracker:z.tracker},function(Se,Te){if(Se)return fe(Se);var Fe=Oe({protocol:Z.options.Protocol,domain:Z.options.Domain,bucket:z.Bucket,region:z.Region,isLocation:!0});fe(null,{Location:Fe,statusCode:Te.statusCode,headers:Te.headers})})}function g(z,fe){qe.call(this,{Action:"name/cos:HeadBucket",Bucket:z.Bucket,Region:z.Region,headers:z.Headers,method:"HEAD",tracker:z.tracker},fe)}function d(z,fe){var Z={};Z.prefix=z.Prefix||"",Z.delimiter=z.Delimiter,Z.marker=z.Marker,Z["max-keys"]=z.MaxKeys,Z["encoding-type"]=z.EncodingType,qe.call(this,{Action:"name/cos:GetBucket",ResourceKey:Z.prefix,method:"GET",Bucket:z.Bucket,Region:z.Region,headers:z.Headers,qs:Z,tracker:z.tracker},function(re,we){if(re)return fe(re);var Se=we.ListBucketResult||{},Te=Se.Contents||[],Fe=Se.CommonPrefixes||[];Te=c.isArray(Te)?Te:[Te],Fe=c.isArray(Fe)?Fe:[Fe];var He=c.clone(Se);c.extend(He,{Contents:Te,CommonPrefixes:Fe,statusCode:we.statusCode,headers:we.headers}),fe(null,He)})}function y(z,fe){qe.call(this,{Action:"name/cos:DeleteBucket",Bucket:z.Bucket,Region:z.Region,headers:z.Headers,method:"DELETE",tracker:z.tracker},function(Z,re){if(Z&&Z.statusCode===204)return fe(null,{statusCode:Z.statusCode});if(Z)return fe(Z);fe(null,{statusCode:re.statusCode,headers:re.headers})})}function A(z,fe){var Z=z.Headers,re="";if(z.AccessControlPolicy){var we=c.clone(z.AccessControlPolicy||{}),Se=we.Grants||we.Grant;Se=c.isArray(Se)?Se:[Se],delete we.Grant,delete we.Grants,we.AccessControlList={Grant:Se},re=c.json2xml({AccessControlPolicy:we}),Z["Content-Type"]="application/xml",Z["Content-MD5"]=c.b64(c.md5(re))}c.each(Z,function(Te,Fe){Fe.indexOf("x-cos-grant-")===0&&(Z[Fe]=ke(Z[Fe]))}),qe.call(this,{Action:"name/cos:PutBucketACL",method:"PUT",Bucket:z.Bucket,Region:z.Region,headers:Z,action:"acl",body:re,tracker:z.tracker},function(Te,Fe){if(Te)return fe(Te);fe(null,{statusCode:Fe.statusCode,headers:Fe.headers})})}function b(z,fe){qe.call(this,{Action:"name/cos:GetBucketACL",method:"GET",Bucket:z.Bucket,Region:z.Region,headers:z.Headers,action:"acl",tracker:z.tracker},function(Z,re){if(Z)return fe(Z);var we=re.AccessControlPolicy||{},Se=we.Owner||{},Te=we.AccessControlList.Grant||[];Te=c.isArray(Te)?Te:[Te];var Fe=de(we);re.headers&&re.headers["x-cos-acl"]&&(Fe.ACL=re.headers["x-cos-acl"]),Fe=c.extend(Fe,{Owner:Se,Grants:Te,statusCode:re.statusCode,headers:re.headers}),fe(null,Fe)})}function S(z,fe){var Z=z.CORSConfiguration||{},re=Z.CORSRules||z.CORSRules||[];re=c.clone(c.isArray(re)?re:[re]),c.each(re,function(Fe){c.each(["AllowedOrigin","AllowedHeader","AllowedMethod","ExposeHeader"],function(He){var lt=He+"s",st=Fe[lt]||Fe[He]||[];delete Fe[lt],Fe[He]=c.isArray(st)?st:[st]})});var we={CORSRule:re};z.ResponseVary&&(we.ResponseVary=z.ResponseVary);var Se=c.json2xml({CORSConfiguration:we}),Te=z.Headers;Te["Content-Type"]="application/xml",Te["Content-MD5"]=c.b64(c.md5(Se)),qe.call(this,{Action:"name/cos:PutBucketCORS",method:"PUT",Bucket:z.Bucket,Region:z.Region,body:Se,action:"cors",headers:Te,tracker:z.tracker},function(Fe,He){if(Fe)return fe(Fe);fe(null,{statusCode:He.statusCode,headers:He.headers})})}function E(z,fe){qe.call(this,{Action:"name/cos:GetBucketCORS",method:"GET",Bucket:z.Bucket,Region:z.Region,headers:z.Headers,action:"cors",tracker:z.tracker},function(Z,re){if(Z){if(Z.statusCode===404&&Z.error&&Z.error.Code==="NoSuchCORSConfiguration"){var we={CORSRules:[],statusCode:Z.statusCode};Z.headers&&(we.headers=Z.headers),fe(null,we)}else fe(Z);return}var Se=re.CORSConfiguration||{},Te=Se.CORSRules||Se.CORSRule||[];Te=c.clone(c.isArray(Te)?Te:[Te]);var Fe=Se.ResponseVary;c.each(Te,function(He){c.each(["AllowedOrigin","AllowedHeader","AllowedMethod","ExposeHeader"],function(lt){var st=lt+"s",ft=He[st]||He[lt]||[];delete He[lt],He[st]=c.isArray(ft)?ft:[ft]})}),fe(null,{CORSRules:Te,ResponseVary:Fe,statusCode:re.statusCode,headers:re.headers})})}function x(z,fe){qe.call(this,{Action:"name/cos:DeleteBucketCORS",method:"DELETE",Bucket:z.Bucket,Region:z.Region,headers:z.Headers,action:"cors",tracker:z.tracker},function(Z,re){if(Z&&Z.statusCode===204)return fe(null,{statusCode:Z.statusCode});if(Z)return fe(Z);fe(null,{statusCode:re.statusCode||Z.statusCode,headers:re.headers})})}function C(z,fe){qe.call(this,{Action:"name/cos:GetBucketLocation",method:"GET",Bucket:z.Bucket,Region:z.Region,headers:z.Headers,action:"location",tracker:z.tracker},fe)}function P(z,fe){var Z=z.Policy;try{typeof Z=="string"&&(Z=JSON.parse(Z))}catch(Se){}if(!Z||typeof Z=="string")return fe(c.error(new Error("Policy format error")));var re=JSON.stringify(Z);Z.version||(Z.version="2.0");var we=z.Headers;we["Content-Type"]="application/json",we["Content-MD5"]=c.b64(c.md5(re)),qe.call(this,{Action:"name/cos:PutBucketPolicy",method:"PUT",Bucket:z.Bucket,Region:z.Region,action:"policy",body:re,headers:we,tracker:z.tracker},function(Se,Te){if(Se&&Se.statusCode===204)return fe(null,{statusCode:Se.statusCode});if(Se)return fe(Se);fe(null,{statusCode:Te.statusCode,headers:Te.headers})})}function k(z,fe){qe.call(this,{Action:"name/cos:GetBucketPolicy",method:"GET",Bucket:z.Bucket,Region:z.Region,headers:z.Headers,action:"policy",rawBody:!0,tracker:z.tracker},function(Z,re){if(Z)return Z.statusCode&&Z.statusCode===403?fe(c.error(Z,{ErrorStatus:"Access Denied"})):Z.statusCode&&Z.statusCode===405?fe(c.error(Z,{ErrorStatus:"Method Not Allowed"})):Z.statusCode&&Z.statusCode===404?fe(c.error(Z,{ErrorStatus:"Policy Not Found"})):fe(Z);var we={};try{we=JSON.parse(re.body)}catch(Se){}fe(null,{Policy:we,statusCode:re.statusCode,headers:re.headers})})}function I(z,fe){qe.call(this,{Action:"name/cos:DeleteBucketPolicy",method:"DELETE",Bucket:z.Bucket,Region:z.Region,headers:z.Headers,action:"policy",tracker:z.tracker},function(Z,re){if(Z&&Z.statusCode===204)return fe(null,{statusCode:Z.statusCode});if(Z)return fe(Z);fe(null,{statusCode:re.statusCode||Z.statusCode,headers:re.headers})})}function M(z,fe){var Z=z.Tagging||{},re=Z.TagSet||Z.Tags||z.Tags||[];re=c.clone(c.isArray(re)?re:[re]);var we=c.json2xml({Tagging:{TagSet:{Tag:re}}}),Se=z.Headers;Se["Content-Type"]="application/xml",Se["Content-MD5"]=c.b64(c.md5(we)),qe.call(this,{Action:"name/cos:PutBucketTagging",method:"PUT",Bucket:z.Bucket,Region:z.Region,body:we,action:"tagging",headers:Se,tracker:z.tracker},function(Te,Fe){if(Te&&Te.statusCode===204)return fe(null,{statusCode:Te.statusCode});if(Te)return fe(Te);fe(null,{statusCode:Fe.statusCode,headers:Fe.headers})})}function T(z,fe){qe.call(this,{Action:"name/cos:GetBucketTagging",method:"GET",Bucket:z.Bucket,Region:z.Region,headers:z.Headers,action:"tagging",tracker:z.tracker},function(Z,re){if(Z){if(Z.statusCode===404&&Z.error&&(Z.error==="Not Found"||Z.error.Code==="NoSuchTagSet")){var we={Tags:[],statusCode:Z.statusCode};Z.headers&&(we.headers=Z.headers),fe(null,we)}else fe(Z);return}var Se=[];try{Se=re.Tagging.TagSet.Tag||[]}catch(Te){}Se=c.clone(c.isArray(Se)?Se:[Se]),fe(null,{Tags:Se,statusCode:re.statusCode,headers:re.headers})})}function F(z,fe){qe.call(this,{Action:"name/cos:DeleteBucketTagging",method:"DELETE",Bucket:z.Bucket,Region:z.Region,headers:z.Headers,action:"tagging",tracker:z.tracker},function(Z,re){if(Z&&Z.statusCode===204)return fe(null,{statusCode:Z.statusCode});if(Z)return fe(Z);fe(null,{statusCode:re.statusCode,headers:re.headers})})}function D(z,fe){var Z=z.LifecycleConfiguration||{},re=Z.Rules||z.Rules||[];re=c.clone(re);var we=c.json2xml({LifecycleConfiguration:{Rule:re}}),Se=z.Headers;Se["Content-Type"]="application/xml",Se["Content-MD5"]=c.b64(c.md5(we)),qe.call(this,{Action:"name/cos:PutBucketLifecycle",method:"PUT",Bucket:z.Bucket,Region:z.Region,body:we,action:"lifecycle",headers:Se,tracker:z.tracker},function(Te,Fe){if(Te&&Te.statusCode===204)return fe(null,{statusCode:Te.statusCode});if(Te)return fe(Te);fe(null,{statusCode:Fe.statusCode,headers:Fe.headers})})}function N(z,fe){qe.call(this,{Action:"name/cos:GetBucketLifecycle",method:"GET",Bucket:z.Bucket,Region:z.Region,headers:z.Headers,action:"lifecycle",tracker:z.tracker},function(Z,re){if(Z){if(Z.statusCode===404&&Z.error&&Z.error.Code==="NoSuchLifecycleConfiguration"){var we={Rules:[],statusCode:Z.statusCode};Z.headers&&(we.headers=Z.headers),fe(null,we)}else fe(Z);return}var Se=[];try{Se=re.LifecycleConfiguration.Rule||[]}catch(Te){}Se=c.clone(c.isArray(Se)?Se:[Se]),fe(null,{Rules:Se,statusCode:re.statusCode,headers:re.headers})})}function O(z,fe){qe.call(this,{Action:"name/cos:DeleteBucketLifecycle",method:"DELETE",Bucket:z.Bucket,Region:z.Region,headers:z.Headers,action:"lifecycle",tracker:z.tracker},function(Z,re){if(Z&&Z.statusCode===204)return fe(null,{statusCode:Z.statusCode});if(Z)return fe(Z);fe(null,{statusCode:re.statusCode,headers:re.headers})})}function B(z,fe){if(!z.VersioningConfiguration){fe(c.error(new Error("missing param VersioningConfiguration")));return}var Z=z.VersioningConfiguration||{},re=c.json2xml({VersioningConfiguration:Z}),we=z.Headers;we["Content-Type"]="application/xml",we["Content-MD5"]=c.b64(c.md5(re)),qe.call(this,{Action:"name/cos:PutBucketVersioning",method:"PUT",Bucket:z.Bucket,Region:z.Region,body:re,action:"versioning",headers:we,tracker:z.tracker},function(Se,Te){if(Se&&Se.statusCode===204)return fe(null,{statusCode:Se.statusCode});if(Se)return fe(Se);fe(null,{statusCode:Te.statusCode,headers:Te.headers})})}function V(z,fe){qe.call(this,{Action:"name/cos:GetBucketVersioning",method:"GET",Bucket:z.Bucket,Region:z.Region,headers:z.Headers,action:"versioning",tracker:z.tracker},function(Z,re){Z||!re.VersioningConfiguration&&(re.VersioningConfiguration={}),fe(Z,re)})}function R(z,fe){var Z=c.clone(z.ReplicationConfiguration),re=c.json2xml({ReplicationConfiguration:Z});re=re.replace(/<(\/?)Rules>/gi,"<$1Rule>"),re=re.replace(/<(\/?)Tags>/gi,"<$1Tag>");var we=z.Headers;we["Content-Type"]="application/xml",we["Content-MD5"]=c.b64(c.md5(re)),qe.call(this,{Action:"name/cos:PutBucketReplication",method:"PUT",Bucket:z.Bucket,Region:z.Region,body:re,action:"replication",headers:we,tracker:z.tracker},function(Se,Te){if(Se&&Se.statusCode===204)return fe(null,{statusCode:Se.statusCode});if(Se)return fe(Se);fe(null,{statusCode:Te.statusCode,headers:Te.headers})})}function Q(z,fe){qe.call(this,{Action:"name/cos:GetBucketReplication",method:"GET",Bucket:z.Bucket,Region:z.Region,headers:z.Headers,action:"replication",tracker:z.tracker},function(Z,re){if(Z){if(Z.statusCode===404&&Z.error&&(Z.error==="Not Found"||Z.error.Code==="ReplicationConfigurationnotFoundError")){var we={ReplicationConfiguration:{Rules:[]},statusCode:Z.statusCode};Z.headers&&(we.headers=Z.headers),fe(null,we)}else fe(Z);return}!re.ReplicationConfiguration&&(re.ReplicationConfiguration={}),re.ReplicationConfiguration.Rule&&(re.ReplicationConfiguration.Rules=c.makeArray(re.ReplicationConfiguration.Rule),delete re.ReplicationConfiguration.Rule),fe(Z,re)})}function _(z,fe){qe.call(this,{Action:"name/cos:DeleteBucketReplication",method:"DELETE",Bucket:z.Bucket,Region:z.Region,headers:z.Headers,action:"replication",tracker:z.tracker},function(Z,re){if(Z&&Z.statusCode===204)return fe(null,{statusCode:Z.statusCode});if(Z)return fe(Z);fe(null,{statusCode:re.statusCode,headers:re.headers})})}function K(z,fe){if(!z.WebsiteConfiguration){fe(c.error(new Error("missing param WebsiteConfiguration")));return}var Z=c.clone(z.WebsiteConfiguration||{}),re=Z.RoutingRules||Z.RoutingRule||[];re=c.isArray(re)?re:[re],delete Z.RoutingRule,delete Z.RoutingRules,re.length&&(Z.RoutingRules={RoutingRule:re});var we=c.json2xml({WebsiteConfiguration:Z}),Se=z.Headers;Se["Content-Type"]="application/xml",Se["Content-MD5"]=c.b64(c.md5(we)),qe.call(this,{Action:"name/cos:PutBucketWebsite",method:"PUT",Bucket:z.Bucket,Region:z.Region,body:we,action:"website",headers:Se,tracker:z.tracker},function(Te,Fe){if(Te&&Te.statusCode===204)return fe(null,{statusCode:Te.statusCode});if(Te)return fe(Te);fe(null,{statusCode:Fe.statusCode,headers:Fe.headers})})}function G(z,fe){qe.call(this,{Action:"name/cos:GetBucketWebsite",method:"GET",Bucket:z.Bucket,Region:z.Region,Key:z.Key,headers:z.Headers,action:"website",tracker:z.tracker},function(Z,re){if(Z){if(Z.statusCode===404&&Z.error.Code==="NoSuchWebsiteConfiguration"){var we={WebsiteConfiguration:{},statusCode:Z.statusCode};Z.headers&&(we.headers=Z.headers),fe(null,we)}else fe(Z);return}var Se=re.WebsiteConfiguration||{};if(Se.RoutingRules){var Te=c.clone(Se.RoutingRules.RoutingRule||[]);Te=c.makeArray(Te),Se.RoutingRules=Te}fe(null,{WebsiteConfiguration:Se,statusCode:re.statusCode,headers:re.headers})})}function U(z,fe){qe.call(this,{Action:"name/cos:DeleteBucketWebsite",method:"DELETE",Bucket:z.Bucket,Region:z.Region,headers:z.Headers,action:"website",tracker:z.tracker},function(Z,re){if(Z&&Z.statusCode===204)return fe(null,{statusCode:Z.statusCode});if(Z)return fe(Z);fe(null,{statusCode:re.statusCode,headers:re.headers})})}function $(z,fe){if(!z.RefererConfiguration){fe(c.error(new Error("missing param RefererConfiguration")));return}var Z=c.clone(z.RefererConfiguration||{}),re=Z.DomainList||{},we=re.Domains||re.Domain||[];we=c.isArray(we)?we:[we],we.length&&(Z.DomainList={Domain:we});var Se=c.json2xml({RefererConfiguration:Z}),Te=z.Headers;Te["Content-Type"]="application/xml",Te["Content-MD5"]=c.b64(c.md5(Se)),qe.call(this,{Action:"name/cos:PutBucketReferer",method:"PUT",Bucket:z.Bucket,Region:z.Region,body:Se,action:"referer",headers:Te,tracker:z.tracker},function(Fe,He){if(Fe&&Fe.statusCode===204)return fe(null,{statusCode:Fe.statusCode});if(Fe)return fe(Fe);fe(null,{statusCode:He.statusCode,headers:He.headers})})}function q(z,fe){qe.call(this,{Action:"name/cos:GetBucketReferer",method:"GET",Bucket:z.Bucket,Region:z.Region,Key:z.Key,headers:z.Headers,action:"referer",tracker:z.tracker},function(Z,re){if(Z){if(Z.statusCode===404&&Z.error.Code==="NoSuchRefererConfiguration"){var we={WebsiteConfiguration:{},statusCode:Z.statusCode};Z.headers&&(we.headers=Z.headers),fe(null,we)}else fe(Z);return}var Se=re.RefererConfiguration||{};if(Se.DomainList){var Te=c.makeArray(Se.DomainList.Domain||[]);Se.DomainList={Domains:Te}}fe(null,{RefererConfiguration:Se,statusCode:re.statusCode,headers:re.headers})})}function W(z,fe){var Z=z.DomainConfiguration||{},re=Z.DomainRule||z.DomainRule||[];re=c.clone(re);var we=c.json2xml({DomainConfiguration:{DomainRule:re}}),Se=z.Headers;Se["Content-Type"]="application/xml",Se["Content-MD5"]=c.b64(c.md5(we)),qe.call(this,{Action:"name/cos:PutBucketDomain",method:"PUT",Bucket:z.Bucket,Region:z.Region,body:we,action:"domain",headers:Se,tracker:z.tracker},function(Te,Fe){if(Te&&Te.statusCode===204)return fe(null,{statusCode:Te.statusCode});if(Te)return fe(Te);fe(null,{statusCode:Fe.statusCode,headers:Fe.headers})})}function xe(z,fe){qe.call(this,{Action:"name/cos:GetBucketDomain",method:"GET",Bucket:z.Bucket,Region:z.Region,headers:z.Headers,action:"domain",tracker:z.tracker},function(Z,re){if(Z)return fe(Z);var we=[];try{we=re.DomainConfiguration.DomainRule||[]}catch(Se){}we=c.clone(c.isArray(we)?we:[we]),fe(null,{DomainRule:we,statusCode:re.statusCode,headers:re.headers})})}function ue(z,fe){qe.call(this,{Action:"name/cos:DeleteBucketDomain",method:"DELETE",Bucket:z.Bucket,Region:z.Region,headers:z.Headers,action:"domain",tracker:z.tracker},function(Z,re){if(Z&&Z.statusCode===204)return fe(null,{statusCode:Z.statusCode});if(Z)return fe(Z);fe(null,{statusCode:re.statusCode,headers:re.headers})})}function Y(z,fe){var Z=z.OriginConfiguration||{},re=Z.OriginRule||z.OriginRule||[];re=c.clone(re);var we=c.json2xml({OriginConfiguration:{OriginRule:re}}),Se=z.Headers;Se["Content-Type"]="application/xml",Se["Content-MD5"]=c.b64(c.md5(we)),qe.call(this,{Action:"name/cos:PutBucketOrigin",method:"PUT",Bucket:z.Bucket,Region:z.Region,body:we,action:"origin",headers:Se,tracker:z.tracker},function(Te,Fe){if(Te&&Te.statusCode===204)return fe(null,{statusCode:Te.statusCode});if(Te)return fe(Te);fe(null,{statusCode:Fe.statusCode,headers:Fe.headers})})}function J(z,fe){qe.call(this,{Action:"name/cos:GetBucketOrigin",method:"GET",Bucket:z.Bucket,Region:z.Region,headers:z.Headers,action:"origin",tracker:z.tracker},function(Z,re){if(Z)return fe(Z);var we=[];try{we=re.OriginConfiguration.OriginRule||[]}catch(Se){}we=c.clone(c.isArray(we)?we:[we]),fe(null,{OriginRule:we,statusCode:re.statusCode,headers:re.headers})})}function ce(z,fe){qe.call(this,{Action:"name/cos:DeleteBucketOrigin",method:"DELETE",Bucket:z.Bucket,Region:z.Region,headers:z.Headers,action:"origin",tracker:z.tracker},function(Z,re){if(Z&&Z.statusCode===204)return fe(null,{statusCode:Z.statusCode});if(Z)return fe(Z);fe(null,{statusCode:re.statusCode,headers:re.headers})})}function ge(z,fe){var Z=c.json2xml({BucketLoggingStatus:z.BucketLoggingStatus||""}),re=z.Headers;re["Content-Type"]="application/xml",re["Content-MD5"]=c.b64(c.md5(Z)),qe.call(this,{Action:"name/cos:PutBucketLogging",method:"PUT",Bucket:z.Bucket,Region:z.Region,body:Z,action:"logging",headers:re,tracker:z.tracker},function(we,Se){if(we&&we.statusCode===204)return fe(null,{statusCode:we.statusCode});if(we)return fe(we);fe(null,{statusCode:Se.statusCode,headers:Se.headers})})}function Ee(z,fe){qe.call(this,{Action:"name/cos:GetBucketLogging",method:"GET",Bucket:z.Bucket,Region:z.Region,headers:z.Headers,action:"logging",tracker:z.tracker},function(Z,re){if(Z)return fe(Z);fe(null,{BucketLoggingStatus:re.BucketLoggingStatus,statusCode:re.statusCode,headers:re.headers})})}function Ie(z,fe,Z){var re=c.clone(fe.InventoryConfiguration);if(re.OptionalFields){var we=re.OptionalFields||[];re.OptionalFields={Field:we}}if(re.Destination&&re.Destination.COSBucketDestination&&re.Destination.COSBucketDestination.Encryption){var Se=re.Destination.COSBucketDestination.Encryption;Object.keys(Se).indexOf("SSECOS")>-1&&(Se["SSE-COS"]=Se.SSECOS,delete Se.SSECOS)}var Te=c.json2xml({InventoryConfiguration:re}),Fe=fe.Headers;Fe["Content-Type"]="application/xml",Fe["Content-MD5"]=c.b64(c.md5(Te));var He=z==="PUT"?"name/cos:PutBucketInventory":"name/cos:PostBucketInventory";qe.call(this,{Action:He,method:z,Bucket:fe.Bucket,Region:fe.Region,body:Te,action:"inventory",qs:{id:fe.Id},headers:Fe,tracker:fe.tracker},function(lt,st){if(lt&<.statusCode===204)return Z(null,{statusCode:lt.statusCode});if(lt)return Z(lt);Z(null,{statusCode:st.statusCode,headers:st.headers})})}function De(z,fe){return Ie.call(this,"PUT",z,fe)}function ie(z,fe){return Ie.call(this,"POST",z,fe)}function ae(z,fe){qe.call(this,{Action:"name/cos:GetBucketInventory",method:"GET",Bucket:z.Bucket,Region:z.Region,headers:z.Headers,action:"inventory",qs:{id:z.Id},tracker:z.tracker},function(Z,re){if(Z)return fe(Z);var we=re.InventoryConfiguration;if(we&&we.OptionalFields&&we.OptionalFields.Field){var Se=we.OptionalFields.Field;c.isArray(Se)||(Se=[Se]),we.OptionalFields=Se}if(we.Destination&&we.Destination.COSBucketDestination&&we.Destination.COSBucketDestination.Encryption){var Te=we.Destination.COSBucketDestination.Encryption;Object.keys(Te).indexOf("SSE-COS")>-1&&(Te.SSECOS=Te["SSE-COS"],delete Te["SSE-COS"])}fe(null,{InventoryConfiguration:we,statusCode:re.statusCode,headers:re.headers})})}function H(z,fe){qe.call(this,{Action:"name/cos:ListBucketInventory",method:"GET",Bucket:z.Bucket,Region:z.Region,headers:z.Headers,action:"inventory",qs:{"continuation-token":z.ContinuationToken},tracker:z.tracker},function(Z,re){if(Z)return fe(Z);var we=re.ListInventoryConfigurationResult,Se=we.InventoryConfiguration||[];Se=c.isArray(Se)?Se:[Se],delete we.InventoryConfiguration,c.each(Se,function(Te){if(Te&&Te.OptionalFields&&Te.OptionalFields.Field){var Fe=Te.OptionalFields.Field;c.isArray(Fe)||(Fe=[Fe]),Te.OptionalFields=Fe}if(Te.Destination&&Te.Destination.COSBucketDestination&&Te.Destination.COSBucketDestination.Encryption){var He=Te.Destination.COSBucketDestination.Encryption;Object.keys(He).indexOf("SSE-COS")>-1&&(He.SSECOS=He["SSE-COS"],delete He["SSE-COS"])}}),we.InventoryConfigurations=Se,c.extend(we,{statusCode:re.statusCode,headers:re.headers}),fe(null,we)})}function ve(z,fe){qe.call(this,{Action:"name/cos:DeleteBucketInventory",method:"DELETE",Bucket:z.Bucket,Region:z.Region,headers:z.Headers,action:"inventory",qs:{id:z.Id},tracker:z.tracker},function(Z,re){if(Z&&Z.statusCode===204)return fe(null,{statusCode:Z.statusCode});if(Z)return fe(Z);fe(null,{statusCode:re.statusCode,headers:re.headers})})}function pe(z,fe){if(!z.AccelerateConfiguration){fe(c.error(new Error("missing param AccelerateConfiguration")));return}var Z={AccelerateConfiguration:z.AccelerateConfiguration||{}},re=c.json2xml(Z),we={};we["Content-Type"]="application/xml",we["Content-MD5"]=c.b64(c.md5(re)),qe.call(this,{Action:"name/cos:PutBucketAccelerate",method:"PUT",Bucket:z.Bucket,Region:z.Region,body:re,action:"accelerate",headers:we,tracker:z.tracker},function(Se,Te){if(Se)return fe(Se);fe(null,{statusCode:Te.statusCode,headers:Te.headers})})}function ee(z,fe){qe.call(this,{Action:"name/cos:GetBucketAccelerate",method:"GET",Bucket:z.Bucket,Region:z.Region,action:"accelerate",tracker:z.tracker},function(Z,re){Z||!re.AccelerateConfiguration&&(re.AccelerateConfiguration={}),fe(Z,re)})}function ne(z,fe){var Z=z.ServerSideEncryptionConfiguration||{},re=Z.Rule||Z.Rules||[],we=c.json2xml({ServerSideEncryptionConfiguration:{Rule:re}}),Se=z.Headers;Se["Content-Type"]="application/xml",Se["Content-MD5"]=c.b64(c.md5(we)),qe.call(this,{Action:"name/cos:PutBucketEncryption",method:"PUT",Bucket:z.Bucket,Region:z.Region,body:we,action:"encryption",headers:Se,tracker:z.tracker},function(Te,Fe){if(Te&&Te.statusCode===204)return fe(null,{statusCode:Te.statusCode});if(Te)return fe(Te);fe(null,{statusCode:Fe.statusCode,headers:Fe.headers})})}function me(z,fe){qe.call(this,{Action:"name/cos:GetBucketEncryption",method:"GET",Bucket:z.Bucket,Region:z.Region,headers:z.Headers,action:"encryption",tracker:z.tracker},function(Z,re){if(Z){if(Z.statusCode===404&&Z.code==="NoSuchEncryptionConfiguration"){var we={EncryptionConfiguration:{Rules:[]},statusCode:Z.statusCode};Z.headers&&(we.headers=Z.headers),fe(null,we)}else fe(Z);return}var Se=c.makeArray(re.EncryptionConfiguration&&re.EncryptionConfiguration.Rule||[]);re.EncryptionConfiguration={Rules:Se},fe(Z,re)})}function Be(z,fe){qe.call(this,{Action:"name/cos:DeleteBucketReplication",method:"DELETE",Bucket:z.Bucket,Region:z.Region,headers:z.Headers,action:"encryption",tracker:z.tracker},function(Z,re){if(Z&&Z.statusCode===204)return fe(null,{statusCode:Z.statusCode});if(Z)return fe(Z);fe(null,{statusCode:re.statusCode,headers:re.headers})})}function oe(z,fe){qe.call(this,{Action:"name/cos:HeadObject",method:"HEAD",Bucket:z.Bucket,Region:z.Region,Key:z.Key,VersionId:z.VersionId,headers:z.Headers,tracker:z.tracker},function(Z,re){if(Z){var we=Z.statusCode;return z.Headers["If-Modified-Since"]&&we&&we===304?fe(null,{NotModified:!0,statusCode:we}):fe(Z)}re.ETag=c.attr(re.headers,"etag",""),fe(null,re)})}function Ae(z,fe){var Z={};Z.prefix=z.Prefix||"",Z.delimiter=z.Delimiter,Z["key-marker"]=z.KeyMarker,Z["version-id-marker"]=z.VersionIdMarker,Z["max-keys"]=z.MaxKeys,Z["encoding-type"]=z.EncodingType,qe.call(this,{Action:"name/cos:GetBucketObjectVersions",ResourceKey:Z.prefix,method:"GET",Bucket:z.Bucket,Region:z.Region,headers:z.Headers,qs:Z,action:"versions",tracker:z.tracker},function(re,we){if(re)return fe(re);var Se=we.ListVersionsResult||{},Te=Se.DeleteMarker||[];Te=c.isArray(Te)?Te:[Te];var Fe=Se.Version||[];Fe=c.isArray(Fe)?Fe:[Fe];var He=c.clone(Se);delete He.DeleteMarker,delete He.Version,c.extend(He,{DeleteMarkers:Te,Versions:Fe,statusCode:we.statusCode,headers:we.headers}),fe(null,He)})}function Me(z,fe){if(this.options.ObjectKeySimplifyCheck){var Z=c.simplifyPath(z.Key);if(Z==="/"){fe(c.error(new Error("The Getobject Key is illegal")));return}}var re=z.Query||{},we=z.QueryString||"",Se=c.throttleOnProgress.call(this,0,z.onProgress),Te=z.tracker;Te&&Te.setParams({signStartTime:new Date().getTime()}),re["response-content-type"]=z.ResponseContentType,re["response-content-language"]=z.ResponseContentLanguage,re["response-expires"]=z.ResponseExpires,re["response-cache-control"]=z.ResponseCacheControl,re["response-content-disposition"]=z.ResponseContentDisposition,re["response-content-encoding"]=z.ResponseContentEncoding,qe.call(this,{Action:"name/cos:GetObject",method:"GET",Bucket:z.Bucket,Region:z.Region,Key:z.Key,VersionId:z.VersionId,DataType:z.DataType,headers:z.Headers,qs:re,qsStr:we,rawBody:!0,onDownloadProgress:Se,tracker:Te},function(Fe,He){if(Se(null,!0),Fe){var lt=Fe.statusCode;return z.Headers["If-Modified-Since"]&<&<===304?fe(null,{NotModified:!0}):fe(Fe)}fe(null,{Body:He.body,ETag:c.attr(He.headers,"etag",""),statusCode:He.statusCode,headers:He.headers})})}function Le(z,fe){var Z=this,re=z.ContentLength,we=c.throttleOnProgress.call(Z,re,z.onProgress),Se=z.Headers;!Se["Cache-Control"]&&!Se["cache-control"]&&(Se["Cache-Control"]=""),!Se["Content-Type"]&&!Se["content-type"]&&(Se["Content-Type"]=z.Body&&z.Body.type||"");var Te=z.UploadAddMetaMd5||Z.options.UploadAddMetaMd5||Z.options.UploadCheckContentMd5,Fe=z.tracker;Te&&Fe&&Fe.setParams({md5StartTime:new Date().getTime()}),c.getBodyMd5(Te,z.Body,function(He){He&&(Fe&&Fe.setParams({md5EndTime:new Date().getTime()}),Z.options.UploadCheckContentMd5&&(Se["Content-MD5"]=c.b64(He)),(z.UploadAddMetaMd5||Z.options.UploadAddMetaMd5)&&(Se["x-cos-meta-md5"]=He)),z.ContentLength!==void 0&&(Se["Content-Length"]=z.ContentLength),we(null,!0),qe.call(Z,{Action:"name/cos:PutObject",TaskId:z.TaskId,method:"PUT",Bucket:z.Bucket,Region:z.Region,Key:z.Key,headers:z.Headers,qs:z.Query,body:z.Body,onProgress:we,tracker:Fe},function(lt,st){if(lt)return we(null,!0),fe(lt);we({loaded:re,total:re},!0);var ft=Oe({ForcePathStyle:Z.options.ForcePathStyle,protocol:Z.options.Protocol,domain:Z.options.Domain,bucket:z.Bucket,region:Z.options.UseAccelerate?"accelerate":z.Region,object:z.Key});ft=ft.substr(ft.indexOf("://")+3),st.Location=ft,st.ETag=c.attr(st.headers,"etag",""),fe(null,st)})},z.onHashProgress)}function Ce(z,fe){qe.call(this,{Action:"name/cos:DeleteObject",method:"DELETE",Bucket:z.Bucket,Region:z.Region,Key:z.Key,headers:z.Headers,VersionId:z.VersionId,action:z.Recursive?"recursive":"",tracker:z.tracker},function(Z,re){if(Z){var we=Z.statusCode;return we&&we===404?fe(null,{BucketNotFound:!0,statusCode:we}):fe(Z)}fe(null,{statusCode:re.statusCode,headers:re.headers})})}function he(z,fe){var Z={};z.VersionId&&(Z.versionId=z.VersionId),qe.call(this,{Action:"name/cos:GetObjectACL",method:"GET",Bucket:z.Bucket,Region:z.Region,Key:z.Key,headers:z.Headers,qs:Z,action:"acl",tracker:z.tracker},function(re,we){if(re)return fe(re);var Se=we.AccessControlPolicy||{},Te=Se.Owner||{},Fe=Se.AccessControlList&&Se.AccessControlList.Grant||[];Fe=c.isArray(Fe)?Fe:[Fe];var He=de(Se);delete He.GrantWrite,we.headers&&we.headers["x-cos-acl"]&&(He.ACL=we.headers["x-cos-acl"]),He=c.extend(He,{Owner:Te,Grants:Fe,statusCode:we.statusCode,headers:we.headers}),fe(null,He)})}function Pe(z,fe){var Z=z.Headers,re="";if(z.AccessControlPolicy){var we=c.clone(z.AccessControlPolicy||{}),Se=we.Grants||we.Grant;Se=c.isArray(Se)?Se:[Se],delete we.Grant,delete we.Grants,we.AccessControlList={Grant:Se},re=c.json2xml({AccessControlPolicy:we}),Z["Content-Type"]="application/xml",Z["Content-MD5"]=c.b64(c.md5(re))}c.each(Z,function(Te,Fe){Fe.indexOf("x-cos-grant-")===0&&(Z[Fe]=ke(Z[Fe]))}),qe.call(this,{Action:"name/cos:PutObjectACL",method:"PUT",Bucket:z.Bucket,Region:z.Region,Key:z.Key,action:"acl",headers:Z,body:re,tracker:z.tracker},function(Te,Fe){if(Te)return fe(Te);fe(null,{statusCode:Fe.statusCode,headers:Fe.headers})})}function ye(z,fe){var Z=z.Headers;Z.Origin=z.Origin,Z["Access-Control-Request-Method"]=z.AccessControlRequestMethod,Z["Access-Control-Request-Headers"]=z.AccessControlRequestHeaders,qe.call(this,{Action:"name/cos:OptionsObject",method:"OPTIONS",Bucket:z.Bucket,Region:z.Region,Key:z.Key,headers:Z,tracker:z.tracker},function(re,we){if(re)return re.statusCode&&re.statusCode===403?fe(null,{OptionsForbidden:!0,statusCode:re.statusCode}):fe(re);var Se=we.headers||{};fe(null,{AccessControlAllowOrigin:Se["access-control-allow-origin"],AccessControlAllowMethods:Se["access-control-allow-methods"],AccessControlAllowHeaders:Se["access-control-allow-headers"],AccessControlExposeHeaders:Se["access-control-expose-headers"],AccessControlMaxAge:Se["access-control-max-age"],statusCode:we.statusCode,headers:we.headers})})}function Ve(z,fe){var Z=this,re=z.Headers;!re["Cache-Control"]&&!re["cache-control"]&&(re["Cache-Control"]="");var we=z.CopySource||"",Se=c.getSourceParams.call(this,we);if(!Se){fe(c.error(new Error("CopySource format error")));return}var Te=Se.Bucket,Fe=Se.Region,He=decodeURIComponent(Se.Key);qe.call(this,{Scope:[{action:"name/cos:GetObject",bucket:Te,region:Fe,prefix:He},{action:"name/cos:PutObject",bucket:z.Bucket,region:z.Region,prefix:z.Key}],method:"PUT",Bucket:z.Bucket,Region:z.Region,Key:z.Key,VersionId:z.VersionId,headers:z.Headers,tracker:z.tracker},function(lt,st){if(lt)return fe(lt);var ft=c.clone(st.CopyObjectResult||{}),Qe=Oe({ForcePathStyle:Z.options.ForcePathStyle,protocol:Z.options.Protocol,domain:Z.options.Domain,bucket:z.Bucket,region:z.Region,object:z.Key,isLocation:!0});c.extend(ft,{Location:Qe,statusCode:st.statusCode,headers:st.headers}),fe(null,ft)})}function Ue(z,fe){var Z=z.CopySource||"",re=c.getSourceParams.call(this,Z);if(!re){fe(c.error(new Error("CopySource format error")));return}var we=re.Bucket,Se=re.Region,Te=decodeURIComponent(re.Key);qe.call(this,{Scope:[{action:"name/cos:GetObject",bucket:we,region:Se,prefix:Te},{action:"name/cos:PutObject",bucket:z.Bucket,region:z.Region,prefix:z.Key}],method:"PUT",Bucket:z.Bucket,Region:z.Region,Key:z.Key,VersionId:z.VersionId,qs:{partNumber:z.PartNumber,uploadId:z.UploadId},headers:z.Headers,tracker:z.tracker},function(Fe,He){if(Fe)return fe(Fe);var lt=c.clone(He.CopyPartResult||{});c.extend(lt,{statusCode:He.statusCode,headers:He.headers}),fe(null,lt)})}function je(z,fe){var Z=z.Objects||[],re=z.Quiet;Z=c.isArray(Z)?Z:[Z];var we=c.json2xml({Delete:{Object:Z,Quiet:re||!1}}),Se=z.Headers;Se["Content-Type"]="application/xml",Se["Content-MD5"]=c.b64(c.md5(we));var Te=c.map(Z,function(Fe){return{action:"name/cos:DeleteObject",bucket:z.Bucket,region:z.Region,prefix:Fe.Key}});qe.call(this,{Scope:Te,method:"POST",Bucket:z.Bucket,Region:z.Region,body:we,action:"delete",headers:Se,tracker:z.tracker},function(Fe,He){if(Fe)return fe(Fe);var lt=He.DeleteResult||{},st=lt.Deleted||[],ft=lt.Error||[];st=c.isArray(st)?st:[st],ft=c.isArray(ft)?ft:[ft];var Qe=c.clone(lt);c.extend(Qe,{Error:ft,Deleted:st,statusCode:He.statusCode,headers:He.headers}),fe(null,Qe)})}function _e(z,fe){var Z=z.Headers;if(!z.RestoreRequest){fe(c.error(new Error("missing param RestoreRequest")));return}var re=z.RestoreRequest||{},we=c.json2xml({RestoreRequest:re});Z["Content-Type"]="application/xml",Z["Content-MD5"]=c.b64(c.md5(we)),qe.call(this,{Action:"name/cos:RestoreObject",method:"POST",Bucket:z.Bucket,Region:z.Region,Key:z.Key,VersionId:z.VersionId,body:we,action:"restore",headers:Z,tracker:z.tracker},fe)}function Ke(z,fe){var Z=z.Tagging||{},re=Z.TagSet||Z.Tags||z.Tags||[];re=c.clone(c.isArray(re)?re:[re]);var we=c.json2xml({Tagging:{TagSet:{Tag:re}}}),Se=z.Headers;Se["Content-Type"]="application/xml",Se["Content-MD5"]=c.b64(c.md5(we)),qe.call(this,{Action:"name/cos:PutObjectTagging",method:"PUT",Bucket:z.Bucket,Key:z.Key,Region:z.Region,body:we,action:"tagging",headers:Se,VersionId:z.VersionId,tracker:z.tracker},function(Te,Fe){if(Te&&Te.statusCode===204)return fe(null,{statusCode:Te.statusCode});if(Te)return fe(Te);fe(null,{statusCode:Fe.statusCode,headers:Fe.headers})})}function tt(z,fe){qe.call(this,{Action:"name/cos:GetObjectTagging",method:"GET",Key:z.Key,Bucket:z.Bucket,Region:z.Region,headers:z.Headers,action:"tagging",VersionId:z.VersionId,tracker:z.tracker},function(Z,re){if(Z){if(Z.statusCode===404&&Z.error&&(Z.error==="Not Found"||Z.error.Code==="NoSuchTagSet")){var we={Tags:[],statusCode:Z.statusCode};Z.headers&&(we.headers=Z.headers),fe(null,we)}else fe(Z);return}var Se=[];try{Se=re.Tagging.TagSet.Tag||[]}catch(Te){}Se=c.clone(c.isArray(Se)?Se:[Se]),fe(null,{Tags:Se,statusCode:re.statusCode,headers:re.headers})})}function $e(z,fe){qe.call(this,{Action:"name/cos:DeleteObjectTagging",method:"DELETE",Bucket:z.Bucket,Region:z.Region,Key:z.Key,headers:z.Headers,action:"tagging",VersionId:z.VersionId,tracker:z.tracker},function(Z,re){if(Z&&Z.statusCode===204)return fe(null,{statusCode:Z.statusCode});if(Z)return fe(Z);fe(null,{statusCode:re.statusCode,headers:re.headers})})}function ot(z,fe){var Z=z.SelectType;if(!Z)return fe(c.error(new Error("missing param SelectType")));var re=z.SelectRequest||{},we=c.json2xml({SelectRequest:re}),Se=z.Headers;Se["Content-Type"]="application/xml",Se["Content-MD5"]=c.b64(c.md5(we)),qe.call(this,{Action:"name/cos:GetObject",method:"POST",Bucket:z.Bucket,Region:z.Region,Key:z.Key,headers:z.Headers,action:"select",qs:{"select-type":z.SelectType},VersionId:z.VersionId,body:we,DataType:"arraybuffer",rawBody:!0,tracker:z.tracker},function(Te,Fe){if(Te&&Te.statusCode===204)return fe(null,{statusCode:Te.statusCode});if(Te)return fe(Te);var He=c.parseSelectPayload(Fe.body);fe(null,{statusCode:Fe.statusCode,headers:Fe.headers,Body:He.body,Payload:He.payload})})}function yt(z,fe){var Z=this,re=z.Headers,we=z.tracker;!re["Cache-Control"]&&!re["cache-control"]&&(re["Cache-Control"]=""),!re["Content-Type"]&&!re["content-type"]&&(re["Content-Type"]=z.Body&&z.Body.type||"");var Se=z.Body&&(z.UploadAddMetaMd5||Z.options.UploadAddMetaMd5);Se&&we&&we.setParams({md5StartTime:new Date().getTime()}),c.getBodyMd5(Se,z.Body,function(Te){Te&&(z.Headers["x-cos-meta-md5"]=Te),Se&&we&&we.setParams({md5EndTime:new Date().getTime()}),qe.call(Z,{Action:"name/cos:InitiateMultipartUpload",method:"POST",Bucket:z.Bucket,Region:z.Region,Key:z.Key,action:"uploads",headers:z.Headers,qs:z.Query,tracker:we},function(Fe,He){if(Fe)return we&&we.parent&&we.parent.setParams({errorNode:"multipartInit"}),fe(Fe);if(He=c.clone(He||{}),He&&He.InitiateMultipartUploadResult)return fe(null,c.extend(He.InitiateMultipartUploadResult,{statusCode:He.statusCode,headers:He.headers}));fe(null,He)})},z.onHashProgress)}function ct(z,fe){var Z=this;c.getFileSize("multipartUpload",z,function(){var re=z.tracker,we=Z.options.UploadCheckContentMd5;we&&re&&re.setParams({md5StartTime:new Date().getTime()}),c.getBodyMd5(we,z.Body,function(Se){Se&&(z.Headers["Content-MD5"]=c.b64(Se)),we&&re&&re.setParams({md5EndTime:new Date().getTime()}),re&&re.setParams({partNumber:z.PartNumber}),qe.call(Z,{Action:"name/cos:UploadPart",TaskId:z.TaskId,method:"PUT",Bucket:z.Bucket,Region:z.Region,Key:z.Key,qs:{partNumber:z.PartNumber,uploadId:z.UploadId},headers:z.Headers,onProgress:z.onProgress,body:z.Body||null,tracker:re},function(Te,Fe){if(Te)return re&&re.parent&&re.parent.setParams({errorNode:"multipartUpload"}),fe(Te);fe(null,{ETag:c.attr(Fe.headers,"etag",""),statusCode:Fe.statusCode,headers:Fe.headers})})})})}function dt(z,fe){for(var Z=this,re=z.UploadId,we=z.Parts,Se=z.tracker,Te=0,Fe=we.length;Te-1?ft(st.Authorization):"sign="+encodeURIComponent(st.Authorization)),st.SecurityToken&&(Qe+="&x-cos-security-token="+st.SecurityToken),st.ClientIP&&(Qe+="&clientIP="+st.ClientIP),st.ClientUA&&(Qe+="&clientUA="+st.ClientUA),st.Token&&(Qe+="&token="+st.Token),Se&&(Qe+="&"+Se),setTimeout(function(){fe(null,{Url:Qe})})}});return He?(Te+="?"+He.Authorization+(He.SecurityToken?"&x-cos-security-token="+He.SecurityToken:""),Se&&(Te+="&"+Se)):Se&&(Te+="?"+Se),Te}function de(z){var fe={GrantFullControl:[],GrantWrite:[],GrantRead:[],GrantReadAcp:[],GrantWriteAcp:[],ACL:""},Z={FULL_CONTROL:"GrantFullControl",WRITE:"GrantWrite",READ:"GrantRead",READ_ACP:"GrantReadAcp",WRITE_ACP:"GrantWriteAcp"},re=z&&z.AccessControlList||{},we=re.Grant;we&&(we=c.isArray(we)?we:[we]);var Se={READ:0,WRITE:0,FULL_CONTROL:0};return we&&we.length&&c.each(we,function(Te){Te.Grantee.ID==="qcs::cam::anyone:anyone"||Te.Grantee.URI==="http://cam.qcloud.com/groups/global/AllUsers"?Se[Te.Permission]=1:Te.Grantee.ID!==z.Owner.ID&&fe[Z[Te.Permission]].push('id="'+Te.Grantee.ID+'"')}),Se.FULL_CONTROL||Se.WRITE&&Se.READ?fe.ACL="public-read-write":Se.READ?fe.ACL="public-read":fe.ACL="private",c.each(Z,function(Te){fe[Te]=ke(fe[Te].join(","))}),fe}function ke(z){var fe=z.split(","),Z={},re,we;for(re=0;re"u"?"undefined":a(location))==="object"&&location.protocol==="http:"?"http:":"https:");Se||(["cn-south","cn-south-2","cn-north","cn-east","cn-southwest","sg"].indexOf(fe)>-1?Se="{Region}.myqcloud.com":Se="cos.{Region}.myqcloud.com",z.ForcePathStyle||(Se="{Bucket}."+Se)),Se=Se.replace(/\{\{AppId\}\}/gi,we).replace(/\{\{Bucket\}\}/gi,re).replace(/\{\{Region\}\}/gi,fe).replace(/\{\{.*?\}\}/gi,""),Se=Se.replace(/\{AppId\}/gi,we).replace(/\{BucketName\}/gi,re).replace(/\{Bucket\}/gi,Z).replace(/\{Region\}/gi,fe).replace(/\{.*?\}/gi,""),/^[a-zA-Z]+:\/\//.test(Se)||(Se=Fe+"//"+Se),Se.slice(-1)==="/"&&(Se=Se.slice(0,-1));var He=Se;return z.ForcePathStyle&&(He+="/"+Z),He+="/",Te&&(He+=c.camSafeUrlEncode(Te).replace(/%2F/g,"/")),z.isLocation&&(He=He.replace(/^https?:\/\//,"")),He}var We=function(fe){if(!fe.Bucket||!fe.Region)return"";var Z=fe.UseAccelerate===void 0?this.options.UseAccelerate:fe.UseAccelerate,re=fe.Url||Oe({ForcePathStyle:this.options.ForcePathStyle,protocol:this.options.Protocol,domain:this.options.Domain,bucket:fe.Bucket,region:Z?"accelerate":fe.Region}),we=re.replace(/^https?:\/\/([^/]+)(\/.*)?$/,"$1");return we};function Ze(z,fe){var Z=c.clone(z.Headers),re="";c.each(Z,function(at,et){(at===""||["content-type","cache-control","expires"].indexOf(et.toLowerCase())>-1)&&delete Z[et],et.toLowerCase()==="host"&&(re=at)});var we=z.ForceSignHost!==!1;!re&&z.SignHost&&we&&(Z.Host=z.SignHost);var Se=!1,Te=function(et,rt){Se||(Se=!0,rt&&rt.XCosSecurityToken&&!rt.SecurityToken&&(rt=c.clone(rt),rt.SecurityToken=rt.XCosSecurityToken,delete rt.XCosSecurityToken),fe&&fe(et,rt))},Fe=this,He=z.Bucket||"",lt=z.Region||"",st=z.Key||"";Fe.options.ForcePathStyle&&He&&(st=He+"/"+st);var ft="/"+st,Qe={},bt=z.Scope;if(!bt){var Et=z.Action||"",Bt=z.ResourceKey||z.Key||"";bt=z.Scope||[{action:Et,bucket:He,region:lt,prefix:Bt}]}var At=c.md5(JSON.stringify(bt));Fe._StsCache=Fe._StsCache||[],function(){var at,et;for(at=Fe._StsCache.length-1;at>=0;at--){et=Fe._StsCache[at];var rt=Math.round(c.getSkewTime(Fe.options.SystemClockOffset)/1e3)+30;if(et.StartTime&&rt=et.ExpiredTime){Fe._StsCache.splice(at,1);continue}if(!et.ScopeLimit||et.ScopeLimit&&et.ScopeKey===At){Qe=et;break}}}();var Tt=function(){var et="";Qe.StartTime&&z.Expires?et=Qe.StartTime+";"+(Qe.StartTime+z.Expires*1):Qe.StartTime&&Qe.ExpiredTime&&(et=Qe.StartTime+";"+Qe.ExpiredTime);var rt=c.getAuth({SecretId:Qe.TmpSecretId,SecretKey:Qe.TmpSecretKey,Method:z.Method,Pathname:ft,Query:z.Query,Headers:Z,Expires:z.Expires,UseRawKey:Fe.options.UseRawKey,SystemClockOffset:Fe.options.SystemClockOffset,KeyTime:et,ForceSignHost:we}),mt={Authorization:rt,SecurityToken:Qe.SecurityToken||Qe.XCosSecurityToken||"",Token:Qe.Token||"",ClientIP:Qe.ClientIP||"",ClientUA:Qe.ClientUA||"",SignFrom:"client"};Te(null,mt)},Nt=function(et){if(et.Authorization){var rt=!1,mt=et.Authorization;if(mt)if(mt.indexOf(" ")>-1)rt=!1;else if(mt.indexOf("q-sign-algorithm=")>-1&&mt.indexOf("q-ak=")>-1&&mt.indexOf("q-sign-time=")>-1&&mt.indexOf("q-key-time=")>-1&&mt.indexOf("q-url-param-list=")>-1)rt=!0;else try{mt=atob(mt),mt.indexOf("a=")>-1&&mt.indexOf("k=")>-1&&mt.indexOf("t=")>-1&&mt.indexOf("r=")>-1&&mt.indexOf("b=")>-1&&(rt=!0)}catch(Rt){}if(!rt)return c.error(new Error("getAuthorization callback params format error"))}else{if(!et.TmpSecretId)return c.error(new Error('getAuthorization callback params missing "TmpSecretId"'));if(!et.TmpSecretKey)return c.error(new Error('getAuthorization callback params missing "TmpSecretKey"'));if(!et.SecurityToken&&!et.XCosSecurityToken)return c.error(new Error('getAuthorization callback params missing "SecurityToken"'));if(!et.ExpiredTime)return c.error(new Error('getAuthorization callback params missing "ExpiredTime"'));if(et.ExpiredTime&&et.ExpiredTime.toString().length!==10)return c.error(new Error('getAuthorization callback params "ExpiredTime" should be 10 digits'));if(et.StartTime&&et.StartTime.toString().length!==10)return c.error(new Error('getAuthorization callback params "StartTime" should be 10 StartTime'))}return!1};if(Qe.ExpiredTime&&Qe.ExpiredTime-c.getSkewTime(Fe.options.SystemClockOffset)/1e3>60)Tt();else if(Fe.options.getAuthorization)Fe.options.getAuthorization.call(Fe,{Bucket:He,Region:lt,Method:z.Method,Key:st,Pathname:ft,Query:z.Query,Headers:Z,Scope:bt,SystemClockOffset:Fe.options.SystemClockOffset,ForceSignHost:we},function(at){typeof at=="string"&&(at={Authorization:at});var et=Nt(at);if(et)return Te(et);at.Authorization?Te(null,at):(Qe=at||{},Qe.Scope=bt,Qe.ScopeKey=At,Fe._StsCache.push(Qe),Tt())});else if(Fe.options.getSTS)Fe.options.getSTS.call(Fe,{Bucket:He,Region:lt},function(at){Qe=at||{},Qe.Scope=bt,Qe.ScopeKey=At,Qe.TmpSecretId||(Qe.TmpSecretId=Qe.SecretId),Qe.TmpSecretKey||(Qe.TmpSecretKey=Qe.SecretKey);var et=Nt(Qe);if(et)return Te(et);Fe._StsCache.push(Qe),Tt()});else return function(){var at=c.getAuth({SecretId:z.SecretId||Fe.options.SecretId,SecretKey:z.SecretKey||Fe.options.SecretKey,Method:z.Method,Pathname:ft,Query:z.Query,Headers:Z,Expires:z.Expires,UseRawKey:Fe.options.UseRawKey,SystemClockOffset:Fe.options.SystemClockOffset,ForceSignHost:we}),et={Authorization:at,SecurityToken:Fe.options.SecurityToken||Fe.options.XCosSecurityToken,SignFrom:"client"};return Te(null,et),et}();return""}function nt(z){var fe=this,Z=!1,re=!1,we=!1,Se=z.headers&&(z.headers.date||z.headers.Date)||z.error&&z.error.ServerTime;try{var Te=z.error.Code,Fe=z.error.Message;(Te==="RequestTimeTooSkewed"||Te==="AccessDenied"&&Fe==="Request has expired")&&(re=!0)}catch(lt){}if(z)if(re&&Se){var He=Date.parse(Se);this.options.CorrectClockSkew&&Math.abs(c.getSkewTime(this.options.SystemClockOffset)-He)>=3e4&&(console.error("error: Local time is too skewed."),this.options.SystemClockOffset=He-Date.now(),Z=!0)}else Math.floor(z.statusCode/100)===5?Z=!0:z.message==="CORS blocked or network error"&&(we=!0,Z=fe.options.AutoSwitchHost);return{canRetry:Z,networkError:we}}function vt(z){var fe=z.requestUrl,Z=z.clientCalcSign,re=z.networkError;if(!this.options.AutoSwitchHost||!fe||!Z||!re)return!1;var we=/^https?:\/\/[^\/]*\.cos\.[^\/]*\.myqcloud\.com(\/.*)?$/,Se=/^https?:\/\/[^\/]*\.cos\.accelerate\.myqcloud\.com(\/.*)?$/,Te=we.test(fe)&&!Se.test(fe);return Te}function qe(z,fe){var Z=this;!z.headers&&(z.headers={}),!z.qs&&(z.qs={}),z.VersionId&&(z.qs.versionId=z.VersionId),z.qs=c.clearKey(z.qs),z.headers&&(z.headers=c.clearKey(z.headers)),z.qs&&(z.qs=c.clearKey(z.qs));var re=c.clone(z.qs);z.action&&(re[z.action]="");var we=z.url||z.Url,Se=z.SignHost||We.call(this,{Bucket:z.Bucket,Region:z.Region,Url:we}),Te=z.tracker,Fe=function He(lt){var st=Z.options.SystemClockOffset;Te&&Te.setParams({signStartTime:new Date().getTime(),httpRetryTimes:lt-1}),z.SwitchHost&&(Se=Se.replace(/myqcloud.com/,"tencentcos.cn")),Ze.call(Z,{Bucket:z.Bucket||"",Region:z.Region||"",Method:z.method,Key:z.Key,Query:re,Headers:z.headers,SignHost:Se,Action:z.Action,ResourceKey:z.ResourceKey,Scope:z.Scope,ForceSignHost:Z.options.ForceSignHost,SwitchHost:z.SwitchHost},function(ft,Qe){if(ft){fe(ft);return}Te&&Te.setParams({signEndTime:new Date().getTime(),httpStartTime:new Date().getTime()}),z.AuthData=Qe,xt.call(Z,z,function(bt,Et){Te&&Te.setParams({httpEndTime:new Date().getTime()});var Bt=!1,At=!1;if(bt){var Tt=nt.call(Z,bt);Bt=Tt.canRetry||st!==Z.options.SystemClockOffset,At=Tt.networkError}if(bt&<<2&&Bt){z.headers&&(delete z.headers.Authorization,delete z.headers.token,delete z.headers.clientIP,delete z.headers.clientUA,z.headers["x-cos-security-token"]&&delete z.headers["x-cos-security-token"],z.headers["x-ci-security-token"]&&delete z.headers["x-ci-security-token"]);var Nt=vt.call(Z,{requestUrl:(bt==null?void 0:bt.url)||"",clientCalcSign:Qe.SignFrom==="client",networkError:At});z.SwitchHost=Nt,He(lt+1)}else fe(bt,Et)})})};Fe(1)}function xt(z,fe){var Z=this,re=z.TaskId;if(!(re&&!Z._isRunningTask(re))){var we=z.Bucket,Se=z.Region,Te=z.Key,Fe=z.method||"GET",He=z.Url||z.url,lt=z.body,st=z.rawBody;Z.options.UseAccelerate&&(Se="accelerate"),He=He||Oe({ForcePathStyle:Z.options.ForcePathStyle,protocol:Z.options.Protocol,domain:Z.options.Domain,bucket:we,region:Se,object:Te}),z.SwitchHost&&(He=He.replace(/myqcloud.com/,"tencentcos.cn"));var ft=Te?He:"";z.action&&(He=He+"?"+(c.isIOS_QQ?"".concat(z.action,"="):z.action)),z.qsStr&&(He.indexOf("?")>-1?He=He+"&"+z.qsStr:He=He+"?"+z.qsStr);var Qe={method:Fe,url:He,headers:z.headers,qs:z.qs,body:lt},bt="x-cos-security-token";if(c.isCIHost(He)&&(bt="x-ci-security-token"),Qe.headers.Authorization=z.AuthData.Authorization,z.AuthData.Token&&(Qe.headers.token=z.AuthData.Token),z.AuthData.ClientIP&&(Qe.headers.clientIP=z.AuthData.ClientIP),z.AuthData.ClientUA&&(Qe.headers.clientUA=z.AuthData.ClientUA),z.AuthData.SecurityToken&&(Qe.headers[bt]=z.AuthData.SecurityToken),Qe.headers&&(Qe.headers=c.clearKey(Qe.headers)),Qe=c.clearKey(Qe),z.onProgress&&typeof z.onProgress=="function"){var Et=lt&&(lt.size||lt.length)||0;Qe.onProgress=function(rt){if(!(re&&!Z._isRunningTask(re))){var mt=rt?rt.loaded:0;z.onProgress({loaded:mt,total:Et})}}}z.onDownloadProgress&&(Qe.onDownloadProgress=z.onDownloadProgress),z.DataType&&(Qe.dataType=z.DataType),this.options.Timeout&&(Qe.timeout=this.options.Timeout),Z.options.ForcePathStyle&&(Qe.pathStyle=Z.options.ForcePathStyle),Z.emit("before-send",Qe);var Bt=Qe.url.includes("accelerate."),At=Qe.qs?Object.keys(Qe.qs).map(function(rt){return"".concat(rt,"=").concat(Qe.qs[rt])}).join("&"):"",Tt=At?Qe.url+"?"+At:Qe.url;if(z.tracker){var Nt;z.tracker.setParams({url:Tt,httpMethod:Qe.method,accelerate:Bt,httpSize:((Nt=Qe.body)===null||Nt===void 0?void 0:Nt.size)||0}),z.tracker.parent&&!z.tracker.parent.params.url&&z.tracker.parent.setParams({url:ft,accelerate:Bt})}var at=(Z.options.Request||l)(Qe,function(rt){if(!(rt&&rt.error==="abort")){var mt={options:Qe,error:rt&&rt.error,statusCode:rt&&rt.statusCode||0,statusMessage:rt&&rt.statusMessage||"",headers:rt&&rt.headers||{},body:rt&&rt.body};Z.emit("after-receive",mt);var Rt=mt.error,kt=mt.body,Dt={statusCode:mt.statusCode,statusMessage:mt.statusMessage,headers:mt.headers},Ht,Vt=function($t,Xt){if(re&&Z.off("inner-kill-task",et),!Ht){Ht=!0;var Jt={};Dt&&Dt.statusCode&&(Jt.statusCode=Dt.statusCode),Dt&&Dt.headers&&(Jt.headers=Dt.headers),$t?(Qe.url&&(Jt.url=Qe.url),Qe.method&&(Jt.method=Qe.method),$t=c.extend($t||{},Jt),fe($t,null)):(Xt=c.extend(Xt||{},Jt),fe(null,Xt)),at=null}};if(Rt)return Vt(c.error(Rt));var Qt=Dt.statusCode,ni=Math.floor(Qt/100)===2;if(st){if(ni)return Vt(null,{body:kt});if(kt instanceof Blob){c.readAsBinaryString(kt,function(hi){var $t=c.parseResBody(hi),Xt=$t.Error||$t;return Vt(c.error(new Error(Xt.Message||"response body error"),{code:Xt.Code,error:Xt}))});return}}var ri=c.parseResBody(kt),qt=ri.Error||ri;ni?Vt(null,ri):qt?Vt(c.error(new Error(qt.Message),{code:qt.Code,error:qt})):Qt?Vt(c.error(new Error(Dt.statusMessage),{code:""+Qt})):Qt&&Vt(c.error(new Error("statusCode error")))}}),et=function rt(mt){mt.TaskId===re&&(at&&at.abort&&at.abort(),Z.off("inner-kill-task",rt))};re&&Z.on("inner-kill-task",et)}}var Mt={getService:u,putBucket:m,headBucket:g,getBucket:d,deleteBucket:y,putBucketAcl:A,getBucketAcl:b,putBucketCors:S,getBucketCors:E,deleteBucketCors:x,getBucketLocation:C,getBucketPolicy:k,putBucketPolicy:P,deleteBucketPolicy:I,putBucketTagging:M,getBucketTagging:T,deleteBucketTagging:F,putBucketLifecycle:D,getBucketLifecycle:N,deleteBucketLifecycle:O,putBucketVersioning:B,getBucketVersioning:V,putBucketReplication:R,getBucketReplication:Q,deleteBucketReplication:_,putBucketWebsite:K,getBucketWebsite:G,deleteBucketWebsite:U,putBucketReferer:$,getBucketReferer:q,putBucketDomain:W,getBucketDomain:xe,deleteBucketDomain:ue,putBucketOrigin:Y,getBucketOrigin:J,deleteBucketOrigin:ce,putBucketLogging:ge,getBucketLogging:Ee,putBucketInventory:De,postBucketInventory:ie,getBucketInventory:ae,listBucketInventory:H,deleteBucketInventory:ve,putBucketAccelerate:pe,getBucketAccelerate:ee,putBucketEncryption:ne,getBucketEncryption:me,deleteBucketEncryption:Be,getObject:Me,headObject:oe,listObjectVersions:Ae,putObject:Le,deleteObject:Ce,getObjectAcl:he,putObjectAcl:Pe,optionsObject:ye,putObjectCopy:Ve,deleteMultipleObject:je,restoreObject:_e,putObjectTagging:Ke,getObjectTagging:tt,deleteObjectTagging:$e,selectObjectContent:ot,appendObject:Gt,uploadPartCopy:Ue,multipartInit:yt,multipartUpload:ct,multipartComplete:dt,multipartList:Pt,multipartListPart:ht,multipartAbort:pt,request:Ct,getObjectUrl:te,getAuth:Je};function Ft(z,fe,Z){c.each(["Cors","Acl"],function(re){if(z.slice(-re.length)===re){var we=z.slice(0,-re.length)+re.toUpperCase(),Se=c.apiWrapper(z,fe),Te=!1;Z[we]=function(){!Te&&console.warn("warning: cos."+we+" has been deprecated. Please Use cos."+z+" instead."),Te=!0,Se.apply(this,arguments)}}})}r.exports.init=function(z,fe){fe.transferToTaskMethod(Mt,"putObject"),c.each(Mt,function(Z,re){z.prototype[re]=c.apiWrapper(re,Z),Ft(re,Z,z.prototype)})}},"./src/cos.js":function(r,s,o){var a=o("./src/util.js"),l=o("./src/event.js"),c=o("./src/task.js"),u=o("./src/base.js"),m=o("./src/advance.js"),g=o("./package.json"),d={AppId:"",SecretId:"",SecretKey:"",SecurityToken:"",ChunkRetryTimes:2,FileParallelLimit:3,ChunkParallelLimit:3,ChunkSize:1024*1024,SliceSize:1024*1024,CopyChunkParallelLimit:20,CopyChunkSize:1024*1024*10,CopySliceSize:1024*1024*10,MaxPartNumber:1e4,ProgressInterval:1e3,Domain:"",ServiceDomain:"",Protocol:"",CompatibilityMode:!1,ForcePathStyle:!1,UseRawKey:!1,Timeout:0,CorrectClockSkew:!0,SystemClockOffset:0,UploadCheckContentMd5:!1,UploadQueueSize:1e4,UploadAddMetaMd5:!1,UploadIdCacheLimit:50,UseAccelerate:!1,ForceSignHost:!0,AutoSwitchHost:!0,CopySourceParser:null,ObjectKeySimplifyCheck:!0,DeepTracker:!1,TrackerDelay:5e3,CustomId:"",BeaconReporter:null,ClsReporter:null},y=function(b){if(this.options=a.extend(a.clone(d),b||{}),this.options.FileParallelLimit=Math.max(1,this.options.FileParallelLimit),this.options.ChunkParallelLimit=Math.max(1,this.options.ChunkParallelLimit),this.options.ChunkRetryTimes=Math.max(0,this.options.ChunkRetryTimes),this.options.ChunkSize=Math.max(1024*1024,this.options.ChunkSize),this.options.CopyChunkParallelLimit=Math.max(1,this.options.CopyChunkParallelLimit),this.options.CopyChunkSize=Math.max(1024*1024,this.options.CopyChunkSize),this.options.CopySliceSize=Math.max(0,this.options.CopySliceSize),this.options.MaxPartNumber=Math.max(1024,Math.min(1e4,this.options.MaxPartNumber)),this.options.Timeout=Math.max(0,this.options.Timeout),this.options.EnableReporter=this.options.BeaconReporter||this.options.ClsReporter,this.options.AppId&&console.warn('warning: AppId has been deprecated, Please put it at the end of parameter Bucket(E.g: "test-1250000000").'),this.options.SecretId&&this.options.SecretId.indexOf(" ")>-1&&(console.error("error: SecretId格式错误,请检查"),console.error("error: SecretId format is incorrect. Please check")),this.options.SecretKey&&this.options.SecretKey.indexOf(" ")>-1&&(console.error("error: SecretKey格式错误,请检查"),console.error("error: SecretKey format is incorrect. Please check")),a.isNode()&&(console.log("Tip: Next.js、Nuxt.js 等服务端渲染技术可正常使用JavaScript SDK,请忽略下方 nodejs 环境警告"),console.warn("warning: cos-js-sdk-v5 不支持 nodejs 环境使用,请改用 cos-nodejs-sdk-v5,参考文档: https://cloud.tencent.com/document/product/436/8629"),console.warn("warning: cos-js-sdk-v5 does not support nodejs environment. Please use cos-nodejs-sdk-v5 instead. See: https://cloud.tencent.com/document/product/436/8629")),this.options.ForcePathStyle)throw console.warn("cos-js-sdk-v5不再支持使用path-style,仅支持使用virtual-hosted-style,参考文档:https://cloud.tencent.com/document/product/436/96243"),new Error("ForcePathStyle is not supported");l.init(this),c.init(this)};u.init(y,c),m.init(y,c),y.util={md5:a.md5,xml2json:a.xml2json,json2xml:a.json2xml,encodeBase64:a.encodeBase64},y.getAuthorization=a.getAuth,y.version=g.version,r.exports=y},"./src/event.js":function(r,s){var o=function(c){var u={},m=function(d){return!u[d]&&(u[d]=[]),u[d]};c.on=function(g,d){g==="task-list-update"&&console.warn('warning: Event "'+g+'" has been deprecated. Please use "list-update" instead.'),m(g).push(d)},c.off=function(g,d){for(var y=m(g),A=y.length-1;A>=0;A--)d===y[A]&&y.splice(A,1)},c.emit=function(g,d){for(var y=m(g).map(function(b){return b}),A=0;A=0;C--){var P=u[C][2];(!P||P+c=0;P--){var k=u[P];k[0]===E&&k[1]===x&&u.splice(P,1)}u.unshift([E,x,Math.round(Date.now()/1e3)]),u.length>C&&u.splice(C),A()}},removeUploadId:function(E){y.call(this),delete b.using[E];for(var x=u.length-1;x>=0;x--)u[x][1]===E&&u.splice(x,1);A()}};r.exports=b},"./src/task.js":function(r,s,o){var a=o("./src/session.js"),l=o("./src/util.js"),c={},u=function(d,y){c[y]=d[y],d[y]=function(A,b){A.SkipTask?c[y].call(this,A,b):this._addTask(y,A,b)}},m=function(d){var y=[],A={},b=0,S=0,E=function(T){var F={id:T.id,Bucket:T.Bucket,Region:T.Region,Key:T.Key,FilePath:T.FilePath,state:T.state,loaded:T.loaded,size:T.size,speed:T.speed,percent:T.percent,hashPercent:T.hashPercent,error:T.error};return T.FilePath&&(F.FilePath=T.FilePath),T._custom&&(F._custom=T._custom),F},x=function(){var M,T=function(){M=0,d.emit("task-list-update",{list:l.map(y,E)}),d.emit("list-update",{list:l.map(y,E)})};return function(){M||(M=setTimeout(T))}}(),C=function(){if(!(y.length<=d.options.UploadQueueSize)){for(var T=0;Td.options.UploadQueueSize;){var F=y[T].state==="waiting"||y[T].state==="checking"||y[T].state==="uploading";!y[T]||!F?(A[y[T].id]&&delete A[y[T].id],y.splice(T,1),S--):T++}x()}},P=function M(){if(!(b>=d.options.FileParallelLimit)){for(;y[S]&&y[S].state!=="waiting";)S++;if(!(S>=y.length)){var T=y[S];S++,b++,T.state="checking",T.params.onTaskStart&&T.params.onTaskStart(E(T)),!T.params.UploadData&&(T.params.UploadData={});var F=l.formatParams(T.api,T.params);c[T.api].call(d,F,function(D,N){d._isRunningTask(T.id)&&((T.state==="checking"||T.state==="uploading")&&(T.state=D?"error":"success",D&&(T.error=D),b--,x(),M(),T.callback&&T.callback(D,N),T.state==="success"&&(T.params&&(delete T.params.UploadData,delete T.params.Body,delete T.params),delete T.callback)),C())}),x(),setTimeout(M)}}},k=function(T,F){var D=A[T];if(D){var N=D&&D.state==="waiting",O=D&&(D.state==="checking"||D.state==="uploading");if(F==="canceled"&&D.state!=="canceled"||F==="paused"&&N||F==="paused"&&O){D.state=F,d.emit("inner-kill-task",{TaskId:T,toState:F});try{var B=D&&D.params&&D.params.UploadData.UploadId}catch(V){}F==="canceled"&&B&&a.removeUsing(B),x(),O&&(b--,P()),F==="canceled"&&(D.params&&(delete D.params.UploadData,delete D.params.Body,delete D.params),delete D.callback)}C()}};d._addTasks=function(M){l.each(M,function(T){d._addTask(T.api,T.params,T.callback,!0)}),x()};var I=!0;d._addTask=function(M,T,F,D){T=l.formatParams(M,T);var N=l.uuid();T.TaskId=N,T.onTaskReady&&T.onTaskReady(N),T.TaskReady&&(T.TaskReady(N),I&&console.warn('warning: Param "TaskReady" has been deprecated. Please use "onTaskReady" instead.'),I=!1);var O={params:T,callback:F,api:M,index:y.length,id:N,Bucket:T.Bucket,Region:T.Region,Key:T.Key,FilePath:T.FilePath||"",state:"waiting",loaded:0,size:0,speed:0,percent:0,hashPercent:0,error:null,_custom:T._custom},B=T.onHashProgress;T.onHashProgress=function(R){d._isRunningTask(O.id)&&(O.hashPercent=R.percent,B&&B(R),x())};var V=T.onProgress;return T.onProgress=function(R){d._isRunningTask(O.id)&&(O.state==="checking"&&(O.state="uploading"),O.loaded=R.loaded,O.speed=R.speed,O.percent=R.percent,V&&V(R),x())},l.getFileSize(M,T,function(R,Q){if(R)return F(l.error(R));A[N]=O,y.push(O),O.size=Q,!D&&x(),P(),C()}),N},d._isRunningTask=function(M){var T=A[M];return!!(T&&(T.state==="checking"||T.state==="uploading"))},d.getTaskList=function(){return l.map(y,E)},d.cancelTask=function(M){k(M,"canceled")},d.pauseTask=function(M){k(M,"paused")},d.restartTask=function(M){var T=A[M];T&&(T.state==="paused"||T.state==="error")&&(T.state="waiting",x(),S=Math.min(S,T.index),P())},d.isUploadRunning=function(){return b||S"u"?"undefined":c(navigator))==="object"){var F=navigator.connection||navigator.mozConnection||navigator.webkitConnection;return(F==null?void 0:F.type)||(F==null?void 0:F.effectiveType)||"unknown"}return"unknown"},getProtocol:function(){return(typeof location>"u"?"undefined":c(location))==="object"?location.protocol.replace(/:/,""):"unknown protocol"},getOsType:function(){if((typeof navigator>"u"?"undefined":c(navigator))!=="object")return"unknown os";var F=navigator.userAgent.toLowerCase(),D=/macintosh|mac os x/i.test(navigator.userAgent);return F.indexOf("win32")>=0||F.indexOf("wow32")>=0?"win32":F.indexOf("win64")>=0||F.indexOf("wow64")>=0?"win64":D?"mac":"unknown os"},isMobile:function(){var F=/(phone|pad|pod|iPhone|iPod|ios|iPad|Android|Mobile|BlackBerry|IEMobile|MQQBrowser|JUC|Fennec|wOSBrowser|BrowserNG|WebOS|Symbian|Windows Phone)/i;return!!((typeof navigator>"u"?"undefined":c(navigator))==="object"&&navigator.userAgent.match(F))},isAndroid:function(){var F=/(Android|Adr|Linux)/i;return!!((typeof navigator>"u"?"undefined":c(navigator))==="object"&&navigator.userAgent.match(F))},isIOS:function(){var F=/(iPhone|iPod|iPad|iOS)/i;return!!((typeof navigator>"u"?"undefined":c(navigator))==="object"&&navigator.userAgent.match(F))},isOtherMobile:function(){return A&&!isAndroid&&!isIOS},getUA:function(){if((typeof navigator>"u"?"undefined":c(navigator))!=="object")return"unknown device";var F=navigator.userAgent;return F}},A=y.isMobile(),b=y.isAndroid()?"android":y.isIOS?"ios":"other_mobile",S=y.getOsType(),E=A?b:S,x=y.getUA(),C=y.getProtocol(),P=function(F){return["putObject","sliceUploadFile","uploadFile","uploadFiles"].includes(F)?"UploadTask":F==="getObject"?"DownloadTask":["putObjectCopy","sliceCopyFile"].includes(F)?"CopyTask":F};function k(T){return T.replace(/([A-Z])/g,"_$1").toLowerCase()}function I(T){var F={},D=["sdkVersionName","sdkVersionCode","osName","networkType","requestName","requestResult","bucket","region","appid","accelerate","url","host","requestPath","userAgent","networkProtocol","httpMethod","httpSize","httpSpeed","httpTookTime","httpMd5","httpSign","httpFullTime","httpDomain","partNumber","httpRetryTimes","customId","traceId","realApi"],N=[].concat(D,["errorNode","errorCode","errorName","errorMessage","errorRequestId","errorHttpCode","errorServiceName","errorType","fullError"]),O=T.requestResult==="Success"?D:N;for(var B in T)if(O.includes(B)){var V=k(B);F[V]=T[B]}return F.request_name=T.realApi?P(T.realApi):T.requestName,F}var M=function(){function T(F){a(this,T);var D=F.parent,N=F.traceId,O=F.bucket,B=F.region,V=F.apiName,R=F.realApi,Q=F.httpMethod,_=F.fileKey,K=F.fileSize,G=F.accelerate,U=F.customId,$=F.delay,q=F.deepTracker,W=F.Beacon,xe=F.clsReporter,ue=O&&O.substr(O.lastIndexOf("-")+1)||"";this.parent=D,this.deepTracker=q,this.delay=$,xe&&!this.clsReporter&&(this.clsReporter=xe),this.params={sdkVersionName:"cos-js-sdk-v5",sdkVersionCode:u.version,osName:E,networkType:"",requestName:V||"",requestResult:"",realApi:R,bucket:O,region:B,accelerate:G,httpMethod:Q,url:"",host:"",httpDomain:"",requestPath:_||"",userAgent:x,networkProtocol:C,errorType:"",errorCode:"",errorName:"",errorMessage:"",errorRequestId:"",errorHttpCode:0,errorServiceName:"",errorNode:"",httpTookTime:0,httpSize:K||0,httpMd5:0,httpSign:0,httpFullTime:0,httpSpeed:0,md5StartTime:0,md5EndTime:0,signStartTime:0,signEndTime:0,httpStartTime:0,httpEndTime:0,startTime:new Date().getTime(),endTime:0,traceId:N||y.getUid(),appid:ue,partNumber:0,httpRetryTimes:0,customId:U||"",partTime:0},W&&(this.beacon=g(W,$))}return l(T,[{key:"formatResult",value:function(D,N){var O,B,V,R,Q,_,K=new Date().getTime(),G=y.getNetType(),U=D?(D==null?void 0:D.code)||(D==null||(O=D.error)===null||O===void 0?void 0:O.code)||(D==null||(B=D.error)===null||B===void 0?void 0:B.Code):"",$=D?(D==null?void 0:D.message)||(D==null||(V=D.error)===null||V===void 0?void 0:V.message)||(D==null||(R=D.error)===null||R===void 0?void 0:R.Message):"",q=$,W=D?(D==null?void 0:D.resource)||(D==null||(Q=D.error)===null||Q===void 0?void 0:Q.resource)||(D==null||(_=D.error)===null||_===void 0?void 0:_.Resource):"",xe=D?D==null?void 0:D.statusCode:N.statusCode,ue=D?(D==null?void 0:D.headers)&&(D==null?void 0:D.headers["x-cos-request-id"]):(N==null?void 0:N.headers)&&(N==null?void 0:N.headers["x-cos-request-id"]),Y=D?ue?"Server":"Client":"";this.params.requestName==="getObject"&&(this.params.httpSize=N?N.headers&&N.headers["content-length"]:0);var J=this.params.realApi==="sliceUploadFile",ce=this.params.realApi==="sliceCopyFile";if(J||ce){var ge=this.params.httpSize/1024/this.params.partTime;Object.assign(this.params,{httpSpeed:ge<0?0:ge.toFixed(3)})}else{var Ee=K-this.params.startTime,Ie=this.params.httpEndTime-this.params.httpStartTime,De=this.params.httpSize/1024/(Ie/1e3),ie=this.params.md5EndTime-this.params.md5StartTime,ae=this.params.signEndTime-this.params.signStartTime;this.parent&&(this.parent.addParamValue("httpTookTime",d(Ie)),this.parent.addParamValue("httpFullTime",d(Ee)),this.parent.addParamValue("httpMd5",d(ie)),this.parent.addParamValue("httpSign",d(ae)),["multipartUpload","uploadPartCopy","putObjectCopy"].includes(this.params.requestName)&&this.parent.addParamValue("partTime",d(Ie))),Object.assign(this.params,{httpFullTime:d(Ee),httpMd5:d(ie),httpSign:d(ae),httpTookTime:d(Ie),httpSpeed:De<0?0:De.toFixed(3)})}if(Object.assign(this.params,{networkType:G,requestResult:D?"Failure":"Success",errorType:Y,errorCode:U,errorHttpCode:xe,errorName:q,errorMessage:$,errorServiceName:W,errorRequestId:ue}),D&&(!U||!$)&&(this.params.fullError=D?JSON.stringify(D):""),this.params.url){try{var H=/^http(s)?:\/\/(.*?)\//.exec(this.params.url);this.params.host=H[2]}catch(ve){this.params.host=this.params.url}this.params.httpDomain=this.params.host}}},{key:"report",value:function(D,N){if(!(!this.beacon&&!this.clsReporter)){this.formatResult(D,N);var O=I(this.params);this.beacon&&this.sendEventsToBeacon(O),this.clsReporter&&this.sendEventsToCLS(O)}}},{key:"setParams",value:function(D){Object.assign(this.params,D)}},{key:"addParamValue",value:function(D,N){this.params[D]=(+this.params[D]+ +N).toFixed(3)}},{key:"sendEventsToBeacon",value:function(D){var N=this.params.requestName==="sliceUploadFile"||this.params.realApi==="sliceUploadFile";if(!(N&&!this.deepTracker)){var O="qcloud_track_cos_sdk";this.delay===0?this.beacon&&this.beacon.onDirectUserAction(O,D):this.beacon&&this.beacon.onUserAction(O,D)}}},{key:"sendEventsToCLS",value:function(D){var N=this.delay===0;this.clsReporter.log(D,N)}},{key:"generateSubTracker",value:function(D){return Object.assign(D,{parent:this,deepTracker:this.deepTracker,traceId:this.params.traceId,bucket:this.params.bucket,region:this.params.region,accelerate:this.params.accelerate,fileKey:this.params.requestPath,customId:this.params.customId,delay:this.delay,clsReporter:this.clsReporter}),new T(D)}}]),T}();r.exports=M},"./src/util.js":function(r,s,o){(function(a){var l=o("./node_modules/@babel/runtime/helpers/typeof.js");function c(Ce,he){var Pe=typeof Symbol<"u"&&Ce[Symbol.iterator]||Ce["@@iterator"];if(!Pe){if(Array.isArray(Ce)||(Pe=u(Ce))||he&&Ce&&typeof Ce.length=="number"){Pe&&(Ce=Pe);var ye=0,Ve=function(){};return{s:Ve,n:function(){return ye>=Ce.length?{done:!0}:{done:!1,value:Ce[ye++]}},e:function(tt){throw tt},f:Ve}}throw new TypeError(`Invalid attempt to iterate non-iterable instance. In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var Ue=!0,je=!1,_e;return{s:function(){Pe=Pe.call(Ce)},n:function(){var tt=Pe.next();return Ue=tt.done,tt},e:function(tt){je=!0,_e=tt},f:function(){try{!Ue&&Pe.return!=null&&Pe.return()}finally{if(je)throw _e}}}}function u(Ce,he){if(Ce){if(typeof Ce=="string")return m(Ce,he);var Pe=Object.prototype.toString.call(Ce).slice(8,-1);if(Pe==="Object"&&Ce.constructor&&(Pe=Ce.constructor.name),Pe==="Map"||Pe==="Set")return Array.from(Ce);if(Pe==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(Pe))return m(Ce,he)}}function m(Ce,he){(he==null||he>Ce.length)&&(he=Ce.length);for(var Pe=0,ye=new Array(he);PeUe?1:-1})}var C=function(he,Pe){var ye,Ve,Ue,je=[],_e=x(he);for(ye=0;ye<_e.length;ye++)Ve=_e[ye],Ue=he[Ve]===void 0||he[Ve]===null?"":""+he[Ve],Ve=Pe?E(Ve).toLowerCase():E(Ve),Ue=E(Ue)||"",je.push(Ve+"="+Ue);return je.join("&")},P=["cache-control","content-disposition","content-encoding","content-length","content-md5","expect","expires","host","if-match","if-modified-since","if-none-match","if-unmodified-since","origin","range","transfer-encoding","pic-operations"],k=function(he){var Pe={};for(var ye in he){var Ve=ye.toLowerCase();(Ve.indexOf("x-cos-")>-1||P.indexOf(Ve)>-1)&&(Pe[ye]=he[ye])}return Pe},I=function(he){he=he||{};var Pe=he.SecretId,ye=he.SecretKey,Ve=he.KeyTime,Ue=(he.method||he.Method||"get").toLowerCase(),je=G(he.Query||he.params||{}),_e=k(G(he.Headers||he.headers||{})),Ke=he.Key||"",tt;he.UseRawKey?tt=he.Pathname||he.pathname||"/"+Ke:(tt=he.Pathname||he.pathname||Ke,tt.indexOf("/")!==0&&(tt="/"+tt));var $e=he.ForceSignHost!==!1;if(!_e.Host&&!_e.host&&he.Bucket&&he.Region&&$e&&(_e.Host=he.Bucket+".cos."+he.Region+".myqcloud.com"),!Pe)throw new Error("missing param SecretId");if(!ye)throw new Error("missing param SecretKey");var ot=Math.round(H(he.SystemClockOffset)/1e3)-1,yt=ot,ct=he.Expires||he.expires;ct===void 0?yt+=900:yt+=ct*1||0;var dt="sha1",Pt=Pe,ht=Ve||ot+";"+yt,pt=Ve||ot+";"+yt,Ct=x(_e,!0).join(";").toLowerCase(),Gt=x(je,!0).join(";").toLowerCase(),Je=d.HmacSHA1(pt,ye).toString(),te=[Ue,tt,Le.obj2str(je,!0),Le.obj2str(_e,!0),""].join(` `),de=["sha1",ht,d.SHA1(te).toString(),""].join(` `),ke=d.HmacSHA1(de,Je).toString(),Oe=["q-sign-algorithm="+dt,"q-ak="+Pt,"q-sign-time="+ht,"q-key-time="+pt,"q-header-list="+Ct,"q-url-param-list="+Gt,"q-signature="+ke].join("&");return Oe},M=function(he,Pe,ye){var Ve=Pe/8,Ue=he.slice(ye,ye+Ve);return new Uint8Array(Ue).reverse(),new{8:Uint8Array,16:Uint16Array,32:Uint32Array}[Pe](Ue)[0]},T=function(he,Pe,ye,Ve){var Ue=he.slice(Pe,ye),je="";return new Uint8Array(Ue).forEach(function(_e){je+=String.fromCharCode(_e)}),Ve&&(je=decodeURIComponent(escape(je))),je},F=function(he){for(var Pe={},ye=T(he),Ve={records:[]};he.byteLength;){var Ue=M(he,32,0),je=M(he,32,4),_e=Ue-je-16,Ke=0,tt;for(he=he.slice(12);KeparseInt(Ve[Ue])?1:-1;return 0},he=function(ye){if(!ye)return!1;var Ve=(ye.match(/Chrome\/([.\d]+)/)||[])[1],Ue=(ye.match(/QBCore\/([.\d]+)/)||[])[1],je=(ye.match(/QQBrowser\/([.\d]+)/)||[])[1],_e=Ve&&Ce(Ve,"53.0.2785.116")<0&&Ue&&Ce(Ue,"3.53.991.400")<0&&je&&Ce(je,"9.0.2524.400")<=0||!1;return _e};return he(typeof navigator<"u"&&navigator.userAgent)}(),R=function(he,Pe,ye,Ve,Ue){var je;if(he.slice?je=he.slice(Pe,ye):he.mozSlice?je=he.mozSlice(Pe,ye):he.webkitSlice&&(je=he.webkitSlice(Pe,ye)),Ve&&V){var _e=new FileReader;_e.onload=function(Ke){je=null,Ue(new Blob([_e.result]))},_e.readAsArrayBuffer(je)}else Ue(je)},Q=function(he,Pe,ye,Ve){ye=ye||N,he?typeof Pe=="string"?ye(Le.md5(Pe,!0)):Blob&&Pe instanceof Blob?Le.getFileMd5(Pe,function(Ue,je){ye(je)},Ve):ye():ye()},_=1024*1024,K=function(he,Pe,ye){var Ve=he.size,Ue=0,je=g.getCtx(),_e=function Ke(tt){if(tt>=Ve){var $e=je.digest("hex");Pe(null,$e);return}var ot=Math.min(Ve,tt+_);Le.fileSlice(he,tt,ot,!1,function(yt){B(yt,function(ct){yt=null,je=je.update(ct,!0),Ue+=ct.length,ct=null,ye&&ye({loaded:Ue,total:Ve,percent:Math.round(Ue/Ve*1e4)/1e4}),Ke(tt+_)})})};_e(0)};function G(Ce){return Y(Ce,function(he){return l(he)==="object"&&he!==null?G(he):he})}function U(Ce,he,Pe){return Ce&&he in Ce?Ce[he]:Pe}function $(Ce,he){return ue(he,function(Pe,ye){Ce[ye]=he[ye]}),Ce}function q(Ce){return Ce instanceof Array}function W(Ce,he){for(var Pe=!1,ye=0;ye-1,Ke=!je||typeof je=="string"&&je.indexOf("{Region}")>-1;if(he.indexOf("Bucket")>-1||he==="deleteMultipleObject"||he==="multipartList"||he==="listObjectVersions"){if(_e&&!ye)return"Bucket";if(Ke&&!Ve)return"Region"}else if(he.indexOf("Object")>-1||he.indexOf("multipart")>-1||he==="sliceUploadFile"||he==="abortUploadTask"||he==="uploadFile"){if(_e&&!ye)return"Bucket";if(Ke&&!Ve)return"Region";if(!Ue)return"Key"}return!1},Ie=function(he,Pe){if(Pe=$({},Pe),he!=="getAuth"&&he!=="getV4Auth"&&he!=="getObjectUrl"){var ye=Pe.Headers||{};if(Pe&&l(Pe)==="object"){(function(){for(var Ue in Pe)Pe.hasOwnProperty(Ue)&&Ue.indexOf("x-cos-")>-1&&(ye[Ue]=Pe[Ue])})();var Ve={"x-cos-mfa":"MFA","Content-MD5":"ContentMD5","Content-Length":"ContentLength","Content-Type":"ContentType",Expect:"Expect",Expires:"Expires","Cache-Control":"CacheControl","Content-Disposition":"ContentDisposition","Content-Encoding":"ContentEncoding",Range:"Range","If-Modified-Since":"IfModifiedSince","If-Unmodified-Since":"IfUnmodifiedSince","If-Match":"IfMatch","If-None-Match":"IfNoneMatch","x-cos-copy-source":"CopySource","x-cos-copy-source-Range":"CopySourceRange","x-cos-metadata-directive":"MetadataDirective","x-cos-copy-source-If-Modified-Since":"CopySourceIfModifiedSince","x-cos-copy-source-If-Unmodified-Since":"CopySourceIfUnmodifiedSince","x-cos-copy-source-If-Match":"CopySourceIfMatch","x-cos-copy-source-If-None-Match":"CopySourceIfNoneMatch","x-cos-acl":"ACL","x-cos-grant-read":"GrantRead","x-cos-grant-write":"GrantWrite","x-cos-grant-full-control":"GrantFullControl","x-cos-grant-read-acp":"GrantReadAcp","x-cos-grant-write-acp":"GrantWriteAcp","x-cos-storage-class":"StorageClass","x-cos-traffic-limit":"TrafficLimit","x-cos-mime-limit":"MimeLimit","x-cos-server-side-encryption-customer-algorithm":"SSECustomerAlgorithm","x-cos-server-side-encryption-customer-key":"SSECustomerKey","x-cos-server-side-encryption-customer-key-MD5":"SSECustomerKeyMD5","x-cos-server-side-encryption":"ServerSideEncryption","x-cos-server-side-encryption-cos-kms-key-id":"SSEKMSKeyId","x-cos-server-side-encryption-context":"SSEContext","Pic-Operations":"PicOperations"};Le.each(Ve,function(Ue,je){Pe[Ue]!==void 0&&(ye[je]=Pe[Ue])}),Pe.Headers=O(ye)}}return Pe},De=function(he,Pe){return function(ye,Ve){var Ue=this;typeof ye=="function"&&(Ve=ye,ye={}),ye=Ie(he,ye);var je;if(Ue.options.EnableReporter)if(ye.calledBySdk==="sliceUploadFile"||ye.calledBySdk==="sliceCopyFile")je=ye.tracker&&ye.tracker.generateSubTracker({apiName:he});else if(["uploadFile","uploadFiles"].includes(he))je=null;else{var _e=0;ye.Body&&(_e=typeof ye.Body=="string"?ye.Body.length:ye.Body.size||ye.Body.byteLength||0);var Ke=Ue.options.UseAccelerate||typeof Ue.options.Domain=="string"&&Ue.options.Domain.includes("accelerate.");je=new S({Beacon:Ue.options.BeaconReporter,clsReporter:Ue.options.ClsReporter,bucket:ye.Bucket,region:ye.Region,apiName:he,realApi:he,accelerate:Ke,fileKey:ye.Key,fileSize:_e,deepTracker:Ue.options.DeepTracker,customId:Ue.options.CustomId,delay:Ue.options.TrackerDelay})}ye.tracker=je;var tt=function(ht){return ht&&ht.headers&&(ht.headers["x-cos-request-id"]&&(ht.RequestId=ht.headers["x-cos-request-id"]),ht.headers["x-ci-request-id"]&&(ht.RequestId=ht.headers["x-ci-request-id"]),ht.headers["x-cos-version-id"]&&(ht.VersionId=ht.headers["x-cos-version-id"]),ht.headers["x-cos-delete-marker"]&&(ht.DeleteMarker=ht.headers["x-cos-delete-marker"])),ht},$e=function(ht,pt){je&&je.report(ht,pt),Ve&&Ve(tt(ht),tt(pt))},ot=function(){if(he!=="getService"&&he!=="abortUploadTask"){var ht=Ee.call(Ue,he,ye);if(ht)return"missing param "+ht;if(ye.Region){if(Ue.options.CompatibilityMode){if(!/^([a-z\d-.]+)$/.test(ye.Region))return"Region format error."}else{if(ye.Region.indexOf("cos.")>-1)return'param Region should not be start with "cos."';if(!/^([a-z\d-]+)$/.test(ye.Region))return"Region format error."}!Ue.options.CompatibilityMode&&ye.Region.indexOf("-")===-1&&ye.Region!=="yfb"&&ye.Region!=="default"&&ye.Region!=="accelerate"&&console.warn("warning: param Region format error, find help here: https://cloud.tencent.com/document/product/436/6224")}if(ye.Bucket){if(!/^([a-z\d-]+)-(\d+)$/.test(ye.Bucket))if(ye.AppId)ye.Bucket=ye.Bucket+"-"+ye.AppId;else if(Ue.options.AppId)ye.Bucket=ye.Bucket+"-"+Ue.options.AppId;else return'Bucket should format as "test-1250000000".';ye.AppId&&(console.warn('warning: AppId has been deprecated, Please put it at the end of parameter Bucket(E.g Bucket:"test-1250000000" ).'),delete ye.AppId)}!Ue.options.UseRawKey&&ye.Key&&ye.Key.substr(0,1)==="/"&&(ye.Key=ye.Key.substr(1))}},yt=ot(),ct=["getAuth","getObjectUrl"].includes(he);if(typeof Promise=="function"&&!ct&&!Ve)return new Promise(function(Pt,ht){if(Ve=function(Ct,Gt){Ct?ht(Ct):Pt(Gt)},yt)return $e(Le.error(new Error(yt)));Pe.call(Ue,ye,$e)});if(yt)return $e(Le.error(new Error(yt)));var dt=Pe.call(Ue,ye,$e);if(ct)return dt}},ie=function(he,Pe){var ye=this,Ve=0,Ue=0,je=Date.now(),_e,Ke;function tt(){if(Ke=0,Pe&&typeof Pe=="function"){_e=Date.now();var $e=Math.max(0,Math.round((Ue-Ve)/((_e-je)/1e3)*100)/100)||0,ot;Ue===0&&he===0?ot=1:ot=Math.floor(Ue/he*100)/100||0,je=_e,Ve=Ue;try{Pe({loaded:Ue,total:he,speed:$e,percent:ot})}catch(yt){}}}return function($e,ot){if($e&&(Ue=$e.loaded,he=$e.total),ot)clearTimeout(Ke),tt();else{if(Ke)return;Ke=setTimeout(tt,ye.options.ProgressInterval)}}},ae=function(he,Pe,ye){var Ve;if(typeof Pe.Body=="string"?Pe.Body=new Blob([Pe.Body],{type:"text/plain"}):Pe.Body instanceof ArrayBuffer&&(Pe.Body=new Blob([Pe.Body])),Pe.Body&&(Pe.Body instanceof Blob||Pe.Body.toString()==="[object File]"||Pe.Body.toString()==="[object Blob]"))Ve=Pe.Body.size;else{ye(Le.error(new Error("params body format error, Only allow File|Blob|String.")));return}Pe.ContentLength=Ve,ye(null,Ve)},H=function(he){return Date.now()+(he||0)},ve=function(he,Pe){var ye=he;return he.message=he.message||null,typeof Pe=="string"?(he.error=Pe,he.message=Pe):l(Pe)==="object"&&Pe!==null&&($(he,Pe),(Pe.code||Pe.name)&&(he.code=Pe.code||Pe.name),Pe.message&&(he.message=Pe.message),Pe.stack&&(he.stack=Pe.stack)),typeof Object.defineProperty=="function"&&(Object.defineProperty(he,"name",{writable:!0,enumerable:!1}),Object.defineProperty(he,"message",{enumerable:!0})),he.name=Pe&&Pe.name||he.name||he.code||"Error",he.code||(he.code=he.name),he.error||(he.error=G(ye)),he},pe=function(){return(typeof globalThis>"u"?"undefined":l(globalThis))==="object"&&(globalThis.constructor.name==="DedicatedWorkerGlobalScope"||globalThis.FileReaderSync)},ee=function(){return(typeof window>"u"?"undefined":l(window))!=="object"&&(typeof a>"u"?"undefined":l(a))==="object"&&!0&&!pe()},ne=function(he){return/^https?:\/\/([^/]+\.)?ci\.[^/]+/.test(he)},me=function(){if((typeof navigator>"u"?"undefined":l(navigator))!=="object")return!1;var Ce=navigator.userAgent,he=!!Ce.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/);return he}(),Be=function(){return(typeof navigator>"u"?"undefined":l(navigator))!=="object"?!1:/\sQQ/i.test(navigator.userAgent)}(),oe=function(he,Pe){var ye=b.encode(he);return Pe&&(ye=ye.replaceAll("+","-").replaceAll("/","_").replaceAll("=","")),ye},Ae=function(he){var Pe=he.split("/"),ye=[],Ve=c(Pe),Ue;try{for(Ve.s();!(Ue=Ve.n()).done;){var je=Ue.value;je===".."?ye.length&&ye.pop():je.length&&je!=="."&&ye.push(je)}}catch(_e){Ve.e(_e)}finally{Ve.f()}return"/"+ye.join("/")},Me=function(he){var Pe;if(he&&typeof he=="string"){var ye=he.trim(),Ve=ye.indexOf("<")===0,Ue=ye.indexOf("{")===0;if(Ve)Pe=Le.xml2json(he)||{};else if(Ue)try{var je=he.replace(/\n/g," "),_e=JSON.parse(je);Object.prototype.toString.call(_e)==="[object Object]"?Pe=_e:Pe=he}catch(Ke){Pe=he}else Pe=he}else Pe=he||{};return Pe},Le={noop:N,formatParams:Ie,apiWrapper:De,xml2json:y,json2xml:A,md5:g,clearKey:O,fileSlice:R,getBodyMd5:Q,getFileMd5:K,b64:ce,extend:$,isArray:q,isInArray:W,makeArray:xe,each:ue,map:Y,filter:J,clone:G,attr:U,uuid:ge,camSafeUrlEncode:E,throttleOnProgress:ie,getFileSize:ae,getSkewTime:H,error:ve,obj2str:C,getAuth:I,parseSelectPayload:F,getSourceParams:D,isBrowser:!0,isNode:ee,isCIHost:ne,isIOS_QQ:me&&Be,encodeBase64:oe,simplifyPath:Ae,readAsBinaryString:B,parseResBody:Me};r.exports=Le}).call(this,o("./node_modules/process/browser.js"))}})})})(cosJsSdkV5);const COS=getDefaultExportFromCjs(cosJsSdkV5Exports),tencentBucket="daya-online-1303457149",ossType="tencent";async function fileUpload(i,e){const{data:r}=await getUploadSign(i);return await onOnlyFileUpload(r.signature,{fileName:i,file:e})}const getUploadSign=async i=>{const e="yjl/"+i;return request.post("/open/getUploadSign",{data:{postData:{key:e},pluginName:ossType,bucketName:tencentBucket,filename:e},requestType:"json",params:{pluginName:ossType}})},onOnlyFileUpload=async(i,e)=>{let r="",s=null;if(await new COS({Domain:"https://oss.dayaedu.com",Protocol:"https",getAuthorization:async(a,l)=>{l({Authorization:i})}}).uploadFile({Bucket:tencentBucket,Region:"ap-nanjing",Key:`yjl/${e.fileName}`,Body:e.file,SliceSize:1024*1024*500,onProgress:function(a){}}).then(a=>{var l;((l=a.Location)==null?void 0:l.indexOf("http"))>=0?r=a.Location:r="https://"+a.Location}).catch(a=>{s=a}),r)return r;throw new Error(s)},Recommendation=defineComponent({name:"recommendation",emits:["close"],setup(i,{emit:e}){const r=ref([]),s=reactive({message:"",suggestId:""}),o=ref([]),a=async()=>{try{const y=(await getSuggestionList({rows:9999,page:1,useClient:"SMART_PRACTICE"})).data.rows||[];r.value=y.map(A=>({text:A.name,value:A.id}))}catch(d){}},l=async()=>{var d;if(!s.message||!s.suggestId){const y=s.suggestId?"请先填写意见反馈":"请先选择反馈类型";showToast({message:y,position:"top"});return}try{const y=o.value.reduce((A,b)=>(b.url&&A.push(b.url),A),[]);await sysSuggestionAdd({content:s.message,type:"SMART_PRACTICE",suggestionTypeId:s.suggestId,mobileNo:(d=storeData.user)==null?void 0:d.phone,attachmentUrls:y.join(",")}),showToast({message:"意见反馈已提交",position:"top"}),e("close"),s.suggestId="",s.message="",o.value=[]}catch(y){}},c=computed(()=>r.value.find(y=>y.value===s.suggestId)),u=d=>{let y=[];Array.isArray(d)?y=d.map(A=>(A.status="uploading",A.message="上传中...",A.key=new Date().getTime()+A.file.name,A)):(d.status="uploading",d.message="上传中...",d.key=new Date().getTime()+d.file.name,y.push(d)),y.map(async A=>{try{const b=await fileUpload(A.key,A.file);A.status="",A.url=b}catch(b){A.status="failed",A.message="上传失败"}})},m=5,g=()=>{showToast(`文件大小不能超过 ${m}M`)};return onMounted(()=>{a()}),()=>createVNode("div",{class:[styles$o.recommendation]},[createVNode("div",{class:styles$o.head},[createVNode("img",{class:styles$o.headTit,src:headImg("recommendationName.png")},null),createVNode("img",{class:styles$o.closeImg,src:headImg("closeImg.png"),onClick:()=>{e("close")}},null)]),createVNode("div",{class:styles$o.content},[createVNode("div",{class:styles$o.conBox},[createVNode(DropdownMenu,{class:[styles$o.dropdownMenu,c.value&&styles$o.currItem],overlay:!1},{default:()=>[createVNode(DropdownItem,{class:["recommendationDropdownItem"],title:c.value?c.value.name:"请选择反馈类型",modelValue:s.suggestId,"onUpdate:modelValue":d=>s.suggestId=d,options:r.value},null)]}),createVNode(Field,{class:styles$o.field,modelValue:s.message,"onUpdate:modelValue":d=>s.message=d,border:!1,type:"textarea",maxlength:200,placeholder:"请详细描述您遇到的问题,以便我们尽快为您解决"},null),createVNode(Uploader,{accept:".jpg,jpeg,.png",class:styles$o.uploader,"max-size":m*1024*1024,onOversize:g,modelValue:o.value,"onUpdate:modelValue":d=>o.value=d,"after-read":u,multiple:!0,"max-count":4},{default:()=>[createVNode("div",{class:styles$o.uploaderbox},[createVNode("img",{class:styles$o.img,src:headImg("photo.png")},null),createVNode("div",null,[createTextVNode("上传图片")])])]}),createVNode("div",{class:styles$o.btnCon},[createVNode("img",{class:styles$o.img,src:headImg("qx.png"),onClick:()=>{e("close")}},null),createVNode("img",{class:styles$o.img,src:headImg("tj.png"),onClick:l},null)])])])])}}),Settting=defineComponent({name:"settting",setup(){const i=reactive({screenModelShow:!1,recommendationShow:!1}),e=s=>{const o=state$1.baseFrequency-10,a=state$1.baseFrequency+10;let l=state$1.setting.frequency;if(s===1){if(l-1a)return showToast({message:`最高标准音高${a}HZ`});l=l+1}state$1.setting.frequency=l>=0?l:0},r=s=>s=String(Math.min(3e3,s));return()=>createVNode("div",{class:styles$p.settting},[createVNode("div",{class:styles$p.head},[createVNode("img",{class:styles$p.headTit,src:headImg("settingName.png")},null),createVNode("img",{class:styles$p.closeImg,src:headImg("closeImg.png"),onClick:()=>{headTopData.settingMode=!1}},null)]),createVNode("div",{class:styles$p.content},[createVNode("div",{class:styles$p.conBox},[createVNode("div",{class:styles$p.cellBox},[createVNode("div",{class:styles$p.tit},[createTextVNode("指法")]),createVNode(Switch$1,{modelValue:state$1.setting.displayFingering,"onUpdate:modelValue":s=>state$1.setting.displayFingering=s},null)]),createVNode("div",{class:styles$p.cellBox},[createVNode("div",{class:styles$p.tit},[createTextVNode("循环播放")]),createVNode(Switch$1,{modelValue:state$1.setting.repeatAutoPlay,"onUpdate:modelValue":s=>state$1.setting.repeatAutoPlay=s},null)]),createVNode("div",{class:styles$p.cellBox},[createVNode("div",{class:styles$p.tit},[createTextVNode("旋律线")]),createVNode(Switch$1,{modelValue:smoothAnimationState.isShow.value,"onUpdate:modelValue":s=>smoothAnimationState.isShow.value=s},null)]),createVNode("div",{class:styles$p.cellBox},[createVNode("div",{class:styles$p.tit},[createTextVNode("标准音高")]),createVNode("div",{class:styles$p.frequency},[createVNode("img",{src:headImg("cutImg.png"),class:[styles$p.btn],onClick:()=>e(1)},null),createVNode("div",{class:styles$p.frequencyNum},[state$1.setting.frequency,createTextVNode("HZ")]),createVNode("img",{src:headImg("addImg.png"),class:[styles$p.btn],onClick:()=>e(2)},null)])]),createVNode("div",{class:styles$p.cellBox},[createVNode("div",{class:styles$p.tit},[createTextVNode("反应时间")]),createVNode("div",{class:styles$p.reactionTimeBox},[createVNode(Field,{class:styles$p.reactionTime,type:"digit",placeholder:"最大可输入3000毫秒",formatter:r,"input-align":"center",modelValue:state$1.setting.reactionTimeMs,"onUpdate:modelValue":s=>state$1.setting.reactionTimeMs=s},null),createVNode("div",{class:styles$p.timeName},[createTextVNode("毫秒")])])]),createVNode("div",{class:styles$p.cellBox},[createVNode("div",{class:styles$p.tit},[createTextVNode("切换谱面")]),createVNode("div",{class:styles$p.radioBox},[[{name:"单行谱",value:!0},{name:"多行谱",value:!1}].map(s=>createVNode("div",{class:state$1.isSingleLine===s.value&&styles$p.active,onClick:()=>{state$1.isSingleLine=s.value,headTopData.settingMode=!1,refreshMusicSvg()}},[s.name]))])]),createVNode("div",{class:styles$p.cellBox},[createVNode("div",{class:styles$p.tit},[createTextVNode("转谱")]),createVNode("div",{class:styles$p.radioBox},[[{name:"五线谱",value:"staff"},{name:"首调",value:"firstTone"},{name:"固定谱",value:"fixedTone"}].map(s=>createVNode("div",{class:state$1.musicRenderType===s.value&&styles$p.active,onClick:()=>{state$1.musicRenderType=s.value,headTopData.settingMode=!1,refreshMusicSvg()}},[s.name]))])]),createVNode("div",{class:styles$p.cellBtnBox},[createVNode("img",{src:headImg("tpbz.png")},null),createVNode("img",{src:headImg("yjfk.png"),onClick:()=>i.recommendationShow=!0},null)])])]),createVNode(Popup,{show:i.recommendationShow,"onUpdate:show":s=>i.recommendationShow=s,class:"popup-custom van-scale center-closeBtn recommenBoxClass_drag",transition:"van-scale",teleport:"body","overlay-style":{background:"rgba(0, 0, 0, 0.3)"}},{default:()=>[createVNode(Recommendation,{onClose:()=>{i.recommendationShow=!1}},null)]})])}});function autoCorrelate(i,e){for(var r=i.length,s=0,o=0;om[d+1];)d++;for(var y=-1,A=-1,o=d;oy&&(y=m[o],A=o);var b=A,S=m[b-1],E=m[b],x=m[b+1];let C=(S+x-2*E)/2,P=(x-S)/2;return C&&(b=b-P/(2*C)),e/b}const audioRecorder={audioContext:null,mediaRecorder:null,recordeState:!1,progress:i=>{},init(){this.audioContext=new(window.AudioContext||window.webkitAudioContext)},toggleRecord(i){return new Promise((e,r)=>{i?navigator.mediaDevices.getUserMedia({audio:!0}).then(s=>{audioRecorder.mediaRecorder=s.getAudioTracks()[0],audioRecorder.recordeState=!0;const o=this.audioContext.createMediaStreamSource(s),a=this.audioContext.createAnalyser();a.fftSize=2048,o.connect(a);var l=new Float32Array(a.fftSize);const c=this.audioContext.sampleRate;function u(){if(!audioRecorder.recordeState)return;a.getFloatTimeDomainData(l);const m=autoCorrelate(l,c);audioRecorder.progress(m),setTimeout(()=>{u()},10)}u(),e(!0)}).catch(s=>{e(!1),console.error("Error accessing media devices:",s)}):audioRecorder.mediaRecorder.stop()})},checkSupport(){return new Promise((i,e)=>{if(navigator.mediaDevices.getUserMedia){const r={audio:!0};navigator.mediaDevices.getUserMedia(r).then(s=>{i(!0),console.log("授权成功!")},()=>{i(!1),console.error("授权失败!")})}else i(!1),console.error("浏览器不支持 getUserMedia")})}},query$3=getQuery(),followData=reactive({list:[],index:0,start:!1,rendered:!1,earphone:!1}),handleRecord$1=i=>{if(query$3.isCbs)return;i<0&&(i=0);const e=i/1e3,r={clientType:storeData.user.clientType,musicSheetId:state$1.examSongId,sysMusicScoreId:state$1.examSongId,feature:"FOLLOW_UP_TRAINING",practiceSource:"FOLLOW_UP_TRAINING",playTime:e,deviceType:browser().android?"ANDROID":"IOS",behaviorId:getBehaviorId()};api_musicPracticeRecordSave(r)},toggleFollow=(i=!0)=>{state$1.modeType=state$1.modeType==="follow"?"practise":"follow",i||(followData.start=!1,openToggleRecord(!1))},noteFrequency=ref(0),audioFrequency=ref(0),followTime=ref(0),openToggleRecord=async(i=!0)=>{if(i||api_cloudToggleFollow(i?"start":"end"),i)followTime.value=Date.now();else{const e=Date.now()-followTime.value;followTime.value!==0&&e>0&&(handleRecord$1(e),followTime.value=0)}storeData.isApp||!await(audioRecorder==null?void 0:audioRecorder.toggleRecord(i))&&followData.start&&(followData.earphone=!0,followData.start=!1)},onClear=()=>{state$1.times.forEach(i=>{const e=document.querySelector(`div[data-vf=vf${i.id}]`);e&&e.classList.remove("follow-up","follow-down","follow-error","follow-success");const r=document.getElementById(`vf-${i.id}`);r&&r.classList.remove("follow-up","follow-down")})},handleFollowStart=async()=>{var e;const i=await api_cloudToggleFollow("start");if(!((e=i==null?void 0:i.content)!=null&&e.reson)){if(followData.start=!0,!await handleStartTick())return followData.start=!1,!1;onClear(),followData.start=!0,followData.index=0,followData.list=[],resetPlaybackToStart(),openToggleRecord(!0),getNoteIndex();const s=getDuration(state$1.osmd);metronomeData.totalNumerator=s.numerator||2,metronomeData.followAudioIndex=1,state$1.beatStartTime=0,followBeatPaly()}},handleFollowEnd=()=>{onClear(),followData.start=!1,openToggleRecord(!1),followData.index=0,console.log("结束")},next=()=>{gotoNext(state$1.times[followData.index])},getNoteIndex=()=>{const i=state$1.times[followData.index];return i.frequency<=0?(followData.index=followData.index+1,next(),getNoteIndex()):(noteFrequency.value=i.frequency,{id:i.id,min:i.frequency-(i.frequency-i.prevFrequency)*.5,max:i.frequency+(i.nextFrequency-i.frequency)*.5,duration:i.duration,baseFrequency:i.frequency})};let checking=!1;const onFollowTime=i=>{var r;const e=(r=i==null?void 0:i.content)==null?void 0:r.frequency;followData.start&&e>0&&(audioFrequency.value=e,checked())};let startTime=0;const checked=()=>{if(checking)return;checking=!0;const i=getNoteIndex();if(audioFrequency.value=i.min&&audioFrequency.value<=i.max){if(startTime===0)startTime=Date.now();else if((Date.now()-startTime)/1e3>=i.duration*.6){startTime=0,followData.index=followData.index+1,setColor(i,"",!0),next(),checking=!1;return}}setColor(i,audioFrequency.value>i.baseFrequency?"follow-up":"follow-down"),checking=!1},setColor=(i,e,r=!1)=>{const s=document.querySelector(`div[data-vf=vf${i.id}]`);s&&(s.classList.remove("follow-up","follow-down","follow-error","follow-success"),r?s.classList.add("follow-success"):s.classList.add("follow-error",e));const o=document.getElementById(`vf-${i.id}`);o&&(o.classList.remove("follow-up","follow-down"),e&&o.classList.add(e))},FollowPractice=defineComponent({name:"follow",setup(){return onMounted(async()=>{storeData.isApp?api_cloudFollowTime(onFollowTime):await audioRecorder.checkSupport()?(audioRecorder.init(),audioRecorder.progress=e=>{onFollowTime({api:"",content:{frequency:e}})}):followData.earphone=!0,console.log("进入跟练模式")}),onUnmounted(()=>{api_cloudFollowTime(onFollowTime,!1),resetPlaybackToStart(),onClear(),openToggleRecord(!1),console.log("退出跟练模式")}),()=>createVNode("div",null,null)}}),guidePopup="_guidePopup_x5pic_1",tipsContainer="_tipsContainer_x5pic_14",backBtn$2="_backBtn_x5pic_20",right$2="_right_x5pic_36",content$5="_content_x5pic_44",box$3="_box_x5pic_49",item$2="_item_x5pic_55",img$1="_img_x5pic_59",iconHead="_iconHead_x5pic_63",head2="_head2_x5pic_69",btns$4="_btns_x5pic_73",btn$6="_btn_x5pic_73",endBtn$2="_endBtn_x5pic_84",studentbtn="_studentbtn_x5pic_87",teacherBtn="_teacherBtn_x5pic_98",nextBtn="_nextBtn_x5pic_130",studentNext="_studentNext_x5pic_145",myscale="_myscale_x5pic_1",styles$n={guidePopup,tipsContainer,backBtn:backBtn$2,right:right$2,content:content$5,box:box$3,item:item$2,img:img$1,iconHead,head2,btns:btns$4,btn:btn$6,endBtn:endBtn$2,studentbtn,teacherBtn,nextBtn,studentNext,myscale},__vite_glob_0_0=""+new URL("../png/aiTeacher1-906c9519.png",import.meta.url).href,__vite_glob_0_1=""+new URL("../png/aiTeacher2-398558c8.png",import.meta.url).href,__vite_glob_0_2=""+new URL("../png/aiTeacher3-4ce7d3e9.png",import.meta.url).href,__vite_glob_0_3=""+new URL("../png/aiTeacher4-a64809b7.png",import.meta.url).href,__vite_glob_0_4=""+new URL("../png/endBtn-fbbc61e9.png",import.meta.url).href,__vite_glob_0_5="data:image/png;base64,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",__vite_glob_0_6="data:image/png;base64,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",__vite_glob_0_7=""+new URL("../png/endBtn-fbbc61e9.png",import.meta.url).href,__vite_glob_0_8=""+new URL("../png/pc_teacherBottom1-7d7c0406.png",import.meta.url).href,__vite_glob_0_9=""+new URL("../png/pc_teacherBottom2-1041fb46.png",import.meta.url).href,__vite_glob_0_10=""+new URL("../png/pc_teacherBottom3-9e8e8dfa.png",import.meta.url).href,__vite_glob_0_11=""+new URL("../png/pc_teacherBottom4-06ba0f51.png",import.meta.url).href,__vite_glob_0_12=""+new URL("../png/pc_teacherBottom5-d02e3c8f.png",import.meta.url).href,__vite_glob_0_13=""+new URL("../png/pc_teacherBottom6-bc1100b9.png",import.meta.url).href,__vite_glob_0_14=""+new URL("../png/studentB1-cada9dc3.png",import.meta.url).href,__vite_glob_0_15=""+new URL("../png/studentB2-22f8c5b1.png",import.meta.url).href,__vite_glob_0_16=""+new URL("../png/studentB3-63e84adf.png",import.meta.url).href,__vite_glob_0_17=""+new URL("../png/studentBtn-cc71146a.png",import.meta.url).href,__vite_glob_0_18=""+new URL("../png/studnetT1-6bad1a7e.png",import.meta.url).href,__vite_glob_0_19=""+new URL("../png/studnetT2-a1c68390.png",import.meta.url).href,__vite_glob_0_20=""+new URL("../png/studnetT3-aea2d51e.png",import.meta.url).href,__vite_glob_0_21=""+new URL("../png/studnetT4-e9bcb3f4.png",import.meta.url).href,__vite_glob_0_22=""+new URL("../png/studnetT5-d98576d3.png",import.meta.url).href,__vite_glob_0_23=""+new URL("../png/studnetT6-e26e655b.png",import.meta.url).href,__vite_glob_0_24=""+new URL("../png/studnetT7-85b09492.png",import.meta.url).href,__vite_glob_0_25=""+new URL("../png/studnetT8-f4dec487.png",import.meta.url).href,__vite_glob_0_26=""+new URL("../png/teacherTop1-fac539f2.png",import.meta.url).href,__vite_glob_0_27=""+new URL("../png/teacherTop2-7139ad50.png",import.meta.url).href,__vite_glob_0_28=""+new URL("../png/teacherTop3-d5b41852.png",import.meta.url).href,__vite_glob_0_29=""+new URL("../png/teacherTop4-6b47a5e7.png",import.meta.url).href,__vite_glob_0_30=""+new URL("../png/teacherTop5-ce3e332a.png",import.meta.url).href,__vite_glob_0_31=""+new URL("../png/teacherTop6-7e748eed.png",import.meta.url).href,modules=Object.assign({"./aiTeacher1.png":__vite_glob_0_0,"./aiTeacher2.png":__vite_glob_0_1,"./aiTeacher3.png":__vite_glob_0_2,"./aiTeacher4.png":__vite_glob_0_3,"./endBtn.png":__vite_glob_0_4,"./indexDot.png":__vite_glob_0_5,"./nextBtn.png":__vite_glob_0_6,"./numbrBtn.png":__vite_glob_0_7,"./pc_teacherBottom1.png":__vite_glob_0_8,"./pc_teacherBottom2.png":__vite_glob_0_9,"./pc_teacherBottom3.png":__vite_glob_0_10,"./pc_teacherBottom4.png":__vite_glob_0_11,"./pc_teacherBottom5.png":__vite_glob_0_12,"./pc_teacherBottom6.png":__vite_glob_0_13,"./studentB1.png":__vite_glob_0_14,"./studentB2.png":__vite_glob_0_15,"./studentB3.png":__vite_glob_0_16,"./studentBtn.png":__vite_glob_0_17,"./studnetT1.png":__vite_glob_0_18,"./studnetT2.png":__vite_glob_0_19,"./studnetT3.png":__vite_glob_0_20,"./studnetT4.png":__vite_glob_0_21,"./studnetT5.png":__vite_glob_0_22,"./studnetT6.png":__vite_glob_0_23,"./studnetT7.png":__vite_glob_0_24,"./studnetT8.png":__vite_glob_0_25,"./teacherTop1.png":__vite_glob_0_26,"./teacherTop2.png":__vite_glob_0_27,"./teacherTop3.png":__vite_glob_0_28,"./teacherTop4.png":__vite_glob_0_29,"./teacherTop5.png":__vite_glob_0_30,"./teacherTop6.png":__vite_glob_0_31}),getImage=i=>modules[`./${i}`]||"",query$2=getQuery(),setGuidance=i=>query$2.isCbs?{}:request.post("/functionGuidance/save",{data:i,requestType:"json"}),getGuidance=i=>storeData.platformApi=="/cbs-app"?{data:null}:request.get("/functionGuidance/queryTagDetail",{data:i,params:i}),TeacherTop=defineComponent({name:"teacherTop-guide",emits:["close"],setup(i,{emit:e}){const r=reactive({box:{},show:!1,steps:state$1.platform===IPlatform.PC?[{ele:"",eleRect:{},img:getImage("pc_teacherBottom1.png"),handStyle:{top:"0.91rem"},imgStyle:{bottom:"2.5rem",width:"3.63rem",height:"2.28rem",left:"-0.45rem"},btnsStyle:{bottom:"2.72rem",left:"1.1rem",transform:"scale(.83)"}},{ele:"",img:getImage("pc_teacherBottom2.png"),handStyle:{top:"-1.39rem",left:"0.15rem",transform:"rotate(180deg)"},imgStyle:{bottom:"2.5rem",width:"4.20rem",height:"2.28rem",left:"-0.45rem"},btnsStyle:{bottom:"2.72rem",left:"1.1rem",transform:"scale(.83)"}},{ele:"",img:getImage("pc_teacherBottom3.png"),handStyle:{top:"-1.39rem",left:"0.17rem",transform:"rotate(180deg)"},imgStyle:{bottom:"2.5rem",width:"5.15rem",height:"2.28rem",left:"-0.45rem"},btnsStyle:{bottom:"2.72rem",left:"1.1rem",transform:"scale(.83)"}},{ele:"",img:getImage("pc_teacherBottom4.png"),handStyle:{top:"-1.39rem",left:"1.4rem",transform:"rotate(180deg)"},imgStyle:{bottom:"2.5rem",width:"4.39rem",height:"2.28rem",left:"-0.45rem"},btnsStyle:{bottom:"2.72rem",left:"1.1rem",transform:"scale(.83)"}},{ele:"",img:getImage("pc_teacherBottom5.png"),handStyle:{top:"-1.39rem",left:"1.4rem",transform:"rotate(180deg)"},imgStyle:{bottom:"2.5rem",width:"4.58rem",height:"2.28rem",left:"-0.45rem"},btnsStyle:{bottom:"2.72rem",left:"1.1rem",transform:"scale(.83)"}},{ele:"",img:getImage("pc_teacherBottom6.png"),handStyle:{top:"-1.39rem",left:"1.4rem",transform:"rotate(180deg)"},imgStyle:{bottom:"2.5rem",width:"4.01rem",height:"2.28rem",left:"-3.4rem"},btnsStyle:{bottom:"2.72rem",left:"-2.1rem",transform:"scale(.83)"}}]:[{ele:"",eleRect:{},img:getImage("teacherTop1.png"),handStyle:{top:"0.91rem"},imgStyle:{top:"1.32rem",width:"3.63rem",height:"2.28rem",left:"-2rem"},btnsStyle:{top:"2.8rem",left:"-0.5rem",transform:"scale(.83)"}},{ele:"",img:getImage("teacherTop2.png"),handStyle:{top:"-1.39rem",left:"0.15rem",transform:"rotate(180deg)"},imgStyle:{top:"1.32rem",width:"4.20rem",height:"2.28rem",left:"-2rem"},btnsStyle:{top:"2.8rem",left:"-0.5rem",transform:"scale(.83)"}},{ele:"",img:getImage("teacherTop3.png"),handStyle:{top:"-1.39rem",left:"0.17rem",transform:"rotate(180deg)"},imgStyle:{top:"1.32rem",width:"5.15rem",height:"2.28rem",left:"-2rem"},btnsStyle:{top:"2.8rem",left:"-0.5rem",transform:"scale(.83)"}},{ele:"",img:getImage("teacherTop4.png"),handStyle:{top:"-1.39rem",left:"1.4rem",transform:"rotate(180deg)"},imgStyle:{top:"1.32rem",width:"4.39rem",height:"2.28rem",left:"-2rem"},btnsStyle:{top:"2.8rem",left:"-0.5rem",transform:"scale(.83)"}},{ele:"",img:getImage("teacherTop5.png"),handStyle:{top:"-1.39rem",left:"1.4rem",transform:"rotate(180deg)"},imgStyle:{top:"1.32rem",width:"4.58rem",height:"2.28rem",left:"-2rem"},btnsStyle:{top:"2.8rem",left:"-0.5rem",transform:"scale(.83)"}},{ele:"",img:getImage("teacherTop6.png"),handStyle:{top:"-1.39rem",left:"1.4rem",transform:"rotate(180deg)"},imgStyle:{top:"1.32rem",width:"4.01rem",height:"2.28rem",left:"-3.4rem"},btnsStyle:{top:"2.8rem",left:"-2.1rem",transform:"scale(.83)"}}],step:0}),s=ref(!1);getQuery();const o=ref({});(async()=>{var m;try{if(state$1.guideInfo)o.value=state$1.guideInfo;else{const g=await getGuidance({guideTag:"guideInfo"});g.data?o.value=JSON.parse((m=g.data)==null?void 0:m.guideValue)||null:o.value={}}o.value&&o.value.teacherTop?s.value=!1:s.value=!0}catch(g){console.log(g)}})();const l=()=>{console.log(`teacherTop${r.step}`);const m=document.getElementById(`teacherTop-${r.step}`);if(m){if(m.style.display==="none"){c();return}const g=m.getBoundingClientRect();r.box={left:g.x+"px",top:g.y+"px",width:g.width+"px",height:g.height+"px"}}};onMounted(()=>{setTimeout(()=>{l()},1200)});const c=()=>{if(r.step>=5){u();return}r.step=r.step+1,l()},u=async()=>{o.value?o.value.teacherTop=!0:o.value={teacherTop:!0};try{const m=await setGuidance({guideTag:"guideInfo",guideValue:JSON.stringify(o.value)})}catch(m){console.log(m)}state$1.guideInfo=o.value,s.value=!1};return()=>createVNode(Popup,{teleport:"body",overlay:!1,closeOnClickOverlay:!1,class:["popup-custom",styles$n.guidePopup],show:s.value,"onUpdate:show":m=>s.value=m},{default:()=>[createVNode("div",{class:styles$n.content,onClick:()=>c()},[createVNode("div",{class:styles$n.backBtn,onClick:m=>{m.stopPropagation(),u()}},[createTextVNode("跳过")]),createVNode("div",{class:styles$n.box,style:r.box,id:`modeType-${r.step}`},[r.steps.map((m,g)=>{var d,y;return createVNode("div",{onClick:A=>A.stopPropagation(),class:styles$n.item,style:{display:g===r.step?"":"none",left:`${(d=m.eleRect)==null?void 0:d.left}px`,top:`${(y=m.eleRect)==null?void 0:y.top}px`}},[createVNode("img",{class:styles$n.img,style:m.imgStyle,src:m.img},null),createVNode("div",{class:styles$n.btns,style:m.btnsStyle},[r.step+1==r.steps.length?createVNode(Fragment,null,[createVNode("div",{class:[styles$n.endBtn],onClick:()=>u()},[createTextVNode("完成")]),createVNode("div",{class:[styles$n.nextBtn],style:{"border-color":"#fff"},onClick:()=>{r.step=0,l()}},[createTextVNode("再看一遍")])]):createVNode(Button$1,{class:styles$n.teacherBtn,round:!0,type:"primary",onClick:()=>c()},{default:()=>[createTextVNode("下一步 ("),r.step+1,createTextVNode("/"),r.steps.length,createTextVNode(")")]})])])})])])]})}}),StudentTop=defineComponent({name:"studnetT-guide",emits:["close"],setup(i,{emit:e}){const r=reactive({box:{},show:!1,steps:[{ele:"",eleRect:{},img:getImage("studnetT1.png"),handStyle:{top:"0.67rem",left:"0.1rem"},imgStyle:{top:"1.2rem",width:"5.64rem",height:"2.77rem",left:"-2rem"},btnsStyle:{top:"4.4rem",left:"-0.7rem"}},{ele:"",img:getImage("studnetT2.png"),handStyle:{top:"0.67rem",left:"0.1rem"},imgStyle:{top:"1.2rem",width:"5.46rem",height:"2.3rem",left:"-2rem"},btnsStyle:{top:"3.9rem",left:"-0.7rem"}},{ele:"",img:getImage("studnetT3.png"),handStyle:{top:"0.67rem",left:"0.1rem"},imgStyle:{top:"1.2rem",width:"5.46rem",height:"2.30rem",left:"-2rem"},btnsStyle:{top:"3.9rem",left:"-0.7rem"}},{ele:"",img:getImage("studnetT4.png"),handStyle:{top:"0.67rem",left:"0.1rem"},imgStyle:{top:"1.2rem",width:"5.46rem",height:"2.30rem",left:"-2rem"},btnsStyle:{top:"3.9rem",left:"-0.7rem"}},{ele:"",img:getImage("studnetT5.png"),handStyle:{top:"0.67rem",left:"0.1rem"},imgStyle:{top:"1.2rem",width:"5.46rem",height:"2.6rem",left:"-3rem"},btnsStyle:{top:"4.1rem",left:"-1.3rem"}},{ele:"",img:getImage("studnetT6.png"),handStyle:{top:"0.67rem",left:"0.1rem"},imgStyle:{top:"0.92rem",width:"5.46rem",height:"2.30rem",left:"-5.5rem"},btnsStyle:{top:"3.6rem",left:"-1.8rem"}},{ele:"",eleRect:{},img:getImage("studnetT7.png"),handStyle:{top:"0.67rem",left:"0.1rem"},imgStyle:{top:"0.92rem",width:"5.46rem",height:"2.3rem",left:"-5.5rem"},btnsStyle:{top:"3.6rem",left:"-3.7rem"}},{ele:"",eleRect:{},img:getImage("studnetT8.png"),handStyle:{top:"-1.38rem",left:".26rem",transform:"rotate(180deg)"},imgStyle:{top:"-3.8rem",width:"5.46rem",height:"2.28rem",left:"-5rem"},btnsStyle:{top:"-1.2rem",left:"-4.3rem"}}],step:0,initDone:!1}),s=ref(!1);getQuery();const o=ref({});(async()=>{var m;console.log("学生引导123");try{if(state$1.guideInfo)o.value=state$1.guideInfo;else{const g=await getGuidance({guideTag:"guideInfo"});g.data?o.value=JSON.parse((m=g.data)==null?void 0:m.guideValue)||null:o.value={}}o.value&&o.value.studnetT?s.value=!1:s.value=headTopData.modeType!=="init"}catch(g){console.log(g)}})();const l=()=>{console.log(`studnetT${r.step}`);const m=document.getElementById(`studnetT-${r.step}`);if(m){if(m.style.display==="none"){c();return}const g=m.getBoundingClientRect();r.box={left:g.x+"px",top:g.y+"px",width:g.width+"px",height:g.height+"px"}}};onMounted(()=>{setTimeout(()=>{l(),r.initDone=!0},1200)});const c=()=>{if(r.step>=7){u();return}r.step=r.step+1,l()},u=async()=>{o.value?o.value.studnetT=!0:o.value={studnetT:!0};try{const m=await setGuidance({guideTag:"guideInfo",guideValue:JSON.stringify(o.value)})}catch(m){console.log(m)}state$1.guideInfo=o.value,s.value=!1};return()=>createVNode(Popup,{teleport:"body",overlay:!1,closeOnClickOverlay:!1,class:["popup-custom",styles$n.guidePopup],show:s.value,"onUpdate:show":m=>s.value=m},{default:()=>[createVNode("div",{class:styles$n.content,onClick:()=>c()},[r.step!=r.steps.length-1&&createVNode("div",{class:styles$n.backBtn,onClick:m=>{m.stopPropagation(),u()}},[createTextVNode("跳过")]),r.initDone&&createVNode("div",{class:styles$n.box,style:r.box,id:`modeType-${r.step}`},[r.steps.map((m,g)=>{var d,y;return createVNode("div",{onClick:A=>A.stopPropagation(),class:styles$n.item,style:{display:g===r.step?"":"none",left:`${(d=m.eleRect)==null?void 0:d.left}px`,top:`${(y=m.eleRect)==null?void 0:y.top}px`}},[createVNode("img",{class:styles$n.img,style:m.imgStyle,src:m.img},null),createVNode("img",{class:styles$n.iconHead,style:m.handStyle,src:getImage("indexDot.png")},null),createVNode("div",{class:styles$n.btns,style:m.btnsStyle},[r.step+1==r.steps.length?createVNode(Fragment,null,[createVNode("div",{class:[styles$n.studentNext],onClick:()=>u()},[createTextVNode("完成")]),createVNode("div",{class:[styles$n.nextBtn],style:{"border-color":"#fff"},onClick:()=>{r.step=0,l()}},[createTextVNode("再看一遍")])]):createVNode(Button$1,{class:styles$n.studentNext,round:!0,type:"primary",onClick:()=>c()},{default:()=>[createTextVNode("下一步 ("),r.step+1,createTextVNode("/"),r.steps.length,createTextVNode(")")]})])])})])])]})}}),index_module={},iconToggle="_iconToggle_1k628_1",popup$1="_popup_1k628_12",pcPartPop="_pcPartPop_1k628_16",styles$m={iconToggle,popup:popup$1,pcPartPop},container$3="_container_1u7ni_1",top$2="_top_1u7ni_10",closeIcon$1="_closeIcon_1u7ni_30",picker="_picker_1u7ni_53",pcPicker="_pcPicker_1u7ni_60",button="_button_1u7ni_66",pcContainer$1="_pcContainer_1u7ni_73",title$8="_title_1u7ni_82",pcPartTop="_pcPartTop_1u7ni_98",pcPartTopZIndex="_pcPartTopZIndex_1u7ni_102",styles$l={container:container$3,top:top$2,closeIcon:closeIcon$1,picker,pcPicker,button,pcContainer:pcContainer$1,title:title$8,pcPartTop,pcPartTopZIndex},ChoosePartName=defineComponent({name:"choosePartName",props:{partListNames:{type:Array,default:()=>[]},partIndex:{type:Number,default:0}},emits:["close"],setup(i,{emit:e}){const r=ref(!1),{partListNames:s,partIndex:o}=toRefs(i);let a=s.value.findIndex(g=>g.value===o.value);a=a>-1?a:0;const l=ref(a),c=computed(()=>s.value),u=ref([o.value]),m=ref();return onMounted(()=>{}),()=>{var g;return createVNode("div",{class:[styles$l.container,state$1.platform===IPlatform.PC&&styles$l.pcContainer]},[state$1.platform===IPlatform.PC&&createVNode("div",{class:[!((g=state$1.guideInfo)!=null&&g.teacherDrag)&&styles$l.pcPartTopZIndex,styles$l.pcPartTop,"top_drag"]},null),createVNode("div",{class:styles$l.top},[createVNode("div",{class:styles$l.title},[createTextVNode("请选择您练习的乐器")]),createVNode("span",{class:styles$l.closeIcon,onClick:()=>e("close")},null)]),createVNode(Picker,{ref:m,class:[styles$l.picker,state$1.platform===IPlatform.PC&&styles$l.pcPicker],defaultIndex:i.partIndex,modelValue:u.value,"onUpdate:modelValue":d=>u.value=d,showToolbar:!1,columns:c.value,visibleItemCount:Math.ceil(document.body.clientHeight/44/3),onChange:d=>{r.value||(r.value=!0),l.value=d.selectedValues[0]}},null),createVNode(Button$1,{class:styles$l.button,type:"primary",round:!0,block:!0,onClick:()=>{r.value?e("close",l.value):e("close",o.value)}},{default:()=>[createTextVNode("确定")]})])}}}),instruments={"Acoustic Grand Piano":"大钢琴","Bright Acoustic Piano":"明亮的钢琴","Electric Grand Piano":"电钢琴","Rhodes Piano":"柔和的电钢琴","Chorused Piano":"加合唱效果的电钢琴",Harpsichord:"羽管键琴",Clavichord:"科拉维科特琴",Celesta:"钢片琴",Glockenspiel:"钢片琴","Music box":"八音盒",Vibraphone:"颤音琴",Marimba:"马林巴",Xylophone:"木琴","Tubular Bells":"管钟",Dulcimer:"大扬琴","Hammond Organ":"击杆风琴","Percussive Organ":"打击式风琴","Rock Organ":"摇滚风琴","Church Organ":"教堂风琴","Reed Organ":"簧管风琴",Accordian:"手风琴",Harmonica:"口琴","Tango Accordian":"探戈手风琴","Acoustic Guitar":"钢弦吉他","Electric Guitar":"闷音电吉他","Overdriven Guitar":"加驱动效果的电吉他","Distortion Guitar":"加失真效果的电吉他","Guitar Harmonics":"吉他和音","Acoustic Bass":"大贝司","Electric Bass":"电贝司","Fretless Bass":"无品贝司","Slap Bass":"掌击","Synth Bass":"电子合成",Violin:"小提琴",Viola:"中提琴",Cello:"大提琴",Contrabass:"低音大提琴","Tremolo Strings":"弦乐群颤音音色","Pizzicato Strings":"弦乐群拨弦音色","Orchestral Harp":"竖琴",Timpani:"定音鼓","String Ensemble":"弦乐合奏音色","Synth Strings":"合成弦乐合奏音色","Choir Aahs":"人声合唱","Voice Oohs":"人声","Synth Voice":"合成人声","Orchestra Hit":"管弦乐敲击齐奏",Trumpet:"小号",Trombone:"长号",Tuba:"大号","Muted Trumpet":"加弱音器小号","French Horn":"法国号","Brass Section":"铜管组","Synth Brass":"合成铜管音色","Soprano Sax":"高音萨克斯管","Alto Sax":"中音萨克斯管","Tenor Sax":"次中音萨克斯管","Baritone Sax":"低音萨克斯管",Oboe:"双簧管","English Horn":"英国管",Bassoon:"巴松",Clarinet:"单簧管","Soprano Saxophone":"高音萨克斯管","Alto Saxophone":"中音萨克斯管","Tenor Saxophone":"次中音萨克斯管","Baritone Saxophone":"低音萨克斯管",Piccolo:"短笛",Flute:"长笛",Recorder:"竖笛","Soprano Recorder":"高音竖笛","Pan Flute":"排箫","Bottle Blow":"瓶木管",Whistle:"口哨声",Ocarina:"陶笛",Lead:"合成主音","Lead lead":"合成主音","Pad age":"合成音色",Pad:"合成音色",FX:"合成效果 科幻",Sitar:"西塔尔",Banjo:"班卓琴",Shamisen:"三昧线",Koto:"十三弦筝",Kalimba:"卡林巴",Bagpipe:"风笛",Fiddle:"民族提琴",Shanai:"山奈","Tinkle Bell":"叮当铃",Agogos:"阿戈戈铃","Steel Drums":"钢鼓","Taiko Drum":"太鼓","Melodic Toms":"嗵嗵鼓","Synth Drums":"合成鼓","Reverse Cymbals":"反向镲","Agogo Bells":"阿戈戈铃","Taiko Drums":"太鼓",Bongos:"邦戈鼓","Bongo Bell":"邦戈铃",Congas:"康加鼓",Guiro:"刮壶","Guitar Fret Noise":"吉他换把杂音","Breath Noise":"呼吸声",Seashore:"海浪声","Bird Tweet":"鸟鸣","Telephone Ring":"电话铃",Helicopter:"直升机",Applause:"鼓掌声",Gunshot:"枪声","Acoustic Bass Drum":"大鼓","Bass Drum":"大鼓","Side Drum":"小鼓鼓边","Acoustic Snare":"小鼓","Hand Claps":"拍手","Electric Snare":"小鼓","Low Floor Tom":"低音嗵鼓","Closed Hi-Hat":"闭合踩镲","High Floor Tom":"高音落地嗵鼓","Pedal Hi-Hat":"脚踏踩镲","Low Tom":"低音嗵鼓","Open Hi-Hat":"开音踩镲","Low-Mid Tom":"中低音嗵鼓","Hi Mid Tom":"高音鼓","Crash Cymbals":"对镲","High Tom":"高音嗵鼓","Ride Cymbals":"叮叮镲","Chinese Cymbals":"中国镲","Ride Bell":"圆铃",Tambourine:"铃鼓","Splash Cymbal":"溅音镲",Cowbell:"牛铃","Crash Cymbal":"强音钹","Vibra-Slap":"颤音器","Ride Cymbal":"打点钹","Hi Bongo":"高音邦戈鼓","Low Bongo":"低音邦戈鼓","Mute Hi Conga":"弱音高音康加鼓","Open Hi Conga":"强音高音康加鼓","Low Conga":"低音康加鼓","High Timbale":"高音天巴鼓","Low Timbale":"低音天巴鼓","High Agogo":"高音阿戈戈铃","Low Agogo":"低音阿戈戈铃",Cabasa:"卡巴萨",Maracas:"沙锤","Short Whistle":"短口哨","Long Whistle":"长口哨","Short Guiro":"短刮壶","Long Guiro":"长刮壶",Claves:"响棒","Hi Wood Block":"高音木鱼","Low Wood Block":"低音木鱼","Mute Triangle":"弱音三角铁","Open Triangle":"强音三角铁","Drum Set":"架子鼓","Hulusi flute":"葫芦丝",Melodica:"口风琴",Nai:"口风琴","Snare Drum":"小军鼓",Cymbal:"镲",Cymbals:"镲","Horn in F":"圆号",Triangle:"三角铁",Vibrato:"颤音琴","Suspend Cymbals":"吊镲","Suspended Cymbals":"吊镲","Tom-Toms":"嗵嗵鼓",Bell:"铃铛",Bells:"铃铛","Alto Clarinet":"中音单簧管","Bass Clarinet":"低音单簧管",Cornet:"短号",Euphonium:"上低音号","crash cymbals":"对镲",Castanets:"响板",Shaker:"沙锤","Mark tree":"音树",Chimes:"管钟","Mark Tree":"音树","Tom-toms":"嗵嗵鼓","Hi-Hat":"踩镲","Sleigh Bells":"雪橇铃",Flexatone:"弹音器","Brake drum":"闸鼓",Gong:"锣","concert tom":"音乐会嗵嗵鼓","brake drum":"车轮鼓","finger cymbal":"指钹","ride cymbal":"叮叮镲","Concert Toms":"音乐会嗵嗵鼓",Vibraslap:"弹音器","Wood Blocks":"木鱼","Temple Blocks":"木鱼","Wood Block":"木鱼","Field Drum":"军鼓","Quad-Toms":"筒鼓",Quads:"筒鼓","Drums set":"架子鼓","High Bongo":"邦戈",Timbales:"天巴鼓"},getInstrumentName=(i="")=>{if(i=i.toLocaleLowerCase().replace(/ /g,""),!i)return"";for(let e in instruments)if(e.toLocaleLowerCase().replace(/ /g,"").includes(i))return instruments[e];for(let e in instruments){const r=e.toLocaleLowerCase().replace(/ /g,"");if(i.includes(r))return instruments[e]}return""},sortMusical=(i,e)=>{let r=0;switch(i){case"长笛":r=1;break;case"单簧管":r=2;break;case"中音单簧管":r=3;break;case"低音单簧管":r=4;break;case"高音萨克斯风":r=5;break;case"中音萨克斯风":r=6;break;case"次中音萨克斯风":r=7;break;case"低音萨克斯风":r=8;break;case"小号":r=9;break;case"长号":r=10;break;case"圆号":r=11;break;case"大号":r=12;break;case"上低音号":r=13;break;default:r=e+14;break}return r};function useDrag$1(i,e,r,s){const o=ref({top:-1,left:-1}),a=s+e;watch(r,()=>{r.value?(c(),window.addEventListener("resize",u),nextTick(()=>{const m=document.querySelector(`.${e}`);m&&i.map(g=>{const d=document.querySelector(`.${g}`);d&&(d.style.cursor="move",drag$1(d,m,o))})})):(window.removeEventListener("resize",u),setCachePos$1(a,o.value))});const l=computed(()=>o.value.left===-1&&o.value.top===-1?{}:{position:"fixed",left:`${o.value.left}px`,top:`${o.value.top}px`,transform:"initial",transformOrigin:"initial",margin:"initial",transition:"initial"});function c(){const m=getCachePos$1(a);m&&(o.value=m,nextTick(()=>{u()}))}function u(){if(o.value.left===-1&&o.value.top===-1)return;const m=document.querySelector(`.${e}`);if(!m)return;const g=m.getBoundingClientRect(),d=document.documentElement.clientWidth,y=document.documentElement.clientHeight,{top:A,left:b}=o.value,S=d-g.width,E=y-g.height;let x=b,C=A;const P=0,k=0;x=xS?S:x,C=CE?E:C,o.value={top:C,left:x}}return{pos:o,styleDrag:l}}function drag$1(i,e,r){function s(o){const a=e.getBoundingClientRect(),l=o.clientX,c=o.clientY,u=document.documentElement.clientWidth,m=document.documentElement.clientHeight,g=u-a.width,d=m-a.height,y=0,A=0;function b(E){let x=a.left+(E.clientX-l),C=a.top+(E.clientY-c);x=xg?g:x,C=Cd?d:C,r.value={top:C,left:x}}function S(){document.removeEventListener("mousemove",b),document.removeEventListener("mouseup",S)}document.addEventListener("mousemove",b),document.addEventListener("mouseup",S)}i.addEventListener("mousedown",s)}const localStorageName$1="dragCachePos";function getCachePos$1(i){const e=localStorage.getItem(localStorageName$1);if(e)try{return JSON.parse(e)[i]}catch(r){return null}return null}function setCachePos$1(i,e){const r=localStorage.getItem(localStorageName$1);let s={};if(r)try{s=JSON.parse(r)}catch(o){}s[i]=e,localStorage.setItem(localStorageName$1,JSON.stringify(s))}const dragBom$1="_dragBom_u8a8z_1",box$2="_box_u8a8z_9",right$1="_right_u8a8z_18",guide$1="_guide_u8a8z_23",guideBg$1="_guideBg_u8a8z_39",guideDone$1="_guideDone_u8a8z_47",guideTop$1="_guideTop_u8a8z_58",guideLeft$1="_guideLeft_u8a8z_66",guideRight$1="_guideRight_u8a8z_75",styles$k={dragBom:dragBom$1,box:box$2,right:right$1,guide:guide$1,guideBg:guideBg$1,guideDone:guideDone$1,guideTop:guideTop$1,guideLeft:guideLeft$1,guideRight:guideRight$1},Dragbom$1=defineComponent({name:"dragBom",emits:["guideDone"],props:{showGuide:{type:Boolean,default:!1}},setup(i,{emit:e}){const r=reactive({guidePos:"bottom"}),s=()=>{var g,d,y;const o=document.documentElement.clientHeight||document.body.clientHeight;document.documentElement.clientWidth||document.body.clientWidth;const a=((g=document.querySelector(".bom_guide"))==null?void 0:g.clientHeight)||0,l=((d=document.querySelector(".bom_guide"))==null?void 0:d.clientWidth)||0,c=(y=document.querySelector(".bom_drag"))==null?void 0:y.getBoundingClientRect(),u=(c==null?void 0:c.top)||0,m=(c==null?void 0:c.left)||0;o-u>a?r.guidePos="bottom":r.guidePos=m>l?"left":"right"};return onMounted(()=>{nextTick(()=>{setTimeout(()=>{s()},0)})}),()=>createVNode(Fragment,null,[createVNode("div",{class:[styles$k.dragBom,"bom_drag"]},[createVNode("div",{class:styles$k.box},null),createVNode("div",{class:[styles$k.box,styles$k.right]},null)]),i.showGuide&&createVNode("div",{class:[styles$k.guide,r.guidePos==="left"&&styles$k.guideLeft,r.guidePos==="right"&&styles$k.guideRight,"bom_guide"],onClick:()=>e("guideDone")},[createVNode("div",{class:styles$k.guideBg},null),createVNode("div",{class:styles$k.guideDone},null)])])}}),toggleMusicSheet=reactive({show:!1,toggle:(i=!0)=>{toggleMusicSheet.show=i}}),ToggleMusicSheet=defineComponent({name:"ToggleMusicSheet",setup(){var u,m;const i=getQuery(),e=computed(()=>{let g=state$1.partListNames||[];return g=g.filter(y=>{var A;return!((A=y==null?void 0:y.toLocaleUpperCase())!=null&&A.includes("COMMON"))}),g.map((y,A)=>{const b=!!(state$1.canSelectTracks.length==0||state$1.canSelectTracks.includes(y)),S=getInstrumentName(y),E=sortMusical(S,A);return{text:y+(S?`(${S})`:""),value:A,sortId:E,canselect:b}}).filter(y=>y.canselect).sort((y,A)=>y.sortId-A.sortId)}),r=computed(()=>{var g;if(e&&e.value.length){const d=((g=e.value.find(y=>y.value==state$1.partIndex))==null?void 0:g.value)||0;return console.log(3333,d),d}else return 0}),s=g=>{if(state$1.partIndex===g)return;togglePlay("paused"),postMessage({api:"cloudDestroy"}),postMessage({api:"cloudLoading",content:{show:!0,type:"fullscreen"}});const d=location.origin+location.pathname+"?"+queryString.stringify({...i,behaviorId:sessionStorage.getItem("behaviorId")||"",_t:new Date().valueOf(),"part-index":g});console.log(d),location.href=d},o="switchBoxClass_drag",a=(u=storeData.user)!=null&&u.id?String((m=storeData.user)==null?void 0:m.id):"",l=state$1.platform!==IPlatform.PC?{styleDrag:{value:null}}:useDrag$1([`${o} .top_drag`,`${o} .bom_drag`],o,toRef(toggleMusicSheet,"show"),a),c=async()=>{state$1.guideInfo.teacherDrag=!0;try{const g=await setGuidance({guideTag:"guideInfo",guideValue:JSON.stringify(state$1.guideInfo)})}catch(g){console.log(g)}};return()=>createVNode(Popup,{class:[styles$m.popup,[state$1.platform===IPlatform.PC&&styles$m.pcPartPop,"switchBoxClass_drag"]],show:toggleMusicSheet.show,"onUpdate:show":g=>toggleMusicSheet.show=g,style:l.styleDrag.value},{default:()=>{var g;return[createVNode(ChoosePartName,{partIndex:r.value||0,partListNames:e.value,onClose:d=>{console.log("🚀 ~ value:",d),toggleMusicSheet.show=!1,d!==void 0&&s(d)}},null),state$1.platform===IPlatform.PC&&createVNode(Dragbom$1,{showGuide:!((g=state$1.guideInfo)!=null&&g.teacherDrag),onGuideDone:c},null)]}})}}),icon_btn="data:image/png;base64,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",icon_btn_cancel="data:image/png;base64,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",container$2="_container_jp744_1",close$2="_close_jp744_11",title$7="_title_jp744_18",content$4="_content_jp744_23",btns$3="_btns_jp744_32",btn$5="_btn_jp744_32",btnCancel="_btnCancel_jp744_46",styles$j={container:container$2,close:close$2,title:title$7,content:content$4,btns:btns$3,btn:btn$5,btnCancel},TheVip=defineComponent({name:"TheVip",setup(){const i={dev:"https://dev.kt.colexiu.com",test:"https://test.lexiaoya.cn",online:"https://kt.colexiu.com"};let e=location.origin.includes("//dev")?"dev":location.origin.includes("//test")?"test":location.origin.includes("//online")||location.origin.includes("//kt")||location.origin.includes("//mec")?"online":"dev";const r=()=>{getQuery().modelType?api_goback():api_back()};return()=>createVNode(Popup,{teleport:"body",closeOnClickOverlay:!1,class:["popup-custom"],show:!0},{default:()=>[createVNode("div",{class:styles$j.container},[createVNode("div",{class:styles$j.content},[createTextVNode("立即开通"),createVNode("span",{style:{color:"#FF5A56"}},[createTextVNode('"乐器AI学练工具"')]),createTextVNode("服务,解锁更多专属权益,享受全新学习体验!")]),createVNode("div",{class:styles$j.btns},[createVNode("img",{class:[styles$j.btn,styles$j.btnCancel],src:icon_btn_cancel,onClick:r},null),createVNode("img",{class:styles$j.btn,src:icon_btn,onClick:()=>{postMessage$1({api:"openWebView",content:{url:`${location.origin.includes("192")?"https://test.lexiaoya.cn":i[e]}/classroom-app/#/member-center`,orientation:1}})}},null)])])]})}}),ModeView=defineComponent({name:"modeView",setup(){const i=getQuery(),e=reactive({showPC:!1,showStudent:!1,showVip:!1}),r=()=>{storeData.platformType!=="STUDENT"||storeData.user.clientType!=="STUDENT"?e.showPC=!0:storeData.user.vipMember||state$1.paymentType==="FREE"||i.showCourseMember==="true"?e.showStudent=!0:e.showVip=!0},s=async()=>{const a=await studentQueryUserInfo(),l=(a==null?void 0:a.data)||{};storeData.user.vipMember=l.vipMember,storeData.user.vipMember&&(e.showVip=!1,r())},o=usePageVisibility();return watch(()=>o.value,a=>{if(a==="visible"){if(storeData.user.vipMember)return;console.log("页面显示"),s()}}),onMounted(()=>{r()}),()=>createVNode("div",{class:[styles$r.modeView,headTopData.modeType!=="init"&&styles$r.hidden]},[createVNode("img",{src:backImg,class:styles$r.back,onClick:()=>{headTopData.modeType="show"}},null),createVNode("img",{src:nameImg,class:styles$r.name},null),createVNode("div",{class:[styles$r.modeBox,(!state$1.isPercussion&&!state$1.enableEvaluation||state$1.isPercussion&&state$1.enableEvaluation||state$1.isPercussion&&!state$1.enableEvaluation)&&styles$r.twoModeBox]},[createVNode("img",{src:lxImg,class:styles$r.modeImg,onClick:()=>headTopData.handleChangeModeType("practise")},null),!state$1.isPercussion&&createVNode("img",{src:glImg,class:styles$r.modeImg,onClick:()=>headTopData.handleChangeModeType("follow")},null),state$1.enableEvaluation&&createVNode("img",{src:pcImg,class:styles$r.modeImg,onClick:()=>headTopData.handleChangeModeType("evaluating")},null)]),e.showVip&&createVNode(TheVip,null,null)])}}),popup="_popup_1mmv3_1",tabs="_tabs_1mmv3_4",wrap="_wrap_1mmv3_60",searchBox="_searchBox_1mmv3_64",isFocus="_isFocus_1mmv3_73",searchBtn="_searchBtn_1mmv3_99",item$1="_item_1mmv3_120",itemActive="_itemActive_1mmv3_128",content$3="_content_1mmv3_133",name$1="_name_1mmv3_133",titleImg="_titleImg_1mmv3_136",iconType="_iconType_1mmv3_145",VIP="_VIP_1mmv3_154",detail$3="_detail_1mmv3_163",usedNum="_usedNum_1mmv3_168",author$1="_author_1mmv3_187",noData="_noData_1mmv3_193",styles$i={popup,tabs,wrap,searchBox,isFocus,searchBtn,item:item$1,itemActive,content:content$3,name:name$1,titleImg,iconType,VIP,detail:detail$3,usedNum,author:author$1,noData},searImg="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABwAAAAcCAMAAABF0y+mAAAAdVBMVEUAAAApov8pov8kpP8pov4oov8po/8po/8pov4qov8oov8po/8pov4pov8po/8qo/4oov4qo/8po/8pov8ppP8npP8qpf8iof8uov8oov4pov8pov4pov4qov8qov8ppP8oof8ppf8noP8oo/8np/8rnP8pov/KqiHjAAAAJnRSTlMA+u4c3NBJrogyxWj12aOZko2CdlsjGA8L5N7UtLKZcF8+OzoaEmDU9ZIAAAEBSURBVCjPdZDZtsIgDEUD1Q5QO1d7na8D//+JHii0CMv9ElY2SQjk+G8FZ+XxcntRSLpVDnbdf6kpUz7l4LlkLttWeZNxc8zXOu1YPfoDeid1z7+CFjp9N7VXtUvIQyKzm49ow1DnU8NKsx8ONX3zxrNOBFrIkQJymxTYgUKekHdEdKgiOUF2iEyvHIGSBqHUIQIlLcJRqSxye/tJF6V4JAfIFPFmYsAZH3NAfLF4l4dys6722SuHHVLFPLzEUfpOIFEt00H9XnqiDoXrTwKePye0Gc7KsEmc7dmc4SaGNkWrlarYeBbIkzUsw7gksDTeu6btU727tYJiFsvppxVcfgBP6SNcJ6sEZwAAAABJRU5ErkJggg==",huoimg="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAWCAMAAAD+dOxOAAAAxlBMVEUAAAD/cWr/hV7/c2f/j1n/gmH/eV7/eGP/f1//dmT/cGf/emL/d2T/cGf/fWL/kFj/gF//cWj/h1z/fmH/gV3/dmT/jF3/jFr/iF3/e2L/bGj/iFv/gmD/hV3/dmT/jFr/e2P/iFz/c2b/hl3/eGX/fWH/kFn/bWf/cWb/lFf/cGf/bGj/b2f/jVn/dGb/gGH/iVz/f2D/l1n/aWn/hV7/e2H/hF3/fmD/iFv/eGP/gV//dmT/b2f/dGT/cmb/kFf/i1r/jVkmmW9mAAAANXRSTlMACZ1CLRsT+vr01M/FppmLg3NhOScOBfz48O3t7OTi3dzcysK5sbGvqKKPhIN5bmxsSkI/F17JNJMAAACvSURBVBjTZc5VEgJBDATQXsXd3d1lBRgYuP+lyGQpdineT3dS+QjYcWHihyVlDlGmlHKKiM2LRG96T1Irf+e9z3TYJpRS3Wcta1AEqXTcj5FLi6qdd0M6cNDb11D8jGzci9oh5XkOoc45QcNh6XyQfcQuzECWM4buTRkD1ZQqCczvJFFW/6mWhvEgBShDalsgI4SwoSyFSGqANhMCbC2SFpdC0+DMrDQEKicOHv+8AZLzJUTMW2tcAAAAAElFTkSuQmCC",List=defineComponent({name:"TheMusicList-list",props:{recentFlag:{type:Boolean,default:!1}},setup(i){const e=reactive({name:"",page:1,rows:20,musicSheetCategoriesId:state$1.bizMusicCategoryId,recentFlag:i.recentFlag?!0:null,excludeMusicId:i.recentFlag?null:state$1.examSongId}),r=reactive({isFocus:!1,list:[],finished:!1,loading:!1,hasNext:!0}),s=async()=>{var l,c,u,m;if(r.hasNext){r.loading=!0;try{const g=await api_musicSheetPage({...e});(g==null?void 0:g.code)===200&&Array.isArray((l=g.data)==null?void 0:l.rows)&&(r.list=[...r.list,...g.data.rows]),r.finished=((u=(c=g.data)==null?void 0:c.rows)==null?void 0:u.length)r.list.length}catch(g){console.log(g)}r.loading=!1}};function o(){e.page=1,e.rows=20,r.list=[],r.finished=!1,r.loading=!1,r.hasNext=!0,s()}watch(()=>i.recentFlag,()=>{r.hasNext=!0}),onMounted(()=>{s()});const a=l=>{l.id!==state$1.examSongId&&(togglePlay("paused"),postMessage$1({api:"cloudLoading",content:{show:!0,type:"fullscreen"}}),location.href=location.origin+location.pathname+"?"+queryString.stringify({id:l.id,_t:Date.now()}))};return()=>createVNode("div",{class:styles$i.wrap},[createVNode("div",{class:[styles$i.searchBox,r.isFocus&&styles$i.isFocus]},[createVNode("img",{src:searImg},null),createVNode(Field,{placeholder:"请输入曲目名称",modelValue:e.name,"onUpdate:modelValue":l=>e.name=l,autocomplete:"off",onFocus:()=>{r.isFocus=!0},onBlur:()=>{r.isFocus=!1}},null),createVNode("div",{class:styles$i.searchBtn,onClick:o},[createTextVNode("搜索")])]),createVNode(List$1,{loading:r.loading,finished:r.finished,immediateCheck:!1,onLoad:()=>{e.page++,s()}},{default:()=>[r.list.map(l=>createVNode("div",{class:[styles$i.item,state$1.examSongId==l.id&&styles$i.itemActive],onClick:()=>a(l)},[createVNode("div",{class:styles$i.titleImg},[createVNode("i",{class:[styles$i.iconType,styles$i[l.paymentType]]},null),createVNode(Image$1,{src:l.titleImg,class:styles$i.img},null)]),createVNode("div",{class:styles$i.content},[createVNode("p",{class:styles$i.name},[l.musicSheetName]),createVNode("div",{class:styles$i.detail},[l.usedNum&&createVNode("div",{class:styles$i.usedNum},[createVNode("img",{src:huoimg},null),createVNode("div",null,[l.usedNum])]),l.composer&&createVNode("p",{class:styles$i.author},[l.composer])])])])),!r.loading&&r.list.length===0&&createVNode("div",{class:styles$i.noData},[createTextVNode("暂无数据")])]})])}}),query$1=getQuery(),isMusicList=computed(()=>!(state$1.playState=="play"||followData.start||evaluatingData.startBegin||query$1.workRecord||query$1.modelType||state$1.platform===IPlatform.PC||query$1.isCbs)),musicListShow=ref(!1),TheMusicList=defineComponent({name:"TheMusicList",setup(){return()=>createVNode(Fragment,null,[createVNode(Popup,{class:styles$i.popup,position:"left",show:musicListShow.value,"onUpdate:show":i=>musicListShow.value=i,round:!0,"overlay-style":{background:"rgba(0, 0, 0, 0.3)"}},{default:()=>[createVNode("div",{class:styles$i.tabs},[createVNode(Tabs,null,{default:()=>[createVNode(Tab,{title:"其他曲谱"},{default:()=>[createVNode(List,null,null)]}),createVNode(Tab,{title:"最近练习"},{default:()=>[createVNode(List,{recentFlag:!0},null)]})]})])]})])}}),headTopData=reactive({modeType:"",showBack:!0,settingMode:!1,handleChangeModeType(i){if(!(i==="evaluating"&&!state$1.enableEvaluation)&&!(i==="follow"&&state$1.isPercussion)){if(i==="follow"&&metronomeData.cursorMode===2&&(metronomeData.cursorMode=1),i==="evaluating"){if(!evaluatingData.jsonLoadDone){evaluatingData.jsonLoading=!0,state$1.audioDone&&showToast("资源加载中,请稍后");return}if(state$1.platform===IPlatform.PC){showConfirmDialog({className:"modalTip",title:"温馨提示",message:"该功能暂未开放,敬请期待!",showCancelButton:!1});return}state$1.playIngSpeed=state$1.originSpeed,handleStartEvaluat()}else i==="follow"&&toggleFollow();headTopData.modeType="show"}}}),headData=reactive({speedShow:!1,musicTypeShow:!1});let resetBtn$2;function handlerModeChange(i,e,r){const s=modeChangeHandleTimes(i,e);if(s){try{metronomeData.metro.calculation(state$1.times)}catch(o){}console.log("重新之后的times",state$1.times,state$1.fixtime)}(s||r)&&(handleRessetState(),resetBtn$2&&(resetBtn$2.value.display=!1))}function modeChangeHandleTimes(i,e){const r=state$1.playType,s=state$1.playSource,{notBeatFixtime:o,xmlMp3BeatFixTime:a}=state$1.times[0],{isOpenMetronome:l,isSingOpenMetronome:c}=state$1;if(i==="play"&&r==="sing"){if(s==="mingSong")return state$1.fixtime=0,state$1.times.map(u=>{u.time=u.xmlNoteTime,u.endtime=u.xmlNoteEndTime,u.fixtime=0}),!0;if(l&&!c)return state$1.fixtime=o,state$1.times.map(u=>{u.time=u.notBeatTime,u.endtime=u.notBeatEndTime,u.fixtime=o}),!0;if(!l&&c)return state$1.fixtime=o+a,state$1.times.map(u=>{u.time=u.notBeatTime+a,u.endtime=u.notBeatEndTime+a,u.fixtime=o+a}),!0}else if(i==="sing"&&r==="play"){if(e==="mingSong")return l?(state$1.fixtime=o+a,state$1.times.map(u=>{u.time=u.notBeatTime+a,u.endtime=u.notBeatEndTime+a,u.fixtime=o+a}),!0):(state$1.fixtime=o,state$1.times.map(u=>{u.time=u.notBeatTime,u.endtime=u.notBeatEndTime,u.fixtime=o}),!0);if(l&&!c)return state$1.fixtime=o+a,state$1.times.map(u=>{u.time=u.notBeatTime+a,u.endtime=u.notBeatEndTime+a,u.fixtime=o+a}),!0;if(!l&&c)return state$1.fixtime=o,state$1.times.map(u=>{u.time=u.notBeatTime,u.endtime=u.notBeatEndTime,u.fixtime=o}),!0}else if(i==="sing"&&r==="sing"){if(s==="mingSong")return state$1.fixtime=0,state$1.times.map(u=>{u.time=u.xmlNoteTime,u.endtime=u.xmlNoteEndTime,u.fixtime=0}),!0;if(e==="mingSong")return c?(state$1.fixtime=o+a,state$1.times.map(u=>{u.time=u.notBeatTime+a,u.endtime=u.notBeatEndTime+a,u.fixtime=o+a}),!0):(state$1.fixtime=o,state$1.times.map(u=>{u.time=u.notBeatTime,u.endtime=u.notBeatEndTime,u.fixtime=o}),!0)}return!1}const HeaderTop=defineComponent({name:"header-top",emits:["close"],setup(i,{emit:e}){var O,B;const r=getQuery(),s=ref(!1),o=ref(!1),a=computed(()=>state$1.playState==="play"?{display:!0,disabled:!0}:evaluatingData.startBegin||followData.start?{display:!0,disabled:!0}:{display:!0,disabled:!1}),l=computed(()=>state$1.playState==="play"?{display:!0,disabled:!0}:evaluatingData.startBegin||followData.start?{display:!0,disabled:!0}:{disabled:!1,display:!0}),c=computed(()=>headTopData.modeType!=="show"||state$1.modeType==="follow"?{display:!1,disabled:!0}:state$1.modeType==="evaluating"||state$1.playState==="play"?{display:!0,disabled:!0}:{disabled:!1,display:!0}),u=computed(()=>headTopData.modeType!=="show"?{display:!1,disabled:!0}:state$1.playState==="play"?{display:!0,disabled:!0}:{disabled:!1,display:!0}),m=computed(()=>state$1.isShowFingering?headTopData.modeType!=="show"||!state$1.fingeringInfo.name||["evaluating","follow"].includes(state$1.modeType)?{display:!1,disabled:!0}:state$1.playState==="play"?{display:!0,disabled:!0}:{disabled:!1,display:!0}:{display:!0,disabled:!0});computed(()=>headTopData.modeType!=="show"||state$1.modeType!=="evaluating"?{display:!1,disabled:!0}:state$1.playState==="play"?{display:!0,disabled:!0}:{disabled:!1,display:!0});const g=computed(()=>headTopData.modeType!=="show"||["evaluating","follow"].includes(state$1.modeType)?{display:!1,disabled:!0}:state$1.playState==="play"?{display:!0,disabled:!0}:{disabled:!1,display:!0}),d=computed(()=>{if(headTopData.modeType!=="show"||state$1.modeType==="follow")return{display:!1,disabled:!1};if(state$1.modeType==="evaluating")return{display:!1,disabled:!0};if(!state$1.isAppPlay)if(state$1.playType==="play"){if(state$1.music&&state$1.accompany)return{display:!0,disabled:!1}}else{if(state$1.playState==="play")return{display:!0,disabled:!0};let V=0;if(state$1.fanSong&&V++,state$1.banSong&&V++,state$1.mingSong&&V++,V>1)return{display:!0,disabled:!1}}return{disabled:!0,display:!0}}),y=computed(()=>{if(headTopData.modeType!=="show"||state$1.modeType==="follow")return{display:!1,disabled:!1};if(state$1.modeType==="evaluating")return{display:!1,disabled:!0};if(state$1.playState==="play")return{display:!0,disabled:!0};if(!state$1.isAppPlay){let V=0;state$1.music&&V++,state$1.accompany&&V++;let R=0;if(state$1.fanSong&&R++,state$1.banSong&&R++,state$1.mingSong&&R++,R>0&&V>0)return{display:!0,disabled:!1}}return{disabled:!0,display:!0}}),A=computed(()=>headTopData.modeType!=="show"||!headTopData.showBack?{display:!1,disabled:!1}:followData.start||evaluatingData.startBegin?{display:!0,disabled:!0}:{display:!0,disabled:!1}),b=computed(()=>headTopData.modeType!=="show"?{display:!1,disabled:!1}:["evaluating","follow"].includes(state$1.modeType)?{display:!1,disabled:!0}:state$1.isAppPlay&&state$1.midiPlayIniting?{display:!0,disabled:!0}:{display:!0,disabled:!1});resetBtn$2=computed(()=>{if(headTopData.modeType!=="show")return{display:!1,disabled:!1};if(["evaluating","follow"].includes(state$1.modeType))return{display:!1,disabled:!0};if(state$1.playState==="play")return{display:!1,disabled:!0};const V=getAudioCurrentTime();return state$1.isAppPlay&&state$1.midiPlayIniting?{display:!1,disabled:!0}:V?{display:!0,disabled:!1}:{display:!1,disabled:!0}});const S=computed(()=>l.value.display&&c.value.display&&g.value.display&&d.value.display&&A.value.display&&s.value),E=computed(()=>l.value.display&&c.value.display&&g.value.display&&d.value.display&&A.value.display&&o.value),x=computed(()=>!!(storeData.user.vipMember||state$1.paymentType==="FREE"||r.showCourseMember==="true")),C=browser(),P=()=>{if(HANDLE_WORK_ADD(),!storeData.isApp){window.close();return}if((C.iPhone||C.ios)&&r.workRecord){setTimeout(()=>{api_back()},550);return}api_back()},k=()=>{r.workRecord||(state$1.defaultModeType==1?(headTopData.handleChangeModeType("practise"),(state$1.platform===IPlatform.PC||state$1.isPreView)&&(headTopData.showBack=!1)):r.modelType?(r.modelType==="practise"?headTopData.handleChangeModeType("practise"):r.modelType==="evaluating"&&headTopData.handleChangeModeType("evaluating"),headTopData.showBack=!1):setTimeout(()=>{headTopData.modeType="init"},500))},I=V=>{var R,Q;((R=V==null?void 0:V.data)==null?void 0:R.api)==="setPlayState"&&togglePlay("paused","courseware"),((Q=V==null?void 0:V.data)==null?void 0:Q.api)==="imagePos"&&V!=null&&V.data.data&&(state$1.playBtnDirection=V.data.data==="right"?"right":"left",state$1.musicScoreBtnDirection=state$1.playBtnDirection)},M="settingBoxClass_drag",T=(O=storeData.user)!=null&&O.id?String((B=storeData.user)==null?void 0:B.id):"",F=state$1.platform!==IPlatform.PC?{styleDrag:{value:null}}:useDrag$1([`${M} .top_drag`,`${M} .bom_drag`],M,toRef(headTopData,"settingMode"),T);onMounted(()=>{k(),window.addEventListener("message",I),state$1.platform===IPlatform.PC?s.value=!0:o.value=!0}),onUnmounted(()=>{window.removeEventListener("message",I)}),watch(state$1.setting,()=>{console.log(state$1.setting,"state.setting"),store_legacy.set("musicscoresetting",state$1.setting)}),(async()=>{var R;let V=null;try{const Q=await getGuidance({guideTag:"guideInfo"});Q.data?V=JSON.parse((R=Q.data)==null?void 0:R.guideValue)||null:V={},state$1.guideInfo=V}catch(Q){console.log(Q)}})();const N=async()=>{state$1.guideInfo.teacherDrag=!0;try{const V=await setGuidance({guideTag:"guideInfo",guideValue:JSON.stringify(state$1.guideInfo)})}catch(V){console.log(V)}};return()=>createVNode(Fragment,null,[createVNode("div",{class:[styles$r.headerTop],onClick:V=>{V.stopPropagation(),state$1.platform===IPlatform.PC&&window.parent.postMessage({api:"onAttendToggleMenu"},"*")}},[createVNode("div",{class:styles$r.headTopLeftBox},[createVNode("img",{src:iconBack,class:["headTopBackBtn",styles$r.img,!headTopData.showBack&&styles$r.hidenBack],onClick:P},null),state$1.modeType==="practise"&&smoothAnimationState.isShow.value?createVNode("div",{class:styles$r.title,onClick:()=>{isMusicList.value&&(musicListShow.value=!0)}},[createVNode(NoticeBar,{text:state$1.examSongName,background:"none"},null)]):createVNode("img",{src:listImg,class:[styles$r.img],onClick:()=>{isMusicList.value&&(musicListShow.value=!0)}},null)]),state$1.playType==="play"&&createVNode("div",{id:state$1.platform===IPlatform.PC?"teacherTop-0":"studnetT-0",style:{display:A.value.display?"":"none"},class:[styles$r.modeChangeBox,A.value.disabled&&styles$r.disabled],onClick:()=>{handleRessetState(),headTopData.modeType="init"}},[createVNode("img",{class:styles$r.img,src:iconMode},null),createVNode("div",{class:styles$r.title},[state$1.modeType==="practise"?"练习模式":state$1.modeType==="follow"?"跟练模式":state$1.modeType==="evaluating"?"评测模式":""])]),createVNode("div",{class:[styles$r.headRight],onClick:V=>{V.stopPropagation()}},[createVNode("div",{style:{display:y.value.display?"":"none"},class:[styles$r.btn,y.value.disabled&&styles$r.disabled],onClick:()=>{const V=state$1.playType,R=state$1.playSource;state$1.playType==="play"?(state$1.playType="sing",state$1.playSource=state$1.fanSong?"music":state$1.banSong?"background":"mingSong"):(state$1.playType="play",state$1.playSource=state$1.music?"music":"background"),handlerModeChange(V,R,!0)}},[createVNode("img",{style:{display:state$1.playType==="play"?"":"none"},class:styles$r.iconBtn,src:headImg("perform.png")},null),createVNode("img",{style:{display:state$1.playType==="play"?"none":""},class:styles$r.iconBtn,src:headImg("sing.png")},null),createVNode("span",null,[state$1.playType==="play"?"演奏":"演唱"])]),createVNode("div",{id:state$1.platform===IPlatform.PC?"teacherTop-1":"studnetT-1",style:{display:d.value.display?"":"none"},class:[styles$r.btn,d.value.disabled&&styles$r.disabled],onClick:()=>{const V=state$1.playType,R=state$1.playSource;state$1.playType==="play"?state$1.playSource=state$1.playSource==="music"?"background":"music":state$1.playSource==="music"?state$1.playSource=state$1.banSong?"background":"mingSong":state$1.playSource==="background"?state$1.playSource=state$1.mingSong?"mingSong":"music":state$1.playSource=state$1.fanSong?"music":"background",handlerModeChange(V,R)}},[createVNode("img",{style:{display:state$1.playSource==="music"?"":"none"},class:styles$r.iconBtn,src:state$1.playType==="play"?headImg("music.png"):headImg("music1.png")},null),createVNode("img",{style:{display:state$1.playSource==="background"?"":"none"},class:styles$r.iconBtn,src:state$1.playType==="play"?headImg("background.png"):headImg("background1.png")},null),createVNode("img",{style:{display:state$1.playSource==="mingSong"?"":"none"},class:styles$r.iconBtn,src:headImg("mingsong.png")},null),createVNode("span",null,[state$1.playSource==="music"?state$1.playType==="play"?"原声":"范唱":state$1.playSource==="background"?state$1.playType==="play"?"伴奏":"伴唱":"唱名"])]),createVNode("div",{id:state$1.platform===IPlatform.PC?"teacherTop-2":"studnetT-2",style:{display:g.value.display?"":"none"},class:[styles$r.btn,g.value.disabled&&styles$r.disabled],onClick:()=>handleChangeSection()},[createVNode("img",{style:{display:state$1.section.length===0?"":"none"},class:styles$r.iconBtn,src:headImg("section0.png")},null),createVNode("img",{style:{display:state$1.section.length===1?"":"none"},class:styles$r.iconBtn,src:headImg("section1.png")},null),createVNode("img",{style:{display:state$1.section.length===2?"":"none"},class:styles$r.iconBtn,src:headImg("section2.png")},null),createVNode("span",null,[createTextVNode("选段")])]),state$1.modeType!=="evaluating"&&createVNode(Fragment,null,[createVNode("div",{style:{display:u.value.display?"":"none"},class:[styles$r.btn,styles$r.metronomeBtn,u.value.disabled&&styles$r.disabled],onClick:async()=>{headData.speedShow=!headData.speedShow}},[createVNode("img",{style:{display:metronomeData.disable?"block":"none"},class:styles$r.iconBtn,src:headImg("tickon.png")},null),createVNode("img",{style:{display:metronomeData.disable?"none":"block"},class:styles$r.iconBtn,src:headImg("tickoff.png")},null),createVNode("span",{style:{whiteSpace:"nowrap"}},[createTextVNode("节拍")]),createVNode("div",{class:styles$r.speedCon},[createVNode("img",{src:headImg("speed.png")},null),createVNode("div",null,[state$1.speed])])]),createVNode(Popup,{show:headData.speedShow,"onUpdate:show":V=>headData.speedShow=V,class:"popup-custom van-scale center-closeBtn settingBoxClass_drag",transition:"van-scale",teleport:"body",style:F.styleDrag.value,"overlay-style":{background:"rgba(0, 0, 0, 0.3)"}},{default:()=>{var V;return[createVNode(Speed,null,null),state$1.platform===IPlatform.PC&&createVNode(Dragbom$1,{showGuide:!((V=state$1.guideInfo)!=null&&V.teacherDrag),onGuideDone:N},null)]}})]),state$1.musicRendered&&!r.lessonTrainingId&&!r.questionId&&state$1.isConcert&&createVNode("div",{class:[styles$r.btn,state$1.playState==="play"&&m.value.disabled&&styles$r.disabled],onClick:()=>{toggleMusicSheet.toggle(!0)}},[createVNode("img",{class:styles$r.iconBtn,src:headImg("shenggui.png")},null),createVNode("span",null,[createTextVNode("声轨")])]),createVNode("div",{id:state$1.platform===IPlatform.PC?"teacherTop-6":"studnetT-6",style:{display:a.value.display?"":"none"},class:[styles$r.btn,a.value.disabled&&styles$r.disabled],onClick:()=>headTopData.settingMode=!0},[createVNode("img",{class:styles$r.iconBtn,src:headImg("icon_menu.png")},null),createVNode("span",null,[createTextVNode("设置")])])])]),createVNode("div",{id:"studnetT-7",style:{display:b.value.display?"":"none"},class:[styles$r.playBtn,b.value.disabled&&styles$r.disabled,state$1.platform===IPlatform.PC&&state$1.musicScoreBtnDirection==="left"?styles$r.playLeftButton:state$1.platform===IPlatform.PC&&state$1.musicScoreBtnDirection==="right"?styles$r.playRightButton:""],onClick:()=>togglePlay()},[createVNode("div",{class:styles$r.btnWrap},[createVNode("img",{style:{display:state$1.playState==="play"?"none":""},class:styles$r.iconBtn,src:headImg("icon_play.png")},null),createVNode("img",{style:{display:state$1.playState==="play"?"":"none"},class:styles$r.iconBtn,src:headImg("icon_pause.png")},null),createVNode(Circle,{style:{opacity:state$1.playState==="play"?1:0},class:styles$r.progress,"stroke-width":80,currentRate:state$1.playProgress,rate:100,color:"#FFED78","layer-color":"rgba(0,0,0,0)"},null)])]),createVNode("div",{id:"tips-step-9",style:{display:resetBtn$2.value.display?"":"none"},class:[styles$r.resetBtn,resetBtn$2.value.disabled&&styles$r.disabled,state$1.platform===IPlatform.PC&&state$1.musicScoreBtnDirection==="left"?styles$r.pauseLeftButton:state$1.platform===IPlatform.PC&&state$1.musicScoreBtnDirection==="right"?styles$r.pauseRightButton:""],onClick:()=>handleResetPlay()},[createVNode("img",{class:styles$r.iconBtn,src:headImg("icon_reset.png")},null)]),createVNode(Popup,{show:headTopData.settingMode,"onUpdate:show":V=>headTopData.settingMode=V,class:"popup-custom van-scale center-closeBtn settingBoxClass_drag",transition:"van-scale",teleport:"body",style:F.styleDrag.value,"overlay-style":{background:"rgba(0, 0, 0, 0.3)"}},{default:()=>{var V;return[createVNode(Settting,null,null),state$1.platform===IPlatform.PC&&createVNode(Dragbom$1,{showGuide:!((V=state$1.guideInfo)!=null&&V.teacherDrag),onGuideDone:N},null)]}}),createVNode(ModeView,null,null),S.value&&!r.isCbs&&x.value&&createVNode(TeacherTop,null,null),E.value&&!r.isCbs&&x.value&&createVNode(StudentTop,null,null)])}}),workHomeRef=ref(),data=reactive({trainingType:"",worke:{}}),HANDLE_WORK_ADD=()=>{var i;data.trainingType==="PRACTICE"&&((i=workHomeRef.value)==null||i.handleAdd())},WorkIndex=defineComponent({name:"workIndex",setup(i){const e=getQuery(),r=()=>{if(!data.trainingType)return;const o=data.trainingType==="PRACTICE"?"practise":"evaluating";headTopData.handleChangeModeType(o)},s=async()=>{const o=await api_lessonTrainingTrainingStudentDetail(e.workRecord);(o==null?void 0:o.code)===200&&(data.trainingType=o.data.trainingType,data.worke=o.data,r())};return watch(()=>evaluatingData.jsonLoadDone,()=>{data.trainingType==="EVALUATION"&&evaluatingData.jsonLoading&&evaluatingData.jsonLoadDone&&headTopData.handleChangeModeType("evaluating")}),onMounted(()=>{s()}),()=>createVNode(Fragment,null,[data.trainingType==="PRACTICE"&&createVNode(WorkHome,{ref:workHomeRef,workeData:data.worke},null),data.trainingType==="EVALUATION"&&createVNode(WorkEaluating,{workeData:data.worke},null)])}}),browserInfo$2=browser();let socketStartTime=0;const popImgs={icon_bg,icon_close,icon_btn:icon_btn$1,icon_success},evaluatingData=reactive({contentData:{},rendered:!1,earphone:!1,soundEffect:!1,soundEffectFrequency:0,checkStep:0,checkEnd:!1,earphoneMode:!1,soundEffectMode:!1,websocketState:!1,startBegin:!1,backtime:0,evaluatings:{},resultData:{},resulstMode:!1,isComplete:!1,isDisabledPlayMusic:!1,socketErrorPop:!1,errorContents:"",socketErrorStatus:0,delayCheckSocketError:!1,isErrorState:!1,accompanyErrorType:"",isAudioPlayEnd:!1,preloadJson:!0,jsonLoading:!1,jsonLoadDone:!1,hideResultModal:!1}),sendOffsetTime=async i=>{var r;const e=await api_getDeviceDelay();api_midiMicDelay({header:{commond:"audioPlayStart",type:"SOUND_COMPARE"},body:{offsetTime:i,micDelay:(r=e==null?void 0:e.content)==null?void 0:r.value}})},handleStartEvaluat=async()=>{var i;if(state$1.modeType==="evaluating")handleCancelEvaluat();else if(state$1.platform!=="PC"){const e=await api_checkSocketStatus();((i=e==null?void 0:e.content)==null?void 0:i.status)==="connected"&&handleStopPlay()}else handleStopPlay();state$1.modeType=state$1.modeType==="evaluating"?"practise":"evaluating",state$1.modeType!=="evaluating"&&(evaluatingData.rendered=!1)},startCheckDelay=async()=>{var e;const i=await api_checkSocketStatus();return((e=i==null?void 0:i.content)==null?void 0:e.status)==="connected"?new Promise(r=>{r({checked:!0})}):(socketStartTime=+new Date,evaluatingData.socketErrorPop=!0,evaluatingData.socketErrorStatus=1,new Promise(r=>{r({checked:!1})}))},check_currentTime=()=>{let i=0;if(state$1.isSelectMeasureMode&&(i=state$1.section[0].time*1e3),getAudioCurrentTime()*1e3-i>=500){sendEvaluatingOffsetTime(500);return}setTimeout(()=>{check_currentTime()},10)},sendEvaluatingOffsetTime=async i=>{if(!evaluatingData.backtime)return;const r=Date.now()-evaluatingData.backtime-i;console.error("真正播放延迟",r,"currentTime:",i),await api_proxyServiceMessage({header:{commond:"audioPlayStart",type:"SOUND_COMPARE"},body:{offsetTime:r<0?0:r,micDelay:0}})},checkUseEarphone=async()=>{var e;const i=await getEarphone();return((e=i==null?void 0:i.content)==null?void 0:e.checkIsWired)||!1},handleEndSoundCheck=()=>{endSoundCheck()},connectWebsocket=async i=>{evaluatingData.contentData=i,evaluatingData.websocketState=!0},handlePerformDetection=async()=>{if(!evaluatingData.checkEnd){if(evaluatingData.checkStep===0){if(evaluatingData.checkStep=5,state$1.setting.soundEffect){evaluatingData.soundEffectMode=!0;return}const i=await api_getDeviceDelay();if(console.log("🚀 ~ delayTime:",i),!i){evaluatingData.soundEffectMode=!0;return}handlePerformDetection();return}if(evaluatingData.checkStep=5){if(evaluatingData.checkStep=10,!await checkUseEarphone()){evaluatingData.earphoneMode=!0;return}handlePerformDetection();return}evaluatingData.checkStep===10&&(evaluatingData.checkEnd=!0)}},addMeasureScore=(i,e=!0)=>{for(let r in evaluatingData.evaluatings)evaluatingData.evaluatings[r].show=!1;evaluatingData.evaluatings[i.measureRenderIndex]={...i,leve:getLeveByScoreMeasure(i.score),show:e}},handleScoreResult=i=>{if(console.log("返回",i),i!=null&&i.content){const{header:e,body:r}=i.content;e.commond==="checking"&&(evaluatingData.soundEffectFrequency=r.frequency),(e==null?void 0:e.commond)==="measureScore"&&(console.log("🚀 ~ 评测返回:",i),addMeasureScore(r)),(e==null?void 0:e.commond)==="overall"&&(console.log("🚀 ~ 评测返回:",i),state$1.isHideEvaluatReportSaveBtn=!1,setTimeout(()=>{data.trainingType==="EVALUATION"&&!evaluatingData.isComplete?evaluatingData.hideResultModal=!0:evaluatingData.hideResultModal=!1,evaluatingData.resulstMode=!evaluatingData.isErrorState},200),evaluatingData.resultData={...r,...getLeveByScore(r.score)},closeToast())}},handleStartBegin=async i=>{var s,o;state$1.isAppPlay&&await api_cloudSetCurrentTime({currentTime:0,songID:state$1.examSongId}),evaluatingData.isComplete=!1,evaluatingData.evaluatings={},evaluatingData.resultData={},evaluatingData.backtime=0,resetPlaybackToStart(),evaluatingData.isAudioPlayEnd=!1;const e=await startEvaluating(evaluatingData.contentData);if((e==null?void 0:e.api)!=="startEvaluating"){Snackbar$1.error("请在APP端进行评测"),evaluatingData.startBegin=!1;return}if((s=e==null?void 0:e.content)!=null&&s.reson){showToast((o=e.content)==null?void 0:o.des),evaluatingData.startBegin=!1;return}if(evaluatingData.startBegin=!0,evaluatingData.isDisabledPlayMusic){if(state$1.playState=state$1.playState==="paused"?"play":"paused",state$1.playState==="play"&&state$1.playType==="play"&&state$1.needTick||state$1.playType==="sing"&&state$1.needSingTick)if(state$1.playType==="play"&&!state$1.isOpenMetronome||state$1.playType==="sing"&&!state$1.isSingOpenMetronome){const a=await handleStartTick();if(console.log("🚀 ~ tickend:",a),!a){state$1.playState="paused",evaluatingData.startBegin=!1;return}}else handleStartTick();onPlay()}if(evaluatingData.isErrorState)return;let r=state$1.speed/state$1.originSpeed;r=parseFloat(r.toFixed(2)),await api_startRecordingCb({accompanimentState:state$1.setting.enableAccompaniment?1:0,firstNoteTime:i||0,speedRate:r},()=>{state$1.isAppPlay&&setTimeout(()=>{sendOffsetTime(0)},300)}),state$1.setting.camera&&(console.log("开始录制视频"),await api_startCapture()),state$1.isAppPlay&&(await api_cloudChangeSpeed({speed:state$1.originSpeed,originalSpeed:state$1.originSpeed,songID:state$1.examSongId}),audioData$1.progress=0,audioListStart(state$1.playState))},playMusic=async()=>{if(!await togglePlay("play")){evaluatingData.startBegin=!1,handleCancelEvaluat();return}check_currentTime(),state$1.setting.camera&&(console.log("开始录制视频"),api_startCapture())},recordStartTimePoint=async i=>{var r;if(console.error("开始录音"),!evaluatingData.startBegin)return;let e=((r=i==null?void 0:i.content)==null?void 0:r.inteveral)||0;browserInfo$2.ios&&(e*=1e3),evaluatingData.backtime=e||Date.now(),console.log("🚀 ~ 开始时间点:",evaluatingData.backtime,"已经录的时间:",Date.now()-e,"记录时间点:",Date.now()),!evaluatingData.isDisabledPlayMusic&&playMusic()},handleEndEvaluat=(i=!1)=>{!evaluatingData.startBegin||state$1.modeType!=="evaluating"||(console.log("评测结束1"),endEvaluating({musicScoreId:state$1.examSongId}),!i&&data.trainingType==="EVALUATION"?showToast({message:"完整演奏结束才算作业分数!"}):showLoadingToast({message:"评分中",duration:0,overlay:!0,overlayClass:styles$v.scoreMode}),setTimeout(()=>{evaluatingData.startBegin=!1},500),evaluatingData.isComplete=i,state$1.setting.camera&&(console.log("结束录制视频"),api_endCapture()))},handleEndBegin=()=>{handleEndEvaluat(),handleStopPlay()},handleCancelEvaluat=i=>{evaluatingData.evaluatings={},evaluatingData.startBegin=!1,closeToast(),api_proxyServiceMessage({header:{commond:"recordCancel",type:"SOUND_COMPARE",status:200}}),cancelEvaluating(),handleStopPlay(),console.log("评测结束2"),endEvaluating({musicScoreId:state$1.examSongId}),state$1.setting.camera&&(console.log("结束录制视频"),api_endCapture())},handleViewReport=(i,e)=>{var o;const r=((o=evaluatingData.resultData)==null?void 0:o[i])||"";let s="";switch(e){case"gym":s=location.origin+location.pathname+"#/report/"+r;break;case"orchestra":s=location.origin+location.pathname+"report-share.html?id="+r;break;case"instrument":s=location.origin+location.pathname+"#/evaluat-report?id="+r+"&musicRenderType="+state$1.musicRenderType;break;default:s=location.origin+location.pathname+"report-share.html?id="+r;break}api_openWebView({url:s,orientation:0,isHideTitle:!0,statusBarTextColor:!1,isOpenLight:!0,c_orientation:0})},handleComplexButton=i=>{console.log("监听是否隐藏保存按钮",i),i!=null&&i.content&&(i.content,state$1.isHideEvaluatReportSaveBtn=!0)},handleAccompanyError=i=>{if(console.log("异常信息返回",i),i!=null&&i.content){const{type:e,reson:r}=i.content;switch(e){case"enterBackground":case"playError":case"socketError":if(evaluatingData.soundEffectMode){evaluatingData.socketErrorStatus=0,evaluatingData.delayCheckSocketError=!0,evaluatingData.socketErrorPop=e==="socketError",evaluatingData.accompanyErrorType=e;return}state$1.modeType==="evaluating"&&evaluatingData.startBegin&&handleCancelEvaluat(),closeTick(),evaluatingData.socketErrorStatus=0,evaluatingData.socketErrorPop=e==="socketError",evaluatingData.isErrorState=!0,evaluatingData.accompanyErrorType=e,resetPlaybackToStart();break}}},handleSocketStatus=i=>{var e;if(((e=i==null?void 0:i.content)==null?void 0:e.status)==="connected"){const r=+new Date;evaluatingData.delayCheckSocketError=!1;const s=r-socketStartTime;if(s<1e3){const o=1e3-s;console.log(o,99999),setTimeout(()=>{evaluatingData.socketErrorStatus=2},o)}}},hanldeConfirmPop=async()=>{api_checkSocketStatus(),evaluatingData.socketErrorStatus=1,socketStartTime=+new Date},hanldeClosePop=()=>{evaluatingData.socketErrorPop=!1,evaluatingData.socketErrorStatus=0},Evaluating=defineComponent({name:"evaluating",setup(){const i=usePageVisibility(),e=reactive({finger:!1,play_mode:"",enableAccompaniment:!0}),r=()=>{e.finger=state$1.setting.displayFingering,state$1.setting.displayFingering=!1,e.play_mode=state$1.playSource,e.enableAccompaniment=state$1.setting.enableAccompaniment,e.enableAccompaniment||(console.log("关闭伴奏"),toggleMutePlayAudio(e.play_mode==="music"?"music":e.play_mode==="background"?"background":"mingSong",!0))},s=()=>{state$1.setting.displayFingering=e.finger,state$1.playSource=e.play_mode,e.enableAccompaniment||toggleMutePlayAudio(e.play_mode==="music"?"music":e.play_mode==="background"?"background":"mingSong",!1)};return watch(i,o=>{o=="hidden"&&evaluatingData.startBegin}),watch(()=>evaluatingData.socketErrorStatus,()=>{evaluatingData.socketErrorStatus===2&&setTimeout(()=>{evaluatingData.socketErrorPop=!1},1e3)}),onMounted(()=>{resetPlaybackToStart(),r(),evaluatingData.resultData={},evaluatingData.evaluatings={},evaluatingData.soundEffectFrequency=0,evaluatingData.checkStep=0,evaluatingData.rendered=!0,sendResult(handleScoreResult),hideComplexButton(handleComplexButton,!0),api_recordStartTime(recordStartTimePoint),addAccompanyError(handleAccompanyError),addSocketStatus(handleSocketStatus),state$1.isSelectMeasureMode||clearSelection(),console.log("加载评测模块成功")}),onUnmounted(()=>{evaluatingData.checkEnd=!1,evaluatingData.rendered=!1,resetPlaybackToStart(),removeResult(handleScoreResult),hideComplexButton(()=>{},!1),api_remove_recordStartTime(recordStartTimePoint),s(),removeAccompanyError(handleAccompanyError),removeSocketStatus(handleSocketStatus),api_disconnectSocket(),console.log("卸载评测模块成功")}),()=>createVNode("div",null,[createVNode("div",{class:styles$v.hiddenPop},[createVNode("img",{src:popImgs.icon_bg},null),createVNode("img",{src:popImgs.icon_btn},null),createVNode("img",{src:popImgs.icon_success},null),createVNode("img",{src:popImgs.icon_close},null)]),createVNode(Popup,{teleport:"body",closeOnClickOverlay:!1,class:["popup-custom","van-scale"],transition:"van-scale",show:evaluatingData.socketErrorPop,"onUpdate:show":o=>evaluatingData.socketErrorPop=o},{default:()=>[createVNode(AbnormalPop,{onConfirm:hanldeConfirmPop,onClose:hanldeClosePop},null)]})])}}),initMidi=(i,e)=>{const r=ref(!1);if(e){console.log("曲谱为midi,使用app播放"),r.value=!0,state$1.midiPlayIniting=!0;const s=getDuration(state$1.osmd);api_cloudDestroy(),api_cloudDetail({midi:e,denominator:s.denominator,numerator:s.numerator,originalSpeed:state$1.originSpeed,interval:50,duration:i*1e3},()=>{state$1.midiPlayIniting=!1,r.value=!1,e&&changeMode("music")}),state$1.durationNum=i}return{initial:r}},getActiveMidiId=()=>{var i,e,r,s,o,a,l;return(l=(a=(o=(s=(r=(e=(i=state$1.osmd)==null?void 0:i.sheet)==null?void 0:e.instruments)==null?void 0:r[0])==null?void 0:s.subInstruments)==null?void 0:o[0])==null?void 0:a.midiInstrumentID)!=null?l:0},changeMode=async(i,e)=>{var s,o,a,l;const r=i==="background"?"music":"background";if(console.log(!state$1.songs[i],i,r),state$1.isAppPlay){const c=new Map;for(const u of state$1.partListNames)c.set(u,60);api_cloudVolume({activeMidiId:getActiveMidiId(),activeMidiVolume:r==="background"?100:0,parts:Array.from(c.keys()).map(u=>({name:u,volume:c.get(u)}))})}state$1.playSource=i,e==="all"?((s=state$1.audiosInstance)==null||s.setMute(!0,state$1.songs[r]),(o=state$1.audiosInstance)==null||o.setMute(!0,state$1.songs[i])):((a=state$1.audiosInstance)==null||a.setMute(!0,state$1.songs[r]),(l=state$1.audiosInstance)==null||l.setMute(!1,state$1.songs[i]))},cloudToggleState=async i=>{const e=await api_cloudGetMediaStatus(),r=e==null?void 0:e.content.status;if(r==="init"||r==="suspend"&&i==="paused")return;r==="suspend"?(state$1.isSelectMeasureMode&&(audioData$1.progress=state$1.midiSectionStart),await api_cloudPlay({songID:state$1.examSongId,startTime:audioData$1.progress*1e3,originalSpeed:state$1.originSpeed,speed:state$1.modeType==="evaluating"?state$1.originSpeed:state$1.speed,hertz:440}),onPlay()):(await api_cloudSuspend({songID:state$1.examSongId}),state$1.modeType==="evaluating"&&(audioData$1.progress=0));const s=await api_cloudGetMediaStatus();state$1.playState=(s==null?void 0:s.content.status)==="suspend"?"paused":"play",console.log(s,"cloudGetMediaStatused")},v$2="5.8.1",fr$2=60,ip$2=0,op$2=65,w$2=300,h$2=180,nm$2="学生端下拉刷新动画js",ddd$2=0,assets$2=[{id:"comp_0",nm:"小黄",fr:60,layers:[{ddd:0,ind:1,ty:4,nm:"Fill 163",parent:3,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[35.447,31.957,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:1,k:[{i:{x:[.833,.833,.833],y:[.833,.833,.833]},o:{x:[.167,.167,.167],y:[.167,.167,.167]},t:0,s:[100,100,100]},{i:{x:[.833,.833,.833],y:[.833,.833,.833]},o:{x:[.167,.167,.167],y:[.167,.167,.167]},t:15,s:[100,100,100]},{i:{x:[.833,.833,.833],y:[.833,.833,.833]},o:{x:[.167,.167,.167],y:[.167,.167,.167]},t:27,s:[100,0,100]},{t:39,s:[100,100,100]}],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[0,0],[0,1.5],[0,0],[-1.5,0],[0,0],[0,-1.5],[0,0],[1.5,0]],o:[[0,0],[-1.5,0],[0,0],[0,-1.5],[0,0],[1.5,0],[0,0],[0,1.5],[0,0]],v:[[.005,3.911],[.005,3.911],[-2.715,1.191],[-2.715,-1.189],[.005,-3.909],[.005,-3.909],[2.715,-1.189],[2.715,1.191],[.005,3.911]],c:!1},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[.176470592618,.176470592618,.176470592618,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 163",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:65,st:0,bm:0},{ddd:0,ind:2,ty:4,nm:"Fill 161",parent:3,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[12.424,31.957,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:1,k:[{i:{x:[.833,.833,.833],y:[.833,.833,.833]},o:{x:[.167,.167,.167],y:[.167,.167,.167]},t:0,s:[100,100,100]},{i:{x:[.833,.833,.833],y:[.833,.833,.833]},o:{x:[.167,.167,.167],y:[.167,.167,.167]},t:15,s:[100,100,100]},{i:{x:[.833,.833,.833],y:[.833,.833,.833]},o:{x:[.167,.167,.167],y:[.167,.167,.167]},t:27,s:[100,0,100]},{t:39,s:[100,100,100]}],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[0,0],[0,1.5],[0,0],[-1.5,0],[0,-1.5],[0,0],[1.5,0]],o:[[0,0],[-1.5,0],[0,0],[0,-1.5],[1.5,0],[0,0],[0,1.5],[0,0]],v:[[.005,3.911],[.005,3.911],[-2.715,1.191],[-2.715,-1.189],[.005,-3.909],[2.715,-1.189],[2.715,1.191],[.005,3.911]],c:!1},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[.176470592618,.176470592618,.176470592618,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 161",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:65,st:0,bm:0},{ddd:0,ind:3,ty:0,nm:"头部",parent:8,refId:"comp_1",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[-.338,-43.104,0],ix:2,l:2},a:{a:0,k:[37,32.5,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,w:74,h:65,ip:0,op:300,st:0,bm:0},{ddd:0,ind:4,ty:4,nm:"头羽毛",parent:3,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:1,k:[{i:{x:[.833],y:[.833]},o:{x:[.167],y:[.167]},t:-.199,s:[0]},{i:{x:[.833],y:[.833]},o:{x:[.167],y:[.167]},t:31,s:[11]},{t:59.80078125,s:[0]}],ix:10},p:{a:0,k:[37.277,1.784,0],ix:2,l:2},a:{a:0,k:[-.092,7.609,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[-1.39,2.17],[-3.16,-3.82],[-3.08,.03],[2.22,-6.55],[-1.37,-1.98],[7.21,-2.85]],o:[[-7.09,-3.01],[1.4,-2.17],[-1.64,-6.83],[3.17,-.03],[2.54,-3.82],[1.41,2.05],[0,0]],v:[[-.092,7.609],[-8.622,-.181],[-1.732,1.729],[.368,-7.611],[1.748,1.779],[8.618,-.261],[-.092,7.609]],c:!1},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[1,.745098054409,.160784319043,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 109",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:65,st:0,bm:0},{ddd:0,ind:5,ty:4,nm:"右翅膀",parent:8,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:1,k:[{i:{x:[.833],y:[.833]},o:{x:[.167],y:[.167]},t:0,s:[1]},{i:{x:[.833],y:[.833]},o:{x:[.167],y:[.167]},t:26.4,s:[-10]},{t:50.400390625,s:[1]}],ix:10},p:{a:0,k:[17.229,-14.066,0],ix:2,l:2},a:{a:0,k:[-5.048,-8.534,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[-2.87,-5.57],[.18,5.37],[1.8,3.44],[1.79,1.96],[3.27,-1.84]],o:[[-3.61,2.74],[4.32,8.34],[1.77,.4],[3.18,.23],[-4.49,-4.8],[0,0]],v:[[-5.048,-8.534],[-5.428,3.156],[2.712,5.706],[5.312,.266],[6.282,-5.354],[-5.048,-8.534]],c:!1},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[1,.75686275959,.321568638086,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 107",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:65,st:0,bm:0},{ddd:0,ind:6,ty:4,nm:"形状结合",parent:5,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[5.711,4.732,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[-2.51,-2.48],[1.27,3.11],[4.36,4.67],[-.29,-4.24]],o:[[1.42,3.52],[3.77,3.72],[-1.28,-3.1],[-2.91,-3.11],[0,0]],v:[[-8.848,-.848],[-2.949,8.152],[3.032,8.032],[-4.918,-2.528],[-8.848,-.848]],c:!1},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ind:1,ty:"sh",ix:2,ks:{a:0,k:{i:[[0,0],[-2.78,-2.18],[1.62,2.94],[4.86,4.16],[-1.64,-4.02]],o:[[1.8,3.34],[4.15,3.29],[-1.61,-2.95],[-3.23,-2.77],[0,0]],v:[[-5.232,-2.974],[1.638,5.306],[7.558,4.536],[-1.522,-5.084],[-5.232,-2.974]],c:!1},ix:2},nm:"路径 2",mn:"ADBE Vector Shape - Group",hd:!1},{ind:2,ty:"sh",ix:3,ks:{a:0,k:{i:[[0,0],[-2.58,-1.57],[1.63,2.52],[4.54,3.06],[-1,-3.89]],o:[[1.83,2.87],[3.86,2.35],[-1.64,-2.53],[-3.02,-2.04],[0,0]],v:[[-3.263,-6.834],[3.357,-.184],[8.417,-2.114],[-.223,-9.614],[-3.263,-6.834]],c:!1},ix:2},nm:"路径 3",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"mm",mm:2,nm:"合并路径 1",mn:"ADBE Vector Filter - Merge",hd:!1},{ty:"fl",c:{a:0,k:[1,.92549020052,.898039221764,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"形状结合",np:5,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:65,st:0,bm:0},{ddd:0,ind:7,ty:4,nm:"Fill 99",parent:8,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[-3.075,-1.695,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[.02,-8.65],[-9.2,-.39],[-.09,8],[0,0]],o:[[0,0],[-.02,7.04],[9.72,.41],[.14,-11.94],[0,0]],v:[[-9.309,-15.965],[-14.879,3.545],[-1.669,16.125],[14.871,2.275],[11.671,-16.145]],c:!0},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[1,.898039221764,.858823537827,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 99",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:65,st:0,bm:0},{ddd:0,ind:8,ty:4,nm:"肚子",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:1,k:[{i:{x:.667,y:1},o:{x:.333,y:0},t:0,s:[71.995,138.87,0],to:[0,-.5,0],ti:[0,0,0]},{i:{x:.667,y:1},o:{x:.333,y:0},t:16.801,s:[71.995,135.87,0],to:[0,0,0],ti:[0,0,0]},{i:{x:.667,y:1},o:{x:.333,y:0},t:36,s:[71.995,138.87,0],to:[0,0,0],ti:[0,0,0]},{i:{x:.667,y:1},o:{x:.333,y:0},t:55.199,s:[71.995,135.87,0],to:[0,0,0],ti:[0,-.5,0]},{t:65,s:[71.995,138.87,0]}],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[.26,-14.06],[-14.89,.67],[.66,9.37],[0,0]],o:[[0,0],[.06,9.23],[20,-.71],[-.81,-11.27],[0,0]],v:[[-13.634,-19.31],[-21.074,3.44],[-.104,19.27],[20.966,-2.47],[13.356,-19.31]],c:!0},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[1,.717647075653,.152941182256,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 97",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:65,st:0,bm:0},{ddd:0,ind:9,ty:4,nm:"左翅膀",parent:8,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:1,k:[{i:{x:[.833],y:[.833]},o:{x:[.167],y:[.167]},t:0,s:[1]},{i:{x:[.833],y:[.833]},o:{x:[.167],y:[.167]},t:26.4,s:[16]},{t:50.400390625,s:[1]}],ix:10},p:{a:0,k:[-15.107,-14.92,0],ix:2,l:2},a:{a:0,k:[6.126,-6.656,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[4.17,-4.67],[-4.95,2.09],[-2.57,2.92],[-1.19,2.38],[2.89,2.39]],o:[[-3.85,-2.4],[-6.25,7.01],[.26,1.8],[.93,3.06],[2.87,-5.91],[0,0]],v:[[6.126,-6.656],[-4.924,-2.836],[-4.395,5.674],[1.615,6.154],[7.215,5.054],[6.126,-6.656]],c:!1},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[1,.75686275959,.321568638086,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 93",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:65,st:0,bm:0},{ddd:0,ind:10,ty:4,nm:"形状结合",parent:9,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[-2.632,8.245,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[1.42,-3.23],[-2.44,2.3],[-2.8,5.74],[3.85,-1.78]],o:[[-2.78,2.59],[-2.13,4.85],[2.44,-2.3],[1.87,-3.83],[0,0]],v:[[-2.154,-8.684],[-8.444,.046],[-6.204,5.586],[.816,-5.614],[-2.154,-8.684]],c:!1},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ind:1,ty:"sh",ix:2,ks:{a:0,k:{i:[[0,0],[1.05,-3.37],[-2.17,2.56],[-2.14,6.02],[3.16,-2.97]],o:[[-2.47,2.88],[-1.58,5.05],[2.18,-2.56],[1.44,-4.02],[0,0]],v:[[1.125,-6.068],[-4.155,3.312],[-1.315,8.562],[4.415,-3.348],[1.125,-6.068]],c:!1},ix:2},nm:"路径 2",mn:"ADBE Vector Shape - Group",hd:!1},{ind:2,ty:"sh",ix:3,ks:{a:0,k:{i:[[0,0],[.54,-2.96],[-1.78,2.43],[-1.23,5.33],[3.28,-2.32]],o:[[-2.02,2.74],[-.81,4.45],[1.77,-2.43],[.82,-3.55],[0,0]],v:[[5.43,-5.614],[1.59,2.946],[5.21,6.986],[9.12,-3.764],[5.43,-5.614]],c:!1},ix:2},nm:"路径 3",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"mm",mm:2,nm:"合并路径 1",mn:"ADBE Vector Filter - Merge",hd:!1},{ty:"fl",c:{a:0,k:[1,.92549020052,.898039221764,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"形状结合",np:5,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:65,st:0,bm:0},{ddd:0,ind:11,ty:4,nm:"Fill 83",parent:8,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:1,k:[{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:0,s:[46]},{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:25,s:[10.368]},{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:46,s:[0]},{t:65,s:[46]}],ix:10},p:{a:0,k:[-9.466,17.022,0],ix:2,l:2},a:{a:0,k:[.763,-6.235,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[-.47,-2.82],[0,0],[1.15,-.73],[0,0],[.16,-.22],[0,0],[-.55,-.39],[0,0],[-.4,.27],[0,0],[.09,-.29],[0,0],[-.65,-.19],[0,0],[-.2,.64],[0,0],[0,0],[-.18,.22],[0,0],[-1.12,-.42],[0,0],[-.04,-.01],[0,0],[-.37,-.22],[0,0],[-.35,.14],[0,0],[0,0],[0,0],[-.41,-.04],[0,0],[-.16,-.09],[0,0],[0,0],[-.3,.54],[0,0],[.59,.32],[0,0],[.58,.05],[0,0],[0,0],[.44,-.09],[0,0],[0,0],[0,0],[0,0],[0,0],[.06,.18],[0,0],[-.23,2.06],[0,0],[.67,.07],[0,0],[0,0],[.14,-.6]],o:[[-.36,1.52],[0,0],[-1.92,-.73],[0,0],[-.38,.24],[0,0],[-.39,.55],[0,0],[.42,.3],[0,0],[-.24,.38],[0,0],[-.19,.65],[0,0],[.64,.19],[0,0],[0,0],[.06,-.15],[0,0],[.49,-.62],[0,0],[.04,.02],[0,0],[.3,.12],[0,0],[.33,.19],[0,0],[0,0],[0,0],[.48,-.12],[0,0],[.25,.02],[0,0],[0,0],[.56,.21],[0,0],[.33,-.59],[0,0],[-.49,-.27],[0,0],[0,0],[-.44,0],[0,0],[0,0],[0,0],[0,0],[0,0],[-.06,-.09],[0,0],[-.86,-2.52],[0,0],[.07,-.67],[0,0],[0,0],[-.59,.02],[0,0]],v:[[-.587,-5.155],[-.847,1.125],[-.847,1.125],[-5.467,1.215],[-5.467,1.215],[-6.257,1.925],[-6.257,1.925],[-5.957,3.625],[-5.957,3.625],[-4.577,3.645],[-4.577,3.645],[-5.057,4.675],[-5.057,4.675],[-4.227,6.195],[-4.227,6.195],[-2.707,5.375],[-2.707,5.375],[-2.677,5.275],[-2.327,4.695],[-2.327,4.695],[-.037,4.255],[-.037,4.255],[.093,4.305],[.093,4.305],[1.093,4.815],[1.093,4.815],[2.183,4.895],[2.183,4.895],[2.363,4.825],[2.663,4.735],[4.033,4.585],[4.033,4.585],[4.663,4.755],[4.663,4.755],[4.823,4.825],[6.323,4.275],[6.323,4.275],[5.843,2.615],[5.843,2.615],[4.233,2.145],[4.233,2.145],[3.793,2.125],[2.473,2.275],[2.473,2.275],[2.313,2.305],[2.243,2.255],[2.223,2.235],[2.143,2.125],[1.923,1.745],[1.923,1.745],[1.843,-4.895],[1.843,-4.895],[.763,-6.235],[.763,-6.235],[.573,-6.245],[-.587,-5.155]],c:!1},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[1,.803921580315,.192156866193,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 83",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:65,st:0,bm:0},{ddd:0,ind:12,ty:4,nm:"Fill 81",parent:8,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:1,k:[{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:0,s:[-15]},{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:19.199,s:[-20]},{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:38.4,s:[16]},{t:65,s:[-15]}],ix:10},p:{a:0,k:[7.939,16.923,0],ix:2,l:2},a:{a:0,k:[-.223,-6.41,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[.09,-.6],[0,0],[-.7,-2.78],[0,0],[1.09,-.82],[0,0],[.13,-.23],[0,0],[-.59,-.34],[0,0],[-.37,.31],[0,0],[.06,-.3],[0,0],[-.66,-.14],[0,0],[-.14,.67],[0,0],[0,0],[-.15,.23],[0,0],[-1.15,-.33],[0,0],[-.04,0],[0,0],[-.38,-.18],[0,0],[-.34,.18],[0,0],[0,0],[0,0],[-.41,0],[0,0],[-.18,-.08],[0,0],[0,0],[-.25,.56],[0,0],[.62,.27],[0,0],[.58,0],[0,0],[0,0],[.43,-.13],[0,0],[0,0],[0,0],[0,0],[0,0],[.07,.17],[0,0],[-.05,2.07],[0,0],[.67,.02],[0,0]],o:[[-.6,.07],[0,0],[-.23,1.55],[0,0],[-1.97,-.57],[0,0],[-.35,.26],[0,0],[-.34,.58],[0,0],[.45,.27],[0,0],[-.2,.4],[0,0],[-.14,.66],[0,0],[.66,.13],[0,0],[0,0],[.04,-.16],[0,0],[.45,-.66],[0,0],[.05,.01],[0,0],[.31,.1],[0,0],[.35,.17],[0,0],[0,0],[0,0],[.47,-.16],[0,0],[.26,0],[0,0],[0,0],[.57,.16],[0,0],[.27,-.62],[0,0],[-.51,-.23],[0,0],[0,0],[-.44,.04],[0,0],[0,0],[0,0],[0,0],[0,0],[-.07,-.08],[0,0],[-1.07,-2.45],[0,0],[.02,-.68],[0,0],[0,0]],v:[[-.223,-6.41],[-1.293,-5.23],[-1.293,-5.23],[-1.023,1.06],[-1.023,1.06],[-5.613,1.54],[-5.613,1.54],[-6.333,2.31],[-6.333,2.31],[-5.893,3.98],[-5.893,3.98],[-4.523,3.88],[-4.523,3.88],[-4.903,4.95],[-4.903,4.95],[-3.953,6.4],[-3.953,6.4],[-2.513,5.44],[-2.513,5.44],[-2.483,5.35],[-2.193,4.74],[-2.193,4.74],[.057,4.11],[.057,4.11],[.187,4.14],[.187,4.14],[1.227,4.56],[1.227,4.56],[2.327,4.55],[2.327,4.55],[2.497,4.47],[2.787,4.35],[4.137,4.08],[4.137,4.08],[4.787,4.2],[4.787,4.2],[4.957,4.26],[6.397,3.58],[6.397,3.58],[5.777,1.97],[5.777,1.97],[4.137,1.64],[4.137,1.64],[3.697,1.66],[2.387,1.91],[2.387,1.91],[2.227,1.97],[2.157,1.92],[2.137,1.9],[2.047,1.79],[1.797,1.44],[1.797,1.44],[1.147,-5.17],[1.147,-5.17],[-.043,-6.42],[-.043,-6.42]],c:!0},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[1,.803921580315,.192156866193,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 81",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:65,st:0,bm:0},{ddd:0,ind:13,ty:4,nm:"尾巴",parent:8,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[11.249,15.285,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[-1.19,-1.63],[.15,1.97],[1.41,1.26],[0,0]],o:[[0,0],[1.01,1.39],[-.11,-1.37],[-1.41,-1.26],[0,0]],v:[[-3.951,-2.776],[-2.741,5.714],[.809,4.474],[-2.721,-5.416],[-3.951,-2.776]],c:!1},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ind:1,ty:"sh",ix:2,ks:{a:0,k:{i:[[0,0],[-.74,-1.88],[-.33,1.95],[1.06,1.57],[0,0]],o:[[0,0],[.63,1.59],[.24,-1.35],[-1.05,-1.57],[0,0]],v:[[-6.205,-2.433],[-7.135,6.097],[-3.395,5.767],[-4.355,-4.683],[-6.205,-2.433]],c:!1},ix:2},nm:"路径 2",mn:"ADBE Vector Shape - Group",hd:!1},{ind:2,ty:"sh",ix:3,ks:{a:0,k:{i:[[0,0],[-.12,-2.01],[-.93,1.74],[.52,1.81],[0,0]],o:[[0,0],[.11,1.71],[.63,-1.21],[-.52,-1.82],[0,0]],v:[[-8.228,-2.433],[-11.748,5.387],[-8.078,6.237],[-5.778,-4.003],[-8.228,-2.433]],c:!1},ix:2},nm:"路径 3",mn:"ADBE Vector Shape - Group",hd:!1},{ind:3,ty:"sh",ix:4,ks:{a:0,k:{i:[[0,0],[-.16,-2.02],[1.16,1.6],[-.25,1.88],[0,0]],o:[[0,0],[.13,1.71],[-.8,-1.11],[.26,-1.87],[0,0]],v:[[.284,-4.339],[4.884,2.911],[1.374,4.261],[-2.366,-5.549],[.284,-4.339]],c:!1},ix:2},nm:"路径 4",mn:"ADBE Vector Shape - Group",hd:!1},{ind:4,ty:"sh",ix:5,ks:{a:0,k:{i:[[0,0],[-.64,-1.92],[1.51,1.27],[.2,1.88],[0,0]],o:[[0,0],[.54,1.63],[-1.05,-.88],[-.2,-1.88],[0,0]],v:[[2.266,-5.531],[8.466,.399],[5.396,2.559],[-.594,-6.061],[2.266,-5.531]],c:!1},ix:2},nm:"路径 5",mn:"ADBE Vector Shape - Group",hd:!1},{ind:5,ty:"sh",ix:6,ks:{a:0,k:{i:[[0,0],[-1.23,-1.59],[1.85,.7],[.81,1.71],[0,0]],o:[[0,0],[1.06,1.36],[-1.28,-.48],[-.82,-1.7],[0,0]],v:[[3.56,-6.811],[11.38,-3.291],[9.2,-.231],[.69,-6.371],[3.56,-6.811]],c:!1},ix:2},nm:"路径 6",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"mm",mm:2,nm:"合并路径 1",mn:"ADBE Vector Filter - Merge",hd:!1},{ty:"fl",c:{a:0,k:[1,.807843148708,.46274510026,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"尾巴",np:8,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:65,st:0,bm:0}]},{id:"comp_1",nm:"▽ 编组 7",fr:60,layers:[{ddd:0,ind:1,ty:4,nm:"Fill 125",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[23.155,38.641,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[.51,0],[0,.61],[-.51,0],[0,-.61]],o:[[-.51,0],[0,-.61],[.51,0],[0,.61]],v:[[.001,1.103],[-.919,.003],[.001,-1.107],[.921,.003]],c:!0},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[1,.737254917622,0,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:-36,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 125",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:300,st:0,bm:0},{ddd:0,ind:2,ty:4,nm:"Fill 121",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[21.032,42.372,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[3.82,-.22],[.08,-2.52],[-1.16,-1.28],[-1.57,-.26],[-1.95,.97],[-.8,.96],[.56,1.67]],o:[[-.77,-2.27],[-3.67,.21],[-.06,1.78],[1.09,1.22],[2.27,.37],[1.33,-.65],[.93,-1.13],[0,0]],v:[[6.429,-1.819],[-.281,-7.229],[-7.221,1.001],[-5.511,3.781],[-3.011,7.201],[2.659,4.151],[6.769,3.371],[6.429,-1.819]],c:!1},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[1,.803921580315,.192156866193,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 121",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:300,st:0,bm:0},{ddd:0,ind:3,ty:4,nm:"Fill 119",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[19.803,46.927,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[2.93,.43],[0,0],[-4.18,-4.77]],o:[[.72,.82],[-2.93,-.43],[0,0],[0,0]],v:[[4.781,-1.938],[-.789,4.142],[-4.879,-2.338],[4.781,-1.938]],c:!1},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[.807843148708,.376470595598,.023529412225,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 119",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:300,st:0,bm:0},{ddd:0,ind:4,ty:4,nm:"Fill 117",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[20.882,47.257,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[5.05,.07],[0,0],[-7.02,-7.73]],o:[[.72,.82],[-3.99,-.06],[0,0],[0,0]],v:[[6.421,-2.698],[-1.249,6.292],[-6.519,-3.268],[6.421,-2.698]],c:!1},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[1,.674509823322,.20000000298,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 117",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:300,st:0,bm:0},{ddd:0,ind:5,ty:4,nm:"▨ Fill 148",parent:11,td:1,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[0,0,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[7.71,-4.11],[1.27,-7.25],[1.18,-4.83],[-15.84,-4.13],[-17.22,5.66],[3.23,10.85],[20.38,.9]],o:[[0,0],[-7.77,4.14],[-1.83,10.49],[-1.18,4.83],[12.33,3.22],[15.46,-5.08],[-4.06,-13.59],[0,0]],v:[[1.162,-31.978],[-17.888,-28.848],[-31.888,-11.198],[-33.988,5.532],[-21.048,29.842],[21.852,27.552],[32.612,-6.638],[1.162,-31.978]],c:!1},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[1,.717647075653,.152941182256,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 111",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1},{ty:"fl",c:{a:0,k:[1,0,0,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1}],ip:0,op:300,st:0,bm:0},{ddd:0,ind:6,ty:4,nm:"Fill 147",tt:1,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[42.06,41.577,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[.76,5.26],[-5.32,.75],[-.76,-5.26],[5.32,-.75]],o:[[-5.32,.76],[-.76,-5.25],[5.32,-.76],[.76,5.26],[0,0]],v:[[1.381,9.514],[-9.629,1.364],[-1.379,-9.516],[9.631,-1.366],[1.381,9.514]],c:!1},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[1,.807843148708,.780392169952,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 147",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:300,st:0,bm:0},{ddd:0,ind:7,ty:4,nm:"▨ Fill 116",parent:11,td:1,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[0,0,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[7.71,-4.11],[1.27,-7.25],[1.18,-4.83],[-15.84,-4.13],[-17.22,5.66],[3.23,10.85],[20.38,.9]],o:[[0,0],[-7.77,4.14],[-1.83,10.49],[-1.18,4.83],[12.33,3.22],[15.46,-5.08],[-4.06,-13.59],[0,0]],v:[[1.162,-31.978],[-17.888,-28.848],[-31.888,-11.198],[-33.988,5.532],[-21.048,29.842],[21.852,27.552],[32.612,-6.638],[1.162,-31.978]],c:!1},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[1,.717647075653,.152941182256,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 111",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1},{ty:"fl",c:{a:0,k:[1,0,0,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1}],ip:0,op:300,st:0,bm:0},{ddd:0,ind:8,ty:4,nm:"Fill 115",tt:1,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[8.369,41.133,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[.65,4.52],[-4.57,.65],[-.65,-4.53],[4.57,-.65]],o:[[-4.58,.65],[-.66,-4.52],[4.57,-.64],[.66,4.52],[0,0]],v:[[1.191,8.189],[-8.279,1.179],[-1.189,-8.191],[8.281,-1.171],[1.191,8.189]],c:!1},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[1,.807843148708,.780392169952,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 115",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:300,st:0,bm:0},{ddd:0,ind:9,ty:4,nm:"▨ Fill 114",parent:11,td:1,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[0,0,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[7.71,-4.11],[1.27,-7.25],[1.18,-4.83],[-15.84,-4.13],[-17.22,5.66],[3.23,10.85],[20.38,.9]],o:[[0,0],[-7.77,4.14],[-1.83,10.49],[-1.18,4.83],[12.33,3.22],[15.46,-5.08],[-4.06,-13.59],[0,0]],v:[[1.162,-31.978],[-17.888,-28.848],[-31.888,-11.198],[-33.988,5.532],[-21.048,29.842],[21.852,27.552],[32.612,-6.638],[1.162,-31.978]],c:!1},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[1,.717647075653,.152941182256,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 111",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1},{ty:"fl",c:{a:0,k:[1,0,0,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1}],ip:0,op:300,st:0,bm:0},{ddd:0,ind:10,ty:4,nm:"Fill 113",tt:1,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[32.823,39.921,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[1.55,-6.35],[-8.47,-5.25],[-8.32,0],[6.7,11.5],[1.85,4.61],[3.3,-10.47],[0,0],[0,0],[13.67,-3.02]],o:[[-6.71,1.48],[-1.19,4.91],[10,6.19],[18.45,0],[-4.72,-8.11],[-4.97,-12.41],[-2.48,7.85],[0,0],[0,0],[0,0]],v:[[-23.945,-21.089],[-28.755,-3.229],[-22.225,19.261],[8.855,24.701],[26.865,-1.169],[21.355,-15.309],[-6.775,-16.969],[-7.985,-2.029],[-15.015,-1.339],[-23.945,-21.089]],c:!1},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[1,.952941179276,.909803926945,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 113",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:300,st:0,bm:0},{ddd:0,ind:11,ty:4,nm:"Fill 111",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[39.052,32.078,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[7.71,-4.11],[1.27,-7.25],[1.18,-4.83],[-15.84,-4.13],[-17.22,5.66],[3.23,10.85],[20.38,.9]],o:[[0,0],[-7.77,4.14],[-1.83,10.49],[-1.18,4.83],[12.33,3.22],[15.46,-5.08],[-4.06,-13.59],[0,0]],v:[[1.162,-31.978],[-17.888,-28.848],[-31.888,-11.198],[-33.988,5.532],[-21.048,29.842],[21.852,27.552],[32.612,-6.638],[1.162,-31.978]],c:!1},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[1,.717647075653,.152941182256,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 111",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:300,st:0,bm:0}]},{id:"comp_2",nm:"小蓝",fr:60,layers:[{ddd:0,ind:1,ty:4,nm:"Fill 167",parent:3,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[39.7,29.4,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:1,k:[{i:{x:[.833,.833,.833],y:[.833,.833,.833]},o:{x:[.167,.167,.167],y:[.167,.167,.167]},t:0,s:[100,100,100]},{i:{x:[.833,.833,.833],y:[.833,.833,.833]},o:{x:[.167,.167,.167],y:[.167,.167,.167]},t:15,s:[100,100,100]},{i:{x:[.833,.833,.833],y:[.833,.833,.833]},o:{x:[.167,.167,.167],y:[.167,.167,.167]},t:27,s:[100,0,100]},{t:39,s:[100,100,100]}],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[0,0],[0,1.5],[0,0],[-1.5,0],[0,0],[0,-1.5],[0,0],[1.5,0]],o:[[0,0],[-1.5,0],[0,0],[0,-1.5],[0,0],[1.5,0],[0,0],[0,1.5],[0,0]],v:[[.005,3.911],[.005,3.911],[-2.715,1.191],[-2.715,-1.189],[.005,-3.909],[.005,-3.909],[2.715,-1.189],[2.715,1.191],[.005,3.911]],c:!1},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[.176470592618,.176470592618,.176470592618,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 167",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:65,st:0,bm:0},{ddd:0,ind:2,ty:4,nm:"Fill 165",parent:3,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[16.858,29.368,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:1,k:[{i:{x:[.833,.833,.833],y:[.833,.833,.833]},o:{x:[.167,.167,.167],y:[.167,.167,.167]},t:0,s:[100,100,100]},{i:{x:[.833,.833,.833],y:[.833,.833,.833]},o:{x:[.167,.167,.167],y:[.167,.167,.167]},t:15,s:[100,100,100]},{i:{x:[.833,.833,.833],y:[.833,.833,.833]},o:{x:[.167,.167,.167],y:[.167,.167,.167]},t:27,s:[100,0,100]},{t:39,s:[100,100,100]}],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[0,0],[0,1.5],[0,0],[-1.5,0],[0,-1.5],[0,0],[1.5,0]],o:[[0,0],[-1.5,0],[0,0],[0,-1.5],[1.5,0],[0,0],[0,1.5],[0,0]],v:[[.005,3.911],[.005,3.911],[-2.715,1.191],[-2.715,-1.189],[.005,-3.909],[2.715,-1.189],[2.715,1.191],[.005,3.911]],c:!1},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[.176470592618,.176470592618,.176470592618,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 165",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:65,st:0,bm:0},{ddd:0,ind:3,ty:0,nm:"▽ 小蓝头部",parent:7,refId:"comp_3",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[-4.994,-9.401,0],ix:2,l:2},a:{a:0,k:[37.596,59.391,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,w:76,h:59,ip:0,op:300,st:0,bm:0},{ddd:0,ind:4,ty:4,nm:"右边翅膀",parent:7,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:1,k:[{i:{x:[.833],y:[.833]},o:{x:[.167],y:[.167]},t:0,s:[1]},{i:{x:[.833],y:[.833]},o:{x:[.167],y:[.167]},t:26.4,s:[-10]},{t:50.400390625,s:[1]}],ix:10},p:{a:0,k:[12.654,-12.713,0],ix:2,l:2},a:{a:0,k:[-4.95,-6.93,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[-2.64,-4.57],[.12,4.07],[1.07,2.64],[1.65,1.84],[3.44,-1.85]],o:[[-2.25,1.46],[4.22,7.33],[1.66,.52],[1.87,.66],[-4.14,-4.51],[0,0]],v:[[-4.95,-6.93],[-5.72,2.31],[2.81,4.85],[5.31,1.03],[6.35,-3.57],[-4.95,-6.93]],c:!1},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[.145098045468,.792156875134,.898039221764,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 73",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:65,st:0,bm:0},{ddd:0,ind:5,ty:4,nm:"形状结合",parent:4,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[5.137,4.215,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[-2.53,-2.13],[1.38,2.63],[4.4,4.01],[-.5,-3.54]],o:[[1.55,2.97],[3.78,3.2],[-1.38,-2.62],[-2.94,-2.67],[0,0]],v:[[-8.245,-.565],[-2.135,7.095],[3.545,7.145],[-4.595,-1.875],[-8.245,-.565]],c:!1},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ind:1,ty:"sh",ix:2,ks:{a:0,k:{i:[[0,0],[-2.57,-2.09],[1.43,2.6],[4.47,3.93],[-1.4,-3.32]],o:[[1.6,2.94],[3.84,3.13],[-1.43,-2.6],[-2.99,-2.61],[0,0]],v:[[-4.881,-3.567],[1.369,3.983],[7.049,3.923],[-1.251,-4.947],[-4.881,-3.567]],c:!1},ix:2},nm:"路径 2",mn:"ADBE Vector Shape - Group",hd:!1},{ind:2,ty:"sh",ix:3,ks:{a:0,k:{i:[[0,0],[-2.42,-1.57],[1.51,2.28],[4.25,3.03],[-1.41,-2.43]],o:[[1.69,2.59],[3.62,2.36],[-1.51,-2.28],[-2.83,-2.01],[0,0]],v:[[-3.061,-6.381],[3.109,-.141],[7.929,-1.241],[-.141,-8.401],[-3.061,-6.381]],c:!1},ix:2},nm:"路径 3",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"mm",mm:2,nm:"合并路径 1",mn:"ADBE Vector Filter - Merge",hd:!1},{ty:"fl",c:{a:0,k:[.843137264252,.952941179276,1,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"形状结合",np:5,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:65,st:0,bm:0},{ddd:0,ind:6,ty:4,nm:"Fill 75",parent:7,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[-4.995,-1.082,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[-.07,-8.19],[-8.55,.08],[.35,7.42],[0,0]],o:[[0,0],[.06,6.52],[9.97,-.09],[-.31,-6.57],[0,0]],v:[[-7.214,-13.7],[-12.364,2.76],[.016,13.7],[12.336,-.01],[7.106,-13.7]],c:!0},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[.956862747669,.984313726425,1,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 75",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:65,st:0,bm:0},{ddd:0,ind:7,ty:4,nm:"肚子",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:1,k:[{i:{x:.667,y:1},o:{x:.333,y:0},t:0,s:[71.995,138.87,0],to:[0,-.5,0],ti:[0,0,0]},{i:{x:.667,y:1},o:{x:.333,y:0},t:16.801,s:[71.995,135.87,0],to:[0,0,0],ti:[0,0,0]},{i:{x:.667,y:1},o:{x:.333,y:0},t:36,s:[71.995,138.87,0],to:[0,0,0],ti:[0,0,0]},{i:{x:.667,y:1},o:{x:.333,y:0},t:55.199,s:[71.995,135.87,0],to:[0,0,0],ti:[0,-.5,0]},{t:65,s:[71.995,138.87,0]}],ix:2,l:2},a:{a:0,k:[26.02,25.692,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[0,-13.37],[-14.47,.86],[.47,8.7],[0,0]],o:[[0,0],[.06,8.57],[15.88,-.56],[-.56,-10.44],[0,0]],v:[[-13.451,-17.975],[-19.531,3.595],[.709,17.895],[19.489,-.375],[14.009,-17.975]],c:!0},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[.039215687662,.717647075653,.882352948189,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 65",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:65,st:0,bm:0},{ddd:0,ind:8,ty:4,nm:"Fill 63",parent:3,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:1,k:[{i:{x:[.833],y:[.833]},o:{x:[.167],y:[.167]},t:0,s:[-7]},{i:{x:[.833],y:[.833]},o:{x:[.167],y:[.167]},t:31,s:[11]},{t:60,s:[-7]}],ix:10},p:{a:0,k:[37.667,2.395,0],ix:2,l:2},a:{a:0,k:[-3.85,6.385,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[-1.81,-.93],[0,0],[-.95,1.84],[0,0],[1.81,.93],[0,0],[.56,0],[0,0],[.67,-1.3]],o:[[-.94,1.85],[0,0],[1.81,.93],[0,0],[.95,-1.84],[0,0],[-.53,-.27],[0,0],[-1.36,0],[0,0]],v:[[-2.45,-4.424],[-3.85,6.385],[-3.85,6.385],[4.11,-1.055],[4.11,-1.055],[2.54,-6.075],[2.54,-6.075],[.89,-6.475],[.89,-6.475],[-2.45,-4.424]],c:!1},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[.145098045468,.792156875134,.898039221764,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 63",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:65,st:0,bm:0},{ddd:0,ind:9,ty:4,nm:"Fill 59",parent:7,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:1,k:[{i:{x:[.833],y:[.833]},o:{x:[.167],y:[.167]},t:0,s:[-7]},{i:{x:[.833],y:[.833]},o:{x:[.167],y:[.167]},t:31.199,s:[4]},{t:60,s:[-7]}],ix:10},p:{a:0,k:[12.646,9.967,0],ix:2,l:2},a:{a:0,k:[-4.135,-3.705,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[3.43,1.89],[1.26,.02],[0,0],[-1.43,-2.65],[-.59,.43],[0,0],[-.98,.96],[0,0]],o:[[3.36,1.78],[-1.65,-.92],[-1.35,-.02],[-.52,.85],[1.32,2.44],[.83,-.6],[0,0],[1.2,-1.18],[0,0]],v:[[2.335,.155],[1.985,-3.185],[-1.995,-4.615],[-4.135,-3.705],[-3.825,1.175],[.895,4.535],[.735,2.505],[4.375,3.815],[2.335,.155]],c:!1},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[.145098045468,.792156875134,.898039221764,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 59",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:65,st:0,bm:0},{ddd:0,ind:10,ty:4,nm:"左边翅膀",parent:7,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:1,k:[{i:{x:[.833],y:[.833]},o:{x:[.167],y:[.167]},t:0,s:[1]},{i:{x:[.833],y:[.833]},o:{x:[.167],y:[.167]},t:26.4,s:[16]},{t:50.400390625,s:[1]}],ix:10},p:{a:0,k:[-14.451,-11.229,0],ix:2,l:2},a:{a:0,k:[4.486,-5.785,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[3.14,-3.7],[-3.49,1.36],[-1.95,1.73],[-1.09,2],[2.67,2.4]],o:[[-1.95,-1.5],[-5.04,5.91],[.05,1.6],[.01,1.82],[2.62,-4.98],[0,0]],v:[[4.486,-5.785],[-3.744,-3.605],[-3.304,4.555],[.766,5.545],[5.076,5.025],[4.486,-5.785]],c:!1},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[.145098045468,.792156875134,.898039221764,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 55",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:65,st:0,bm:0},{ddd:0,ind:11,ty:4,nm:"形状结合",parent:10,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[-2.062,6.371,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[1.06,-2.84],[-1.85,2],[-2.11,5.05],[2.91,-1.53]],o:[[-2.09,2.25],[-1.61,4.27],[1.84,-2.01],[1.41,-3.36],[0,0]],v:[[-2.037,-7.299],[-6.777,.341],[-5.067,5.281],[.223,-4.549],[-2.037,-7.299]],c:!1},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ind:1,ty:"sh",ix:2,ks:{a:0,k:{i:[[0,0],[1.01,-2.86],[-1.81,2.04],[-2.02,5.09],[2.44,-2.24]],o:[[-2.05,2.29],[-1.53,4.29],[1.8,-2.04],[1.34,-3.39],[0,0]],v:[[1.605,-5.313],[-2.995,2.417],[-1.195,7.317],[3.915,-2.603],[1.605,-5.313]],c:!1},ix:2},nm:"路径 2",mn:"ADBE Vector Shape - Group",hd:!1},{ind:2,ty:"sh",ix:3,ks:{a:0,k:{i:[[0,0],[.61,-2.58],[-1.51,2.01],[-1.3,4.61],[1.66,-1.97]],o:[[-1.72,2.27],[-.93,3.86],[1.51,-2.01],[.87,-3.07],[0,0]],v:[[4.603,-4.617],[1.103,2.653],[3.543,6.483],[7.243,-2.707],[4.603,-4.617]],c:!1},ix:2},nm:"路径 3",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"mm",mm:2,nm:"合并路径 1",mn:"ADBE Vector Filter - Merge",hd:!1},{ty:"fl",c:{a:0,k:[.843137264252,.952941179276,1,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"形状结合",np:5,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:65,st:0,bm:0},{ddd:0,ind:12,ty:4,nm:"Fill 7",parent:7,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:1,k:[{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:0,s:[46]},{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:25,s:[10.368]},{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:46,s:[0]},{t:65,s:[46]}],ix:10},p:{a:0,k:[-8.409,14.143,0],ix:2,l:2},a:{a:0,k:[.573,-6.245,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[-.47,-2.82],[0,0],[1.15,-.73],[0,0],[.16,-.22],[0,0],[-.55,-.39],[0,0],[-.4,.27],[0,0],[.09,-.29],[0,0],[-.65,-.19],[0,0],[-.2,.64],[0,0],[0,0],[-.17,.22],[0,0],[-1.12,-.42],[0,0],[-.04,-.01],[0,0],[-.37,-.22],[0,0],[-.35,.14],[0,0],[0,0],[0,0],[-.41,-.04],[0,0],[-.16,-.09],[0,0],[0,0],[-.3,.54],[0,0],[.59,.32],[0,0],[.58,.05],[0,0],[0,0],[.44,-.09],[0,0],[0,0],[0,0],[0,0],[0,0],[.06,.18],[0,0],[-.23,2.06],[0,0],[.67,.07],[0,0],[0,0],[.14,-.6]],o:[[-.36,1.52],[0,0],[-1.92,-.73],[0,0],[-.38,.24],[0,0],[-.39,.55],[0,0],[.42,.3],[0,0],[-.24,.38],[0,0],[-.19,.65],[0,0],[.64,.19],[0,0],[0,0],[.06,-.15],[0,0],[.5,-.62],[0,0],[.04,.02],[0,0],[.3,.12],[0,0],[.33,.19],[0,0],[0,0],[0,0],[.48,-.12],[0,0],[.25,.02],[0,0],[0,0],[.56,.21],[0,0],[.33,-.59],[0,0],[-.49,-.27],[0,0],[0,0],[-.44,0],[0,0],[0,0],[0,0],[0,0],[0,0],[-.06,-.09],[0,0],[-.86,-2.52],[0,0],[.07,-.67],[0,0],[0,0],[-.59,.02],[0,0]],v:[[-.587,-5.155],[-.847,1.125],[-.847,1.125],[-5.467,1.215],[-5.467,1.215],[-6.257,1.925],[-6.257,1.925],[-5.957,3.625],[-5.957,3.625],[-4.577,3.645],[-4.577,3.645],[-5.057,4.675],[-5.057,4.675],[-4.227,6.195],[-4.227,6.195],[-2.707,5.375],[-2.707,5.375],[-2.677,5.275],[-2.337,4.695],[-2.337,4.695],[-.037,4.255],[-.037,4.255],[.093,4.305],[.093,4.305],[1.093,4.815],[1.093,4.815],[2.183,4.895],[2.183,4.895],[2.363,4.825],[2.663,4.735],[4.033,4.585],[4.033,4.585],[4.663,4.755],[4.663,4.755],[4.823,4.825],[6.323,4.275],[6.323,4.275],[5.843,2.615],[5.843,2.615],[4.233,2.145],[4.233,2.145],[3.793,2.125],[2.473,2.275],[2.473,2.275],[2.313,2.305],[2.243,2.255],[2.223,2.235],[2.143,2.125],[1.923,1.745],[1.923,1.745],[1.843,-4.895],[1.843,-4.895],[.763,-6.235],[.763,-6.235],[.573,-6.245],[-.587,-5.155]],c:!1},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[1,.803921580315,.192156866193,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 7",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:65,st:0,bm:0},{ddd:0,ind:13,ty:4,nm:"Fill 5",parent:7,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:1,k:[{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:0,s:[-15]},{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:19.199,s:[-20]},{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:38.4,s:[16]},{t:65,s:[-15]}],ix:10},p:{a:0,k:[7.582,13.805,0],ix:2,l:2},a:{a:0,k:[-.223,-6.41,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[.09,-.6],[0,0],[-.7,-2.78],[0,0],[1.09,-.82],[0,0],[.13,-.23],[0,0],[-.58,-.34],[0,0],[-.37,.31],[0,0],[.06,-.3],[0,0],[-.66,-.13],[0,0],[-.08,0],[0,0],[0,0],[-.12,.58],[0,0],[0,0],[-.15,.23],[0,0],[-1.15,-.33],[0,0],[-.04,-.01],[0,0],[-.38,-.18],[0,0],[-.35,.17],[0,0],[0,0],[0,0],[-.41,0],[0,0],[-.17,-.08],[0,0],[0,0],[-.25,.56],[0,0],[.62,.27],[0,0],[.58,0],[0,0],[0,0],[.43,-.13],[0,0],[0,0],[0,0],[0,0],[0,0],[.07,.17],[0,0],[-.05,2.07],[0,0],[.67,.02],[0,0]],o:[[-.6,.07],[0,0],[-.23,1.55],[0,0],[-1.97,-.57],[0,0],[-.35,.26],[0,0],[-.34,.58],[0,0],[.46,.27],[0,0],[-.2,.4],[0,0],[-.14,.66],[0,0],[.08,.02],[0,0],[0,0],[.57,0],[0,0],[0,0],[.04,-.15],[0,0],[.44,-.67],[0,0],[.05,.01],[0,0],[.31,.1],[0,0],[.35,.17],[0,0],[0,0],[0,0],[.47,-.16],[0,0],[.26,0],[0,0],[0,0],[.58,.16],[0,0],[.27,-.62],[0,0],[-.51,-.23],[0,0],[0,0],[-.44,.03],[0,0],[0,0],[0,0],[0,0],[0,0],[-.07,-.08],[0,0],[-1.07,-2.45],[0,0],[.02,-.68],[0,0],[0,0]],v:[[-.223,-6.41],[-1.293,-5.23],[-1.293,-5.23],[-1.023,1.061],[-1.023,1.061],[-5.613,1.54],[-5.613,1.54],[-6.333,2.311],[-6.333,2.311],[-5.903,3.98],[-5.903,3.98],[-4.523,3.88],[-4.523,3.88],[-4.903,4.951],[-4.903,4.951],[-3.953,6.391],[-3.953,6.391],[-3.713,6.421],[-3.713,6.421],[-3.703,6.421],[-2.513,5.441],[-2.513,5.441],[-2.483,5.34],[-2.193,4.74],[-2.193,4.74],[.057,4.111],[.057,4.111],[.187,4.141],[.187,4.141],[1.227,4.561],[1.227,4.561],[2.327,4.551],[2.327,4.551],[2.497,4.471],[2.787,4.35],[4.137,4.081],[4.137,4.081],[4.777,4.201],[4.777,4.201],[4.947,4.26],[6.397,3.581],[6.397,3.581],[5.777,1.971],[5.777,1.971],[4.137,1.641],[4.137,1.641],[3.697,1.661],[2.387,1.911],[2.387,1.911],[2.227,1.96],[2.157,1.911],[2.137,1.9],[2.047,1.79],[1.797,1.441],[1.797,1.441],[1.147,-5.169],[1.147,-5.169],[-.043,-6.419],[-.043,-6.419]],c:!0},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[1,.803921580315,.192156866193,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 5",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:65,st:0,bm:0}]},{id:"comp_3",nm:"▽ 小蓝头部",fr:60,layers:[{ddd:0,ind:1,ty:4,nm:"▨ Fill 154",parent:17,td:1,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[0,0,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[22.34,0],[0,-16.8],[-17.99,0],[0,24.43]],o:[[0,-16.79],[-23.2,0],[0,29.06],[17.98,0],[0,0]],v:[[32.839,1.127],[-.462,-29.693],[-32.842,1.167],[-.462,29.697],[32.839,1.127]],c:!1},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[.074509806931,.772549033165,.886274516582,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 77",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1},{ty:"fl",c:{a:0,k:[1,0,0,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1}],ip:0,op:300,st:0,bm:0},{ddd:0,ind:2,ty:4,nm:"Fill 153",tt:1,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[40.578,37.269,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[.3,.8],[-2.12,.11],[-.3,-.8],[2.12,-.11]],o:[[-2.11,.12],[-.3,-.8],[2.11,-.12],[.3,.8],[0,0]],v:[[.545,1.446],[-3.825,.206],[-.545,-1.444],[3.825,-.204],[.545,1.446]],c:!1},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[1,.807843148708,.780392169952,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 153",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:300,st:0,bm:0},{ddd:0,ind:3,ty:4,nm:"▨ Fill 152",parent:17,td:1,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[0,0,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[22.34,0],[0,-16.8],[-17.99,0],[0,24.43]],o:[[0,-16.79],[-23.2,0],[0,29.06],[17.98,0],[0,0]],v:[[32.839,1.127],[-.462,-29.693],[-32.842,1.167],[-.462,29.697],[32.839,1.127]],c:!1},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[.074509806931,.772549033165,.886274516582,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 77",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1},{ty:"fl",c:{a:0,k:[1,0,0,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1}],ip:0,op:300,st:0,bm:0},{ddd:0,ind:4,ty:4,nm:"Fill 151",tt:1,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[15.731,37.269,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[.3,.8],[-2.12,.11],[-.3,-.8],[2.12,-.11]],o:[[-2.11,.12],[-.3,-.8],[2.11,-.12],[.3,.8],[0,0]],v:[[.545,1.446],[-3.825,.206],[-.545,-1.444],[3.825,-.204],[.545,1.446]],c:!1},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[1,.807843148708,.780392169952,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 151",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:300,st:0,bm:0},{ddd:0,ind:6,ty:3,nm:"▽ 嘴巴",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[27.449,37.126,0],ix:2,l:2},a:{a:0,k:[6.267,8.121,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,ip:0,op:300,st:0,bm:0},{ddd:0,ind:7,ty:4,nm:"Fill 145",parent:6,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[7.881,3.41,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[.44,0],[0,.54],[-.44,0],[0,-.54]],o:[[0,.54],[-.44,0],[0,-.54],[.44,0],[0,0]],v:[[.793,.003],[.003,.973],[-.797,.003],[.003,-.977],[.793,.003]],c:!1},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[1,.737254917622,0,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:-33,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 145",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:300,st:0,bm:0},{ddd:0,ind:8,ty:4,nm:"Fill 141",parent:6,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[6.267,6.386,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[3.32,-.19],[.07,-2.23],[-1,-1.14],[-1.37,-.23],[-1.69,.85],[-.7,.85],[.5,1.48]],o:[[-.66,-2],[-3.18,.18],[-.05,1.57],[.95,1.07],[1.97,.33],[1.16,-.58],[.81,-.99],[0,0]],v:[[5.573,-1.606],[-.247,-6.376],[-6.267,.884],[-4.787,3.344],[-2.607,6.354],[2.303,3.664],[5.873,2.974],[5.573,-1.606]],c:!1},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[1,.803921580315,.192156866193,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 141",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:300,st:0,bm:0},{ddd:0,ind:9,ty:4,nm:"Fill 139",parent:6,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[5.199,10.404,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[2.54,.37],[0,0],[-3.62,-4.21]],o:[[.63,.72],[-2.54,-.38],[0,0],[0,0]],v:[[4.146,-1.708],[-.684,3.662],[-4.234,-2.068],[4.146,-1.708]],c:!1},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[.807843148708,.376470595598,.023529412225,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 139",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:300,st:0,bm:0},{ddd:0,ind:10,ty:4,nm:"Fill 137",parent:6,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[6.137,10.695,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[4.38,.07],[0,0],[-6.09,-6.81]],o:[[.62,.73],[-3.46,-.05],[0,0],[0,0]],v:[[5.573,-2.387],[-1.087,5.543],[-5.657,-2.877],[5.573,-2.387]],c:!1},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[1,.674509823322,.20000000298,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 137",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:300,st:0,bm:0},{ddd:0,ind:11,ty:4,nm:"▨ Fill 96",parent:17,td:1,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[0,0,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[22.34,0],[0,-16.8],[-17.99,0],[0,24.43]],o:[[0,-16.79],[-23.2,0],[0,29.06],[17.98,0],[0,0]],v:[[32.839,1.127],[-.462,-29.693],[-32.842,1.167],[-.462,29.697],[32.839,1.127]],c:!1},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[.074509806931,.772549033165,.886274516582,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 77",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1},{ty:"fl",c:{a:0,k:[1,0,0,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1}],ip:0,op:300,st:0,bm:0},{ddd:0,ind:12,ty:4,nm:"Fill 95",tt:1,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[27.286,30.354,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[-3.67,.14],[-.93,-4.03],[4.38,-6.88]],o:[[0,0],[2.75,-.1],[0,0],[0,0]],v:[[-5.084,3.265],[.146,-3.265],[5.086,3.245],[-5.084,3.265]],c:!1},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[1,1,1,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 95",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:300,st:0,bm:0},{ddd:0,ind:13,ty:4,nm:"▨ Fill 86",parent:17,td:1,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[0,0,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[22.34,0],[0,-16.8],[-17.99,0],[0,24.43]],o:[[0,-16.79],[-23.2,0],[0,29.06],[17.98,0],[0,0]],v:[[32.839,1.127],[-.462,-29.693],[-32.842,1.167],[-.462,29.697],[32.839,1.127]],c:!1},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[.074509806931,.772549033165,.886274516582,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 77",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1},{ty:"fl",c:{a:0,k:[1,0,0,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1}],ip:0,op:300,st:0,bm:0},{ddd:0,ind:14,ty:4,nm:"Fill 85",tt:1,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[45.149,32.572,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[7.79,0],[0,9.1],[-7.79,0],[0,-9.1]],o:[[0,9.1],[-7.79,0],[0,-9.1],[7.79,0],[0,0]],v:[[14.111,.003],[.001,16.473],[-14.109,.003],[.001,-16.477],[14.111,.003]],c:!1},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[.956862747669,.984313726425,1,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 85",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:300,st:0,bm:0},{ddd:0,ind:15,ty:4,nm:"▨ Fill 80",parent:17,td:1,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[0,0,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[22.34,0],[0,-16.8],[-17.99,0],[0,24.43]],o:[[0,-16.79],[-23.2,0],[0,29.06],[17.98,0],[0,0]],v:[[32.839,1.127],[-.462,-29.693],[-32.842,1.167],[-.462,29.697],[32.839,1.127]],c:!1},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[.074509806931,.772549033165,.886274516582,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 77",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1},{ty:"fl",c:{a:0,k:[1,0,0,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1}],ip:0,op:300,st:0,bm:0},{ddd:0,ind:16,ty:4,nm:"Fill 79",tt:1,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[12.009,31.87,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[6.63,0],[0,7.74],[-6.63,0],[0,-7.75]],o:[[0,7.74],[-6.63,0],[0,-7.75],[6.63,0],[0,0]],v:[[12.01,.005],[.001,14.025],[-12.01,.005],[.001,-14.025],[12.01,.005]],c:!1},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[.956862747669,.984313726425,1,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 79",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:300,st:0,bm:0},{ddd:0,ind:17,ty:4,nm:"Fill 77",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[42.898,29.693,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[22.34,0],[0,-16.8],[-17.99,0],[0,24.43]],o:[[0,-16.79],[-23.2,0],[0,29.06],[17.98,0],[0,0]],v:[[32.839,1.127],[-.462,-29.693],[-32.842,1.167],[-.462,29.697],[32.839,1.127]],c:!1},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[.074509806931,.772549033165,.886274516582,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 77",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:300,st:0,bm:0}]},{id:"comp_4",nm:"小红",fr:60,layers:[{ddd:0,ind:1,ty:4,nm:"Fill 159",parent:3,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[38.004,30.016,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:1,k:[{i:{x:[.833,.833,.833],y:[.833,.833,.833]},o:{x:[.167,.167,.167],y:[.167,.167,.167]},t:0,s:[100,100,100]},{i:{x:[.833,.833,.833],y:[.833,.833,.833]},o:{x:[.167,.167,.167],y:[.167,.167,.167]},t:15,s:[100,100,100]},{i:{x:[.833,.833,.833],y:[.833,.833,.833]},o:{x:[.167,.167,.167],y:[.167,.167,.167]},t:27,s:[100,0,100]},{t:39,s:[100,100,100]}],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[0,0],[0,1.5],[0,0],[-1.5,0],[0,0],[0,-1.5],[0,0],[1.5,0]],o:[[0,0],[-1.5,0],[0,0],[0,-1.5],[0,0],[1.5,0],[0,0],[0,1.5],[0,0]],v:[[-.005,3.911],[-.005,3.911],[-2.715,1.191],[-2.715,-1.189],[-.005,-3.909],[-.005,-3.909],[2.715,-1.189],[2.715,1.191],[-.005,3.911]],c:!1},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[.176470592618,.176470592618,.176470592618,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 159",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:65,st:0,bm:0},{ddd:0,ind:2,ty:4,nm:"Fill 157",parent:3,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[15.698,30.016,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:1,k:[{i:{x:[.833,.833,.833],y:[.833,.833,.833]},o:{x:[.167,.167,.167],y:[.167,.167,.167]},t:0,s:[100,100,100]},{i:{x:[.833,.833,.833],y:[.833,.833,.833]},o:{x:[.167,.167,.167],y:[.167,.167,.167]},t:15,s:[100,100,100]},{i:{x:[.833,.833,.833],y:[.833,.833,.833]},o:{x:[.167,.167,.167],y:[.167,.167,.167]},t:27,s:[100,0,100]},{t:39,s:[100,100,100]}],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[0,0],[0,1.5],[0,0],[-1.49,0],[0,0],[0,-1.5],[0,0],[1.51,0]],o:[[0,0],[-1.49,0],[0,0],[0,-1.5],[0,0],[1.51,0],[0,0],[0,1.5],[0,0]],v:[[-.005,3.911],[-.005,3.911],[-2.715,1.191],[-2.715,-1.189],[-.005,-3.909],[-.005,-3.909],[2.715,-1.189],[2.715,1.191],[-.005,3.911]],c:!1},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[.176470592618,.176470592618,.176470592618,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 157",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:65,st:0,bm:0},{ddd:0,ind:3,ty:0,nm:"▽ 头部",parent:8,refId:"comp_5",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[-2.914,-10.744,0],ix:2,l:2},a:{a:0,k:[36.182,59.861,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,w:74,h:60,ip:0,op:300,st:0,bm:0},{ddd:0,ind:4,ty:4,nm:"Fill 61",parent:3,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:1,k:[{i:{x:[.833],y:[.833]},o:{x:[.167],y:[.167]},t:-.199,s:[-2]},{i:{x:[.833],y:[.833]},o:{x:[.167],y:[.167]},t:31,s:[9]},{t:59.80078125,s:[-2]}],ix:10},p:{a:0,k:[39.549,2.06,0],ix:2,l:2},a:{a:0,k:[-1.625,5.752,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[.95,-1.62],[.41,-1.15],[.03,.09],[.47,.28],[.82,-.32],[-.5,-1.3],[-1.53,-.67],[-.02,-.01],[-.96,1.62],[1.59,.94]],o:[[-1.59,-.94],[-.29,.48],[-.03,-.11],[-.2,-.52],[-.67,-.4],[-1.38,.53],[.43,1.12],[.02,.02],[1.59,.94],[.95,-1.62],[0,0]],v:[[4.676,-5.294],[.066,-4.064],[-1.054,-1.454],[-1.154,-1.754],[-2.194,-2.974],[-4.554,-3.144],[-6.144,.176],[-1.854,5.586],[-1.794,5.646],[5.826,-.664],[4.676,-5.294]],c:!1},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[1,.51372551918,.501960813999,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 61",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:65,st:0,bm:0},{ddd:0,ind:5,ty:4,nm:"Fill 39",parent:8,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:1,k:[{i:{x:[.833],y:[.833]},o:{x:[.167],y:[.167]},t:0,s:[1]},{i:{x:[.833],y:[.833]},o:{x:[.167],y:[.167]},t:26.4,s:[-10]},{t:50.400390625,s:[1]}],ix:10},p:{a:0,k:[11.124,-9.754,0],ix:2,l:2},a:{a:0,k:[-7.484,-4.889,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[-3.23,-4.33],[.67,4.12],[1.31,2.26],[3.27,2.35],[2.61,-1.53]],o:[[-3.46,2.27],[4.61,6.16],[1.55,.25],[1.75,.34],[-4.29,-3.53],[0,0]],v:[[-4.765,-7.133],[-5.175,3.547],[3.325,4.647],[5.585,.667],[5.545,-4.653],[-4.765,-7.133]],c:!1},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[1,.51372551918,.51372551918,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 39",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:65,st:0,bm:0},{ddd:0,ind:6,ty:4,nm:"形状结合",parent:5,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[4.274,3.195,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[-2.82,-1.29],[2.03,2.21],[5.02,2.54],[-2.56,-3.09]],o:[[2.29,2.51],[4.23,1.93],[-2.03,-2.21],[-3.34,-1.7],[0,0]],v:[[-7.108,1.628],[.552,7.328],[5.322,5.318],[-4.488,-1.042],[-7.108,1.628]],c:!1},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ind:1,ty:"sh",ix:2,ks:{a:0,k:{i:[[0,0],[-2.68,-1.31],[1.62,2.18],[4.82,2.34],[-2.28,-2.55]],o:[[2.04,2.29],[4.03,1.96],[-1.72,-2.31],[-3.23,-1.57],[0,0]],v:[[-4.17,-1.798],[2.91,3.602],[7.81,1.932],[-1.32,-3.828],[-4.17,-1.798]],c:!1},ix:2},nm:"路径 2",mn:"ADBE Vector Shape - Group",hd:!1},{ind:2,ty:"sh",ix:3,ks:{a:0,k:{i:[[0,0],[-2.4,-1],[1.5,2],[4.54,1.41],[-2,-2.44]],o:[[1.94,2.05],[3.59,1.5],[-1.44,-1.92],[-2.79,-.86],[0,0]],v:[[-2.919,-5.47],[3.591,-.89],[7.631,-2.74],[-.509,-7.82],[-2.919,-5.47]],c:!1},ix:2},nm:"路径 3",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"mm",mm:2,nm:"合并路径 1",mn:"ADBE Vector Filter - Merge",hd:!1},{ty:"fl",c:{a:0,k:[1,.92549020052,.898039221764,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"形状结合",np:5,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:65,st:0,bm:0},{ddd:0,ind:7,ty:4,nm:"Fill 41",parent:8,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[-2.916,-1.869,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[1.41,-9.6],[-8.24,-.73],[1.88,10.33],[0,0]],o:[[0,0],[-.95,6.46],[11.64,1.02],[-1.18,-6.46],[0,0]],v:[[-9.342,-14.293],[-13.192,1.267],[-1.972,14.217],[12.958,-3.983],[8.988,-14.043]],c:!0},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[1,.898039221764,.858823537827,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 41",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:65,st:0,bm:0},{ddd:0,ind:8,ty:4,nm:"肚子",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:1,k:[{i:{x:.667,y:1},o:{x:.333,y:0},t:0,s:[71.995,138.87,0],to:[0,-.5,0],ti:[0,0,0]},{i:{x:.667,y:1},o:{x:.333,y:0},t:16.801,s:[71.995,135.87,0],to:[0,0,0],ti:[0,0,0]},{i:{x:.667,y:1},o:{x:.333,y:0},t:36,s:[71.995,138.87,0],to:[0,0,0],ti:[0,0,0]},{i:{x:.667,y:1},o:{x:.333,y:0},t:55.199,s:[71.995,135.87,0],to:[0,0,0],ti:[0,-.5,0]},{i:{x:.833,y:.833},o:{x:.333,y:.333},t:65,s:[71.995,138.87,0],to:[0,0,0],ti:[0,0,0]},{t:72,s:[71.995,138.87,0]}],ix:2,l:2},a:{a:0,k:[26.02,25.692,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[.86,-14.81],[-14.92,1.22],[.78,8.67],[0,0]],o:[[0,0],[.06,8.57],[14.73,-1.93],[-.78,-8.68],[0,0]],v:[[-12.86,-16.717],[-18.52,2.213],[2.2,16.583],[18.38,-3.277],[15.09,-16.717]],c:!0},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[1,.43137255311,.43137255311,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 31",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:65,st:0,bm:0},{ddd:0,ind:9,ty:4,nm:"Fill 29",parent:8,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:1,k:[{i:{x:[.833],y:[.833]},o:{x:[.167],y:[.167]},t:0,s:[1]},{i:{x:[.833],y:[.833]},o:{x:[.167],y:[.167]},t:26.4,s:[16]},{t:50.400390625,s:[1]}],ix:10},p:{a:0,k:[-8.519,-9.909,0],ix:2,l:2},a:{a:0,k:[7.044,-4.863,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[4.27,-3.31],[-4.1,.75],[-2.24,1.34],[-2.29,3.32],[1.58,2.58]],o:[[-2.32,-3.42],[-6.07,4.72],[-.22,1.55],[-.31,1.75],[3.45,-4.35],[0,0]],v:[[7.044,-4.863],[-3.636,-5.073],[-4.586,3.447],[-.556,5.637],[4.754,5.487],[7.044,-4.863]],c:!1},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[1,.51372551918,.51372551918,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 29",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:65,st:0,bm:0},{ddd:0,ind:10,ty:4,nm:"形状结合",parent:9,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[-3.099,4.387,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[1.23,-2.85],[-2.17,2.07],[-2.45,5.06],[3.05,-2.62]],o:[[-2.46,2.33],[-1.86,4.26],[2.17,-2.07],[1.64,-3.38],[0,0]],v:[[-1.771,-7.093],[-7.321,.667],[-5.231,5.397],[.949,-4.523],[-1.771,-7.093]],c:!1},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ind:1,ty:"sh",ix:2,ks:{a:0,k:{i:[[0,0],[1.26,-2.71],[-2.15,1.66],[-2.25,4.86],[2.51,-2.33]],o:[[-2.25,2.08],[-1.88,4.06],[2.28,-1.76],[1.51,-3.26],[0,0]],v:[[1.702,-4.218],[-3.558,2.962],[-1.798,7.822],[3.792,-1.408],[1.702,-4.218]],c:!1},ix:2},nm:"路径 2",mn:"ADBE Vector Shape - Group",hd:!1},{ind:2,ty:"sh",ix:3,ks:{a:0,k:{i:[[0,0],[.96,-2.41],[-1.97,1.53],[-1.32,4.57],[2.4,-2.04]],o:[[-2.01,1.98],[-1.44,3.62],[1.9,-1.48],[.81,-2.81],[0,0]],v:[[5.402,-3.043],[.942,3.547],[2.862,7.567],[7.792,-.673],[5.402,-3.043]],c:!1},ix:2},nm:"路径 3",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"mm",mm:2,nm:"合并路径 1",mn:"ADBE Vector Filter - Merge",hd:!1},{ty:"fl",c:{a:0,k:[1,.92549020052,.898039221764,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"形状结合",np:5,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:65,st:0,bm:0},{ddd:0,ind:11,ty:4,nm:"尾巴",parent:8,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:1,k:[{i:{x:[.833],y:[.833]},o:{x:[.167],y:[.167]},t:0,s:[-7]},{i:{x:[.833],y:[.833]},o:{x:[.167],y:[.167]},t:31.199,s:[4]},{t:60,s:[-7]}],ix:10},p:{a:0,k:[13.352,9.269,0],ix:2,l:2},a:{a:0,k:[-1.382,-4.064,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[2.13,.99],[1.59,.24],[-.09,-3.33],[-1.4,.17],[0,0],[-1.86,1.43],[0,0]],o:[[2.49,1.38],[-2.39,-1.11],[-1.22,-.19],[.07,2.59],[2.05,-.25],[0,0],[2.11,-1.63],[0,0]],v:[[1.458,-.114],[2.978,-2.724],[-1.382,-4.064],[-4.092,-.684],[-1.492,4.106],[-.692,1.636],[2.498,3.436],[1.458,-.114]],c:!1},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[1,.51372551918,.51372551918,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 21",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:65,st:0,bm:0},{ddd:0,ind:12,ty:4,nm:"Fill 1备份",parent:8,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:1,k:[{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:0,s:[46]},{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:25,s:[10.368]},{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:46,s:[0]},{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:65,s:[46]},{t:72,s:[46]}],ix:10},p:{a:0,k:[-9.461,12.873,0],ix:2,l:2},a:{a:0,k:[-.223,-6.41,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[.09,-.6],[0,0],[-.7,-2.78],[0,0],[1.09,-.82],[0,0],[.13,-.23],[0,0],[-.59,-.34],[0,0],[-.37,.31],[0,0],[.06,-.3],[0,0],[-.66,-.13],[0,0],[-.14,.67],[0,0],[0,0],[-.15,.23],[0,0],[-1.15,-.33],[0,0],[-.04,0],[0,0],[-.38,-.18],[0,0],[-.34,.18],[0,0],[0,0],[0,0],[-.41,0],[0,0],[-.18,-.08],[0,0],[0,0],[-.25,.56],[0,0],[.62,.27],[0,-.01],[.58,0],[0,0],[0,0],[.43,-.13],[0,0],[0,0],[0,0],[0,0],[0,0],[.07,.17],[0,0],[-.05,2.07],[0,0],[.67,.01],[0,0]],o:[[-.59,.07],[0,0],[-.23,1.55],[0,0],[-1.97,-.57],[0,0],[-.35,.26],[0,0],[-.34,.58],[0,0],[.45,.27],[0,0],[-.2,.4],[0,0],[-.14,.66],[0,0],[.66,.14],[0,0],[0,0],[.04,-.16],[0,0],[.45,-.67],[0,0],[.05,.01],[0,0],[.31,.1],[0,0],[.35,.17],[0,0],[0,0],[0,0],[.47,-.16],[0,0],[.26,0],[0,0],[0,0],[.57,.16],[0,0],[.27,-.62],[0,-.01],[-.51,-.23],[0,0],[0,0],[-.44,.03],[0,0],[0,0],[0,0],[0,0],[0,0],[-.07,-.08],[0,0],[-1.07,-2.45],[0,0],[.02,-.68],[0,0],[0,0]],v:[[-.223,-6.41],[-1.293,-5.23],[-1.293,-5.23],[-1.023,1.06],[-1.023,1.06],[-5.613,1.54],[-5.613,1.54],[-6.333,2.31],[-6.333,2.31],[-5.893,3.98],[-5.893,3.98],[-4.523,3.88],[-4.523,3.88],[-4.903,4.95],[-4.903,4.95],[-3.953,6.39],[-3.953,6.39],[-2.513,5.44],[-2.513,5.44],[-2.483,5.35],[-2.193,4.74],[-2.193,4.74],[.057,4.11],[.057,4.11],[.187,4.14],[.187,4.14],[1.227,4.56],[1.227,4.56],[2.327,4.55],[2.327,4.55],[2.507,4.47],[2.787,4.35],[4.137,4.08],[4.137,4.08],[4.787,4.2],[4.787,4.2],[4.957,4.26],[6.397,3.58],[6.397,3.58],[5.777,1.97],[5.777,1.97],[4.137,1.64],[4.137,1.64],[3.697,1.66],[2.387,1.91],[2.387,1.91],[2.227,1.96],[2.157,1.91],[2.137,1.9],[2.047,1.79],[1.797,1.44],[1.797,1.44],[1.147,-5.17],[1.147,-5.17],[-.043,-6.42],[-.043,-6.42]],c:!0},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[1,.803921580315,.192156866193,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 1备份",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:65,st:0,bm:0},{ddd:0,ind:13,ty:4,nm:"Fill 1",parent:8,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:1,k:[{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:0,s:[-15]},{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:22,s:[-20]},{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:41.201,s:[16]},{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:65,s:[-15]},{t:72,s:[-14]}],ix:10},p:{a:0,k:[7.289,12.873,0],ix:2,l:2},a:{a:0,k:[-.223,-6.41,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[.09,-.6],[0,0],[-.7,-2.78],[0,0],[1.09,-.82],[0,0],[.13,-.23],[0,0],[-.59,-.34],[0,0],[-.37,.31],[0,0],[.06,-.3],[0,0],[-.66,-.13],[0,0],[-.14,.67],[0,0],[0,0],[-.15,.23],[0,0],[-1.15,-.33],[0,0],[-.04,0],[0,0],[-.38,-.18],[0,0],[-.34,.18],[0,0],[0,0],[0,0],[-.41,0],[0,0],[-.18,-.08],[0,0],[0,0],[-.25,.56],[0,0],[.62,.27],[0,-.01],[.58,0],[0,0],[0,0],[.43,-.13],[0,0],[0,0],[0,0],[0,0],[0,0],[.07,.17],[0,0],[-.05,2.07],[0,0],[.67,.01],[0,0]],o:[[-.59,.07],[0,0],[-.23,1.55],[0,0],[-1.97,-.57],[0,0],[-.35,.26],[0,0],[-.34,.58],[0,0],[.45,.27],[0,0],[-.2,.4],[0,0],[-.14,.66],[0,0],[.66,.14],[0,0],[0,0],[.04,-.16],[0,0],[.45,-.67],[0,0],[.05,.01],[0,0],[.31,.1],[0,0],[.35,.17],[0,0],[0,0],[0,0],[.47,-.16],[0,0],[.26,0],[0,0],[0,0],[.57,.16],[0,0],[.27,-.62],[0,-.01],[-.51,-.23],[0,0],[0,0],[-.44,.03],[0,0],[0,0],[0,0],[0,0],[0,0],[-.07,-.08],[0,0],[-1.07,-2.45],[0,0],[.02,-.68],[0,0],[0,0]],v:[[-.223,-6.41],[-1.293,-5.23],[-1.293,-5.23],[-1.023,1.06],[-1.023,1.06],[-5.613,1.54],[-5.613,1.54],[-6.333,2.31],[-6.333,2.31],[-5.893,3.98],[-5.893,3.98],[-4.523,3.88],[-4.523,3.88],[-4.903,4.95],[-4.903,4.95],[-3.953,6.39],[-3.953,6.39],[-2.513,5.44],[-2.513,5.44],[-2.483,5.35],[-2.193,4.74],[-2.193,4.74],[.057,4.11],[.057,4.11],[.187,4.14],[.187,4.14],[1.227,4.56],[1.227,4.56],[2.327,4.55],[2.327,4.55],[2.507,4.47],[2.787,4.35],[4.137,4.08],[4.137,4.08],[4.787,4.2],[4.787,4.2],[4.957,4.26],[6.397,3.58],[6.397,3.58],[5.777,1.97],[5.777,1.97],[4.137,1.64],[4.137,1.64],[3.697,1.66],[2.387,1.91],[2.387,1.91],[2.227,1.96],[2.157,1.91],[2.137,1.9],[2.047,1.79],[1.797,1.44],[1.797,1.44],[1.147,-5.17],[1.147,-5.17],[-.043,-6.42],[-.043,-6.42]],c:!0},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[1,.803921580315,.192156866193,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 1",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:65,st:0,bm:0}]},{id:"comp_5",nm:"▽ 头部",fr:60,layers:[{ddd:0,ind:1,ty:4,nm:"▨ Fill 156",parent:19,td:1,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[0,0,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[22.35,.24],[.24,-16.79],[-17.98,-.36],[0,27.13]],o:[[0,-19.18],[-21.84,-.23],[-.39,27.38],[13.17,.26],[0,0]],v:[[32.845,1.349],[-.465,-29.931],[-32.835,1.379],[-.465,29.909],[32.845,1.349]],c:!1},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[1,.43137255311,.43137255311,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 43",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1},{ty:"fl",c:{a:0,k:[1,0,0,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1}],ip:0,op:300,st:0,bm:0},{ddd:0,ind:2,ty:4,nm:"Fill 155",tt:1,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[13.627,37.342,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[.35,.94],[-2.47,.13],[-.36,-.94],[2.47,-.13]],o:[[-2.46,.13],[-.36,-.93],[2.47,-.14],[.35,.93],[0,0]],v:[[.638,1.691],[-4.462,.241],[-.642,-1.689],[4.468,-.239],[.638,1.691]],c:!1},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[1,.807843148708,.780392169952,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 155",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:300,st:0,bm:0},{ddd:0,ind:3,ty:4,nm:"▨ Fill 150",parent:19,td:1,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[0,0,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[22.35,.24],[.24,-16.79],[-17.98,-.36],[0,27.13]],o:[[0,-19.18],[-21.84,-.23],[-.39,27.38],[13.17,.26],[0,0]],v:[[32.845,1.349],[-.465,-29.931],[-32.835,1.379],[-.465,29.909],[32.845,1.349]],c:!1},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[1,.43137255311,.43137255311,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 43",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1},{ty:"fl",c:{a:0,k:[1,0,0,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1}],ip:0,op:300,st:0,bm:0},{ddd:0,ind:4,ty:4,nm:"Fill 149",tt:1,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[39.745,37.765,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[.35,.94],[-2.47,.13],[-.36,-.94],[2.47,-.13]],o:[[-2.46,.13],[-.36,-.93],[2.47,-.14],[.35,.93],[0,0]],v:[[.638,1.691],[-4.462,.241],[-.642,-1.689],[4.468,-.239],[.638,1.691]],c:!1},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[1,.807843148708,.780392169952,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 149",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:300,st:0,bm:0},{ddd:0,ind:5,ty:4,nm:"▨ Fill 136",parent:19,td:1,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[0,0,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[22.35,.24],[.24,-16.79],[-17.98,-.36],[0,27.13]],o:[[0,-19.18],[-21.84,-.23],[-.39,27.38],[13.17,.26],[0,0]],v:[[32.845,1.349],[-.465,-29.931],[-32.835,1.379],[-.465,29.909],[32.845,1.349]],c:!1},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[1,.43137255311,.43137255311,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 43",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1},{ty:"fl",c:{a:0,k:[1,0,0,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1}],ip:0,op:300,st:0,bm:0},{ddd:0,ind:6,ty:4,nm:"Fill 135",tt:1,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[27.325,32.045,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[.42,0],[0,.52],[-.43,0],[0,-.52]],o:[[0,.52],[-.43,0],[0,-.52],[.42,0],[0,0]],v:[[.764,.002],[.004,.942],[-.766,.002],[.004,-.938],[.764,.002]],c:!1},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[1,.737254917622,0,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:-26,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 135",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:300,st:0,bm:0},{ddd:0,ind:7,ty:4,nm:"▨ Fill 132",parent:19,td:1,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[0,0,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[22.35,.24],[.24,-16.79],[-17.98,-.36],[0,27.13]],o:[[0,-19.18],[-21.84,-.23],[-.39,27.38],[13.17,.26],[0,0]],v:[[32.845,1.349],[-.465,-29.931],[-32.835,1.379],[-.465,29.909],[32.845,1.349]],c:!1},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[1,.43137255311,.43137255311,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 43",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1},{ty:"fl",c:{a:0,k:[1,0,0,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1}],ip:0,op:300,st:0,bm:0},{ddd:0,ind:8,ty:4,nm:"Fill 131",tt:1,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[25.389,35.055,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[3.18,-.19],[.07,-2.14],[-.96,-1.09],[-1.31,-.22],[-1.63,.82],[-.66,.82],[.47,1.41]],o:[[-.64,-1.93],[-3.06,.18],[-.05,1.5],[.92,1.03],[1.9,.32],[1.11,-.56],[.79,-.95],[0,0]],v:[[5.358,-1.536],[-.232,-6.126],[-6.022,.854],[-4.602,3.204],[-2.512,6.104],[2.218,3.523],[5.638,2.854],[5.358,-1.536]],c:!1},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[1,.803921580315,.192156866193,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 131",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:300,st:0,bm:0},{ddd:0,ind:9,ty:4,nm:"▨ Fill 130",parent:19,td:1,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[0,0,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[22.35,.24],[.24,-16.79],[-17.98,-.36],[0,27.13]],o:[[0,-19.18],[-21.84,-.23],[-.39,27.38],[13.17,.26],[0,0]],v:[[32.845,1.349],[-.465,-29.931],[-32.835,1.379],[-.465,29.909],[32.845,1.349]],c:!1},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[1,.43137255311,.43137255311,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 43",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1},{ty:"fl",c:{a:0,k:[1,0,0,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1}],ip:0,op:300,st:0,bm:0},{ddd:0,ind:10,ty:4,nm:"Fill 129",tt:1,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[24.363,38.917,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[2.44,.36],[0,0],[-3.49,-4.04]],o:[[.59,.7],[-2.44,-.37],[0,0],[0,0]],v:[[3.991,-1.644],[-.659,3.516],[-4.069,-1.984],[3.991,-1.644]],c:!1},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[.807843148708,.376470595598,.023529412225,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 129",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:300,st:0,bm:0},{ddd:0,ind:11,ty:4,nm:"▨ Fill 128",parent:19,td:1,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[0,0,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[22.35,.24],[.24,-16.79],[-17.98,-.36],[0,27.13]],o:[[0,-19.18],[-21.84,-.23],[-.39,27.38],[13.17,.26],[0,0]],v:[[32.845,1.349],[-.465,-29.931],[-32.835,1.379],[-.465,29.909],[32.845,1.349]],c:!1},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[1,.43137255311,.43137255311,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 43",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1},{ty:"fl",c:{a:0,k:[1,0,0,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1}],ip:0,op:300,st:0,bm:0},{ddd:0,ind:12,ty:4,nm:"Fill 127",tt:1,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[25.264,39.196,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[4.21,.06],[0,0],[-5.85,-6.55]],o:[[.6,.7],[-3.32,-.05],[0,0],[0,0]],v:[[5.354,-2.29],[-1.046,5.33],[-5.436,-2.77],[5.354,-2.29]],c:!1},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[1,.674509823322,.20000000298,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 127",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:300,st:0,bm:0},{ddd:0,ind:13,ty:4,nm:"▨ Fill 58",parent:19,td:1,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[0,0,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[22.35,.24],[.24,-16.79],[-17.98,-.36],[0,27.13]],o:[[0,-19.18],[-21.84,-.23],[-.39,27.38],[13.17,.26],[0,0]],v:[[32.845,1.349],[-.465,-29.931],[-32.835,1.379],[-.465,29.909],[32.845,1.349]],c:!1},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[1,.43137255311,.43137255311,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 43",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1},{ty:"fl",c:{a:0,k:[1,0,0,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1}],ip:0,op:300,st:0,bm:0},{ddd:0,ind:14,ty:4,nm:"Fill 57",tt:1,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[25.689,30.535,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[-3.38,.03],[-.78,-4.05],[4.18,-6.73]],o:[[0,0],[2.55,-.02],[0,0],[0,0]],v:[[-4.695,3.035],[.255,-3.325],[4.695,3.325],[-4.695,3.035]],c:!1},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[1,1,1,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 57",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:300,st:0,bm:0},{ddd:0,ind:15,ty:4,nm:"▨ Fill 48",parent:19,td:1,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[0,0,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[22.35,.24],[.24,-16.79],[-17.98,-.36],[0,27.13]],o:[[0,-19.18],[-21.84,-.23],[-.39,27.38],[13.17,.26],[0,0]],v:[[32.845,1.349],[-.465,-29.931],[-32.835,1.379],[-.465,29.909],[32.845,1.349]],c:!1},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[1,.43137255311,.43137255311,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 43",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1},{ty:"fl",c:{a:0,k:[1,0,0,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1}],ip:0,op:300,st:0,bm:0},{ddd:0,ind:16,ty:4,nm:"Fill 47",tt:1,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[42.184,31.758,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[7.79,0],[0,9.1],[-7.79,0],[0,-9.1]],o:[[0,9.1],[-7.79,0],[0,-9.1],[7.79,0],[0,0]],v:[[14.111,.003],[.001,16.473],[-14.109,.003],[.001,-16.477],[14.111,.003]],c:!1},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[1,.898039221764,.858823537827,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 47",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:300,st:0,bm:0},{ddd:0,ind:17,ty:4,nm:"▨ Fill 46",parent:19,td:1,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[0,0,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[22.35,.24],[.24,-16.79],[-17.98,-.36],[0,27.13]],o:[[0,-19.18],[-21.84,-.23],[-.39,27.38],[13.17,.26],[0,0]],v:[[32.845,1.349],[-.465,-29.931],[-32.835,1.379],[-.465,29.909],[32.845,1.349]],c:!1},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[1,.43137255311,.43137255311,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 43",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1},{ty:"fl",c:{a:0,k:[1,0,0,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1}],ip:0,op:300,st:0,bm:0},{ddd:0,ind:18,ty:4,nm:"Fill 45",tt:1,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[12.009,31.62,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[6.63,0],[0,7.74],[-6.63,0],[0,-7.75]],o:[[0,7.74],[-6.63,0],[0,-7.75],[6.63,0],[0,0]],v:[[12.01,.005],[.001,14.025],[-12.01,.005],[.001,-14.025],[12.01,.005]],c:!1},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[1,.898039221764,.858823537827,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 45",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:300,st:0,bm:0},{ddd:0,ind:19,ty:4,nm:"Fill 43",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[41.059,29.931,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[22.35,.24],[.24,-16.79],[-17.98,-.36],[0,27.13]],o:[[0,-19.18],[-21.84,-.23],[-.39,27.38],[13.17,.26],[0,0]],v:[[32.845,1.349],[-.465,-29.931],[-32.835,1.379],[-.465,29.909],[32.845,1.349]],c:!1},ix:2},nm:"路径 1",mn:"ADBE Vector Shape - Group",hd:!1},{ty:"fl",c:{a:0,k:[1,.43137255311,.43137255311,1],ix:4},o:{a:0,k:100,ix:5},r:1,bm:0,nm:"填充 1",mn:"ADBE Vector Graphic - Fill",hd:!1},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"Fill 43",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:300,st:0,bm:0}]}],layers$2=[{ddd:0,ind:1,ty:0,nm:"小黄",refId:"comp_0",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[134.5,74,0],ix:2,l:2},a:{a:0,k:[60,90,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,w:120,h:180,ip:0,op:65,st:0,bm:0},{ddd:0,ind:2,ty:0,nm:"小蓝",refId:"comp_2",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[246,103.5,0],ix:2,l:2},a:{a:0,k:[60,90,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,w:120,h:180,ip:0,op:65,st:0,bm:0},{ddd:0,ind:3,ty:0,nm:"小红",refId:"comp_4",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[74.5,103.5,0],ix:2,l:2},a:{a:0,k:[60,90,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,w:120,h:180,ip:0,op:65,st:0,bm:0}],markers$2=[],animBg={v:v$2,fr:fr$2,ip:ip$2,op:op$2,w:w$2,h:h$2,nm:nm$2,ddd:ddd$2,assets:assets$2,layers:layers$2,markers:markers$2},Loading=defineComponent({name:"loading",props:{tipText:{type:String,default:""}},setup(i){function e(s=2e3,o){let a=Date.now(),l=0;const c=setInterval(()=>{let u=Date.now()-a;if(u>=s){clearInterval(c),o(96);return}l=Math.min(100,u/s*100),o(l)},300)}const r=ref(0);return e(2e3,s=>{r.value=s}),watch(()=>state$1.audioDone,()=>{state$1.audioDone||(r.value=0)}),()=>!state$1.audioDone&&createVNode("div",{class:styles$w.loadingPop},[createVNode(Vue3Lottie,{animationData:animBg},null),createVNode("div",{class:styles$w.loadingTip},[i.tipText])])}}),audioData$1=reactive({songEle:null,backgroundEle:null,mingSongEle:null,songCollection:{songEle:null,backgroundEle:null,fanSongEle:null,banSongEle:null,mingSongEle:null,beatSongEle:null,betaBackgroundEle:null,betaFanSongEle:null,betaBanSongEle:null,betaMingSongEle:null},midiRender:!1,progress:0,duration:0}),midiRef=ref(),audioListStart=i=>{var e,r,s,o,a,l;if(i==="play"&&state$1.originSpeed!==0&&setAudioPlaybackRate(state$1.speed/state$1.originSpeed),state$1.isAppPlay){cloudToggleState(i);return}i==="play"?((e=audioData$1.songEle)==null||e.play(),(r=audioData$1.backgroundEle)==null||r.play(),(s=audioData$1.mingSongEle)==null||s.play()):i==="paused"&&((o=audioData$1.songEle)==null||o.pause(),(a=audioData$1.backgroundEle)==null||a.pause(),(l=audioData$1.mingSongEle)==null||l.pause())},setAudioPlaybackRate=i=>{if(state$1.isAppPlay){if(state$1.modeType==="evaluating")return;hanldeSetMidiPlaybackRate(i);return}audioData$1.songEle&&(audioData$1.songEle.playbackRate=i),audioData$1.backgroundEle&&(audioData$1.backgroundEle.playbackRate=i),audioData$1.mingSongEle&&(audioData$1.mingSongEle.playbackRate=i)},getAudioCurrentTime=()=>{var i,e,r,s;return state$1.isAppPlay?audioData$1.progress:state$1.playSource==="music"?((i=audioData$1.songEle)==null?void 0:i.currentTime)||audioData$1.progress:state$1.playSource==="background"?((e=audioData$1.backgroundEle)==null?void 0:e.currentTime)||audioData$1.progress:state$1.playSource==="mingSong"?((r=audioData$1.mingSongEle)==null?void 0:r.currentTime)||audioData$1.progress:((s=audioData$1.songEle)==null?void 0:s.currentTime)||audioData$1.progress},getAudioDuration=()=>{var i,e,r,s;if(state$1.isAppPlay){const o=((i=state$1.times[state$1.times.length-1||0])==null?void 0:i.endtime)||0;return audioData$1.duration||o}return((e=audioData$1.songEle)==null?void 0:e.duration)||((r=audioData$1.backgroundEle)==null?void 0:r.duration)||((s=audioData$1.mingSongEle)==null?void 0:s.duration)||audioData$1.duration},setAudioCurrentTime=(i,e=0)=>{if(state$1.isAppPlay){setMidiCurrentTime(e);return}audioData$1.songEle&&(audioData$1.songEle.currentTime=i),audioData$1.backgroundEle&&(audioData$1.backgroundEle.currentTime=i),audioData$1.mingSongEle&&(audioData$1.mingSongEle.currentTime=i),audioData$1.progress=i},toggleMutePlayAudio=(i,e)=>{i==="music"?audioData$1.songEle&&(audioData$1.songEle.muted=e):i==="background"?audioData$1.backgroundEle&&(audioData$1.backgroundEle.muted=e):i==="mingSong"&&audioData$1.mingSongEle&&(audioData$1.mingSongEle.muted=e)},changeSongSourceByBate=i=>{var o,a,l;const e=((o=audioData$1.songEle)==null?void 0:o.currentTime)||0,r=((a=audioData$1.backgroundEle)==null?void 0:a.currentTime)||0,s=((l=audioData$1.mingSongEle)==null?void 0:l.currentTime)||0;i?state$1.playType==="play"?(audioData$1.songEle=audioData$1.songCollection.songEle,audioData$1.backgroundEle=audioData$1.songCollection.backgroundEle):(audioData$1.songEle=audioData$1.songCollection.fanSongEle,audioData$1.backgroundEle=audioData$1.songCollection.banSongEle,audioData$1.mingSongEle=audioData$1.songCollection.mingSongEle):state$1.playType==="play"?(audioData$1.songEle=audioData$1.songCollection.beatSongEle||audioData$1.songCollection.songEle,audioData$1.backgroundEle=audioData$1.songCollection.betaBackgroundEle||audioData$1.songCollection.backgroundEle):(audioData$1.songEle=audioData$1.songCollection.betaFanSongEle||audioData$1.songCollection.fanSongEle,audioData$1.backgroundEle=audioData$1.songCollection.betaBanSongEle||audioData$1.songCollection.banSongEle,audioData$1.mingSongEle=audioData$1.songCollection.betaMingSongEle||audioData$1.songCollection.mingSongEle),audioData$1.songEle&&(audioData$1.songEle.currentTime=e),audioData$1.backgroundEle&&(audioData$1.backgroundEle.currentTime=r),audioData$1.mingSongEle&&(audioData$1.mingSongEle.currentTime=s),state$1.playSource==="music"?(audioData$1.songEle&&(audioData$1.songEle.muted=!1),audioData$1.backgroundEle&&(audioData$1.backgroundEle.muted=!0),audioData$1.mingSongEle&&(audioData$1.mingSongEle.muted=!0)):state$1.playSource==="background"?(audioData$1.songEle&&(audioData$1.songEle.muted=!0),audioData$1.backgroundEle&&(audioData$1.backgroundEle.muted=!1),audioData$1.mingSongEle&&(audioData$1.mingSongEle.muted=!0)):(audioData$1.songEle&&(audioData$1.songEle.muted=!0),audioData$1.backgroundEle&&(audioData$1.backgroundEle.muted=!0),audioData$1.mingSongEle&&(audioData$1.mingSongEle.muted=!1))},AudioList=defineComponent({name:"audio-list",setup(){const i=()=>{midiRef.value.contentWindow.handleRendered=()=>{audioData$1.midiRender=!0},hanldeInitMidiData(midiRef.value)};watch(()=>state$1.playSource,()=>{if(state$1.modeType==="evaluating"&&!state$1.setting.enableAccompaniment){console.log("评测模式设置了关闭伴奏,不切换原音伴奏");return}state$1.playSource==="music"?(audioData$1.songEle&&(audioData$1.songEle.muted=!1),audioData$1.backgroundEle&&(audioData$1.backgroundEle.muted=!0),audioData$1.mingSongEle&&(audioData$1.mingSongEle.muted=!0)):state$1.playSource==="background"?(audioData$1.songEle&&(audioData$1.songEle.muted=!0),audioData$1.backgroundEle&&(audioData$1.backgroundEle.muted=!1),audioData$1.mingSongEle&&(audioData$1.mingSongEle.muted=!0)):(audioData$1.songEle&&(audioData$1.songEle.muted=!0),audioData$1.backgroundEle&&(audioData$1.backgroundEle.muted=!0),audioData$1.mingSongEle&&(audioData$1.mingSongEle.muted=!1))});const e=c=>new Promise(u=>{const m=new Audio(c+"?v="+Date.now());m.load(),m.onloadedmetadata=()=>{u(m)},m.onerror=()=>{u(null)}}),r=c=>{var d,y,A;const u=(c==null?void 0:c.currentTime)||((d=c==null?void 0:c.content)==null?void 0:d.currentTime),m=(c==null?void 0:c.totalDuration)||((y=c==null?void 0:c.content)==null?void 0:y.totalDuration),g=u/1e3;if(audioData$1.progress=g,audioData$1.songEle&&(audioData$1.songEle.currentTime=g),audioData$1.backgroundEle&&(audioData$1.backgroundEle.currentTime=g),audioData$1.mingSongEle&&(audioData$1.mingSongEle.currentTime=g),audioData$1.duration=m/1e3,((A=c==null?void 0:c.content)==null?void 0:A.totalDuration)>1e3&&u>=m){if(evaluatingData.isAudioPlayEnd)return;evaluatingData.isAudioPlayEnd=!0,onEnded()}},s=c=>{var g,d,y;if(audioData$1.duration==0){const A=((g=state$1.times[state$1.times.length-1||0])==null?void 0:g.endtime)||0;audioData$1.duration=A}const u=(c==null?void 0:c.currentTime)||((d=c==null?void 0:c.content)==null?void 0:d.currentTime);c!=null&&c.totalDuration||((y=c==null?void 0:c.content)==null||y.totalDuration);const m=u/1e3;audioData$1.progress=m,state$1.sectionStatus&&state$1.section.length==2&&u>=state$1.section},o=c=>{c&&(console.log("midi结束"),audioData$1.progress=0,onEnded())};function a(){return Promise.all([e(state$1.music),e(state$1.accompany),e(state$1.fanSong),e(state$1.banSong),e(state$1.mingSong)])}function l(){return Promise.all([e(state$1.beatSong.music),e(state$1.beatSong.accompany),e(state$1.beatSong.fanSong),e(state$1.beatSong.banSong),e(state$1.beatSong.mingSong)])}return onMounted(async()=>{var c;if(state$1.playMode!=="MIDI"){console.time("音频加载时间");const[u,m,g,d,y]=await a();audioData$1.backgroundEle=m,audioData$1.songEle=u,Object.assign(audioData$1.songCollection,{songEle:u,backgroundEle:m,fanSongEle:g,banSongEle:d,mingSongEle:y}),u?(u.addEventListener("play",onPlay),u.addEventListener("ended",onEnded),m&&(m.muted=!0)):m&&(m.addEventListener("play",onPlay),m.addEventListener("ended",onEnded)),g?(g.addEventListener("play",onPlay),g.addEventListener("ended",onEnded),d&&(d.muted=!0),y&&(y.muted=!0)):d?(d.addEventListener("play",onPlay),d.addEventListener("ended",onEnded),y&&(y.muted=!0)):y&&(y.addEventListener("play",onPlay),y.addEventListener("ended",onEnded));const[A,b,S,E,x]=await l();Object.assign(audioData$1.songCollection,{beatSongEle:A,betaBackgroundEle:b,betaFanSongEle:S,betaBanSongEle:E,betaMingSongEle:x}),A?(A.addEventListener("play",onPlay),A.addEventListener("ended",onEnded),b&&(b.muted=!0)):b&&(b.addEventListener("play",onPlay),b.addEventListener("ended",onEnded)),S?(S.addEventListener("play",onPlay),S.addEventListener("ended",onEnded),E&&(E.muted=!0),x&&(x.muted=!0)):E?(E.addEventListener("play",onPlay),E.addEventListener("ended",onEnded),x&&(x.muted=!0)):x&&(x.addEventListener("play",onPlay),x.addEventListener("ended",onEnded)),state$1.audioDone=!0,console.timeEnd("音频加载时间"),console.log("音频数据:",audioData$1),api_playProgress(r)}else{state$1.audioDone=!0;const u=((c=state$1.times[state$1.times.length-1||0])==null?void 0:c.endtime)||0;audioData$1.duration=u,api_cloudTimeUpdae(s),api_cloudplayed(o)}}),onUnmounted(()=>{api_remove_cloudplayed(o),api_remove_cloudTimeUpdae(s)}),()=>createVNode(Fragment,null,[createVNode(Loading,{tipText:state$1.loadingText},null),createVNode("div",{class:styles$w.audioList},[state$1.playMode==="MIDI"&&state$1.speed!=0&&createVNode("iframe",{style:{display:"none"},ref:midiRef,src:"/midi/index.html",onLoad:i},null)])])}}),browserInfo$1=browser();let tipsTimer=null;const audioData=reactive({tick:null,tock:null}),metronomeData=reactive({disable:!0,initPlayerState:!1,lineShow:!1,isClick:!1,metro:null,metroList:[],activeList:[],metroMeasure:[],activeIndex:null,activeMetro:{},cursorMode:1,cursorTips:"",followAudioIndex:1,totalNumerator:2});watch(()=>metronomeData.cursorMode,()=>{const i=document.querySelector("#cursorImg-0");if(i){switch(metronomeData.cursorMode){case 1:i.classList.remove("lineHide"),i.style.opacity="inherit",metronomeData.cursorTips="您已切换到指针跟随音符播放",i.style.opacity="inherit";break;case 2:i.classList.add("lineHide"),i.style.opacity="inherit",metronomeData.cursorTips="您已切换到指针跟随节拍播放";break;case 3:i.style.opacity="0",metronomeData.cursorTips="您已关闭指针显示";break}hideCursorTip()}});watch(()=>metronomeData.lineShow,()=>{const i=document.querySelector("#cursorImg-0");i&&(metronomeData.lineShow?i.classList.add("lineHide"):i.classList.remove("lineHide"))});class Metronome{constructor(e){ii(this,"playType","tick");ii(this,"source",null);ii(this,"source1",null);ii(this,"source2",null);ii(this,"createAudio",e=>new Promise(r=>{const s=new Audio(e);s.load(),s.onloadedmetadata=()=>{r(s)},s.onerror=()=>{r(null)}}));ii(this,"sound",e=>{state$1.sectionStatus||(e=setCurrentTime(e));let r=-1,s=-1;for(let o=0;o=a)r=o,s=a;else break}if(r>-1&&metronomeData.activeIndex!==r){metronomeData.activeIndex=r,metronomeData.activeMetro=this.getStep(s),this.playAudio(),metronomeData.isClick=!1;return}metronomeData.isClick=!1});ii(this,"playAudio",()=>{var r;if(state$1.modeType==="practise"&&state$1.playMode!=="MIDI"&&(state$1.playType==="play"&&state$1.playSource==="music"&&audioData$1.songCollection.beatSongEle||state$1.playType==="play"&&state$1.playSource==="background"&&audioData$1.songCollection.betaBackgroundEle||state$1.playType==="sing"&&state$1.playSource==="music"&&audioData$1.songCollection.betaFanSongEle||state$1.playType==="sing"&&state$1.playSource==="background"&&audioData$1.songCollection.betaBanSongEle||state$1.playType==="sing"&&state$1.playSource==="mingSong"&&audioData$1.songCollection.betaMingSongEle)||(console.log("播放自带的节拍器 233333"),!metronomeData.initPlayerState||state$1.playState==="paused"))return;const e=state$1.setting.beatVolume/100;this.source=((r=metronomeData.activeMetro)==null?void 0:r.index)===0?audioData.tick:audioData.tock,this.source.volume=metronomeData.disable?0:e,this.source.volume<=0?this.source.muted=!0:this.source.muted=!1,this.source.play()});ii(this,"simulatePlayAudio",()=>{if(!metronomeData.initPlayerState)return;const e=state$1.setting.beatVolume/100;this.source=metronomeData.followAudioIndex===1?audioData.tick:audioData.tock,this.source.volume=metronomeData.disable?0:e,this.source.volume<=0?this.source.muted=!0:this.source.muted=!1,console.log("音量",this.source,this.source.volume),this.source.play(),metronomeData.followAudioIndex+=1,metronomeData.followAudioIndex=metronomeData.followAudioIndex>metronomeData.totalNumerator?1:metronomeData.followAudioIndex});ii(this,"loadAudio1",()=>new howler.Howl({src:tockAndTick.tick}));ii(this,"loadAudio2",()=>new howler.Howl({src:tockAndTick.tock}))}init(e){this.calculation(e),metronomeData.activeList=[],this.initPlayer()}initPlayer(){metronomeData.initPlayerState||Promise.all([this.createAudio(tickWav),this.createAudio(tockWav)]).then(([e,r])=>{e&&(audioData.tick=e),r&&(audioData.tock=r),metronomeData.initPlayerState=!0})}selectPlay(){}getStep(e){for(let r=0;ra.time===e);if(o)return o}return{}}calculation(e){var l,c,u,m,g,d,y,A,b,S,E,x,C,P;const r=[];let s=-1;for(let k=0;k-1&&M!=s){const F={measureNumberXML:M,measureNumberIndex:T,numerator:((y=(d=(g=I==null?void 0:I.noteElement)==null?void 0:g.sourceMeasure)==null?void 0:d.ActiveTimeSignature)==null?void 0:y.numerator)||0,start:I.measures[0].time,end:I.measures[I.measures.length-1].endtime,time:I.measures[I.measures.length-1].endtime-I.measures[0].time,stave_x:((x=(E=(S=(b=(A=I==null?void 0:I.noteElement)==null?void 0:A.sourceMeasure)==null?void 0:b.verticalMeasureList)==null?void 0:S[0])==null?void 0:E.stave)==null?void 0:x.x)||0,end_x:((C=I==null?void 0:I.stave)==null?void 0:C.end_x)||0||0,stepList:[],svgs:[],isRestFlag:I.isRestFlag};if([121].includes(state$1.subjectId)){const D=e.filter(N=>{var O,B;return((B=(O=N==null?void 0:N.noteElement)==null?void 0:O.sourceMeasure)==null?void 0:B.measureListIndex)==T});I.measures=D,F.start=I.measures[0].time,F.end=I.measures[I.measures.length-1].endtime,F.time=I.measures[I.measures.length-1].endtime-I.measures[0].time;try{const N=I.noteElement.sourceMeasure.verticalMeasureList.reduce((B,V)=>(B.push(...V.vfVoices[1].tickables),B),[]),O=[];F.svgs=N.map(B=>{const V=B.getBoundingBox().x;if(!O.includes(V)&&B.duration!=="w")return O.push(V),B._start_x=V,B}).filter(Boolean).sort((B,V)=>B._start_x-V._start_x)}catch(N){console.log(N)}F.stepList=calculateMutilpleMetroStep(I.measures,F)}else{let D=I.measures;state$1.isCombineRender&&(D=D.filter(N=>N.MeasureNumberXML===F.measureNumberXML)),F.stepList=calculateMetroStep(D,F)}r.push(F),s=M}}console.log(r,r.length,"小节汇总");let o=[];const a=[];try{for(let k=0;k-1?`${B} + ${F}%`:`${B}px + ${F}%`:`${F}%`,I.stepList[D]=O}a[k].push({index:D,time:N,left:(O==null?void 0:O.indexOf("%"))>-1?`calc(${O})`:O,measureNumberXML:I.measureNumberXML,isRestFlag:I.isRestFlag})}}}catch(k){console.log(k)}metronomeData.metroList=o,metronomeData.metroMeasure=a,metronomeData.activeMetro=((P=a[0])==null?void 0:P[0])||{}}}function calculateMetroStep(i,e){var c,u,m,g,d,y,A,b,S,E,x,C,P,k,I,M,T,F,D,N,O,B,V,R,Q,_,K,G,U,$,q,W,xe,ue,Y,J,ce,ge,Ee,Ie,De,ie,ae,H,ve,pe,ee,ne,me,Be,oe,Ae,Me,Le,Ce,he,Pe,ye,Ve,Ue,je,_e,Ke,tt,$e,ot,yt;const s=i.reduce((ct,dt)=>(ct+=dt._noteLength,ct),0)/e.numerator;if(i.length===1){const ct=i[0].svgElement;if(ct&&!ct.isRest()){const dt=((d=(g=(m=(u=(c=ct==null?void 0:ct.attrs)==null?void 0:c.el)==null?void 0:u.parentElement)==null?void 0:m.parentElement)==null?void 0:g.getBoundingClientRect)==null?void 0:d.call(g))||{x:0,right:0};let Pt=((b=(A=(y=ct==null?void 0:ct.attrs)==null?void 0:y.el)==null?void 0:A.getBoundingClientRect)==null?void 0:b.call(A))||{x:0},ht=Math.abs(dt.right-Pt.x)/e.numerator,pt=[];for(let Ct=0;Ct=1){o-=s;let pt=((B=(O=(N=(D=(F=(T=dt==null?void 0:dt.svgElement)==null?void 0:T.attrs)==null?void 0:F.el)==null?void 0:D.parentElement)==null?void 0:N.parentElement)==null?void 0:O.getBoundingClientRect)==null?void 0:B.call(O))||{x:0};if(state$1.musicRenderType!=="staff"&&(pt=((U=(G=(K=(_=(Q=(R=(V=dt==null?void 0:dt.svgElement)==null?void 0:V.attrs)==null?void 0:R.el)==null?void 0:Q.parentElement)==null?void 0:_.parentElement)==null?void 0:K.querySelector(".vf-stave"))==null?void 0:G.getBoundingClientRect)==null?void 0:U.call(G))||{x:0}),!pt.width&&a.length>0&&(pt=state$1.musicRenderType!=="staff"?((ce=(J=(Y=(ue=(xe=(W=(q=($=a[0])==null?void 0:$.svgElement)==null?void 0:q.attrs)==null?void 0:W.el)==null?void 0:xe.parentElement)==null?void 0:ue.parentElement)==null?void 0:Y.querySelector(".vf-stave"))==null?void 0:J.getBoundingClientRect)==null?void 0:ce.call(J))||{x:0}:((H=(ae=(ie=(De=(Ie=(Ee=(ge=a[0])==null?void 0:ge.svgElement)==null?void 0:Ee.attrs)==null?void 0:Ie.el)==null?void 0:De.parentElement)==null?void 0:ie.parentElement)==null?void 0:ae.getBoundingClientRect)==null?void 0:H.call(ae))||{x:0}),a.length>0){let te=((me=(ne=(ee=(pe=(ve=a[0])==null?void 0:ve.svgElement)==null?void 0:pe.attrs)==null?void 0:ee.el)==null?void 0:ne.getBoundingClientRect)==null?void 0:me.call(ne))||{x:0},de=te.x-pt.x;if(a[0]._noteLength/s>=1){const ke=((Le=(Me=(Ae=(oe=(Be=i[a[0].index+1])==null?void 0:Be.svgElement)==null?void 0:oe.attrs)==null?void 0:Ae.el)==null?void 0:Me.getBoundingClientRect)==null?void 0:Le.call(Me))||{x:pt.right},Oe=Math.abs(te.x-ke.x)/2;de=te.x-pt.x+Oe}l.push(de)}else{let de=(((ye=(Pe=(he=(Ce=dt==null?void 0:dt.svgElement)==null?void 0:Ce.attrs)==null?void 0:he.el)==null?void 0:Pe.getBoundingClientRect)==null?void 0:ye.call(Pe))||{x:0}).x-pt.x;l.push(de)}a=[];let Ct=((_e=(je=(Ue=(Ve=dt==null?void 0:dt.svgElement)==null?void 0:Ve.attrs)==null?void 0:Ue.el)==null?void 0:je.getBoundingClientRect)==null?void 0:_e.call(je))||{x:0},Gt=Ct.x-pt.x,Je=0;if(ht>1){const te=((yt=(ot=($e=(tt=(Ke=i[ct+1])==null?void 0:Ke.svgElement)==null?void 0:tt.attrs)==null?void 0:$e.el)==null?void 0:ot.getBoundingClientRect)==null?void 0:yt.call(ot))||{x:pt.right};Je=Math.abs(Ct.x-te.x)/ht}for(let te=1;teNumber.EPSILON&&o>0&&a.push(dt)}return l=l.reduce((ct,dt)=>(ct.includes(dt)?ct.push(void 0):ct.push(dt),ct),[]),l}function calculateMutilpleMetroStep(i,e){var c,u,m,g,d,y,A,b,S,E,x,C,P,k,I,M,T,F,D;const r=e.time/e.numerator,s=((A=(y=(d=(g=(m=(u=(c=i[0])==null?void 0:c.svgElement)==null?void 0:u.attrs)==null?void 0:m.el)==null?void 0:g.parentElement)==null?void 0:d.parentElement)==null?void 0:y.getBoundingClientRect)==null?void 0:A.call(y))||{x:0};if(i.length===1){const N=e.svgs[0];let O=((E=(S=(b=N==null?void 0:N.attrs)==null?void 0:b.el)==null?void 0:S.getBoundingClientRect)==null?void 0:E.call(S))||{x:0};return N&&!N.isRest()?[O.x-s.x]:[]}let o=0,a=[],l=[];for(let N=0;Nr){o-=r;let Q=R.x-s.x;a.length>0&&(V=(I=(k=e.svgs[a[0]._index])==null?void 0:k.attrs)==null?void 0:I.el,R=((M=V==null?void 0:V.getBoundingClientRect)==null?void 0:M.call(V))||{x:0},Q=R.x-s.x),l.push(Q),a=[]}else a.push(O);if(Math.abs(o-r)<.001){let Q=R.x-s.x;a.length>0&&(V=(F=(T=e.svgs[a[0]._index])==null?void 0:T.attrs)==null?void 0:F.el,R=((D=V==null?void 0:V.getBoundingClientRect)==null?void 0:D.call(V))||{x:0},Q=R.x-s.x),l.push(Q),o=0,a=[]}}return l=l.reduce((N,O)=>(N.includes(O)?N.push(void 0):N.push(O),N),[]),l}function setCurrentTime(i){return browserInfo$1.huawei||browserInfo$1.xiaomi?i+=.125:browserInfo$1.android?i+=.11:browserInfo$1.ios&&(i+=.01),i}function hideCursorTip(){tipsTimer?(clearTimeout(tipsTimer),tipsTimer=setTimeout(()=>{metronomeData.cursorTips="",clearTimeout(tipsTimer),tipsTimer=null},2e3)):tipsTimer=setTimeout(()=>{metronomeData.cursorTips="",clearTimeout(tipsTimer),tipsTimer=null},2e3)}var GradualVersion=(i=>(i[i.BASE=0]="BASE",i[i.ENSEMBLE=1]="ENSEMBLE",i))(GradualVersion||{});const scriptRel="modulepreload",assetsURL=function(i,e){return new URL(i,e).href},seen={},__vitePreload=function i(e,r,s){if(!r||r.length===0)return e();const o=document.getElementsByTagName("link");return Promise.all(r.map(a=>{if(a=assetsURL(a,s),a in seen)return;seen[a]=!0;const l=a.endsWith(".css"),c=l?'[rel="stylesheet"]':"";if(!!s)for(let g=o.length-1;g>=0;g--){const d=o[g];if(d.href===a&&(!l||d.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${a}"]${c}`))return;const m=document.createElement("link");if(m.rel=l?"stylesheet":scriptRel,l||(m.as="script",m.crossOrigin=""),m.href=a,document.head.appendChild(m),l)return new Promise((g,d)=>{m.addEventListener("load",g),m.addEventListener("error",()=>d(new Error(`Unable to preload CSS for ${a}`)))})})).then(()=>e())},relationships={flute:{59:[27,26,25,15,24,22,17,20],60:[27,26,25,15,24,22,17,20],61:[27,26,25,15,24,22,17,21],62:[27,26,25,15,24,22,17],63:[27,26,25,15,24,22,17,19],64:[27,26,25,15,24,22,19],65:[27,26,25,15,24,19],66:[27,26,25,15,17,19],67:[27,26,25,15,19],68:[27,26,25,15,18,19],69:[27,26,15,19],70:[[27,14,19],[27,24,15,19]],71:[27,15,19],72:[27,19],73:[19],74:[26,25,24,22,17,15],75:[26,25,24,22,17,19,15],76:[27,26,25,15,24,22,19],77:[27,26,25,15,24,19],78:[27,26,25,15,17,19],79:[27,26,25,15,19],80:[27,26,25,15,18,19],81:[27,26,15,19],82:[[27,14,19],[27,24,15,19]],83:[27,15,19],84:[27,19],85:[19],86:[26,25,15,19],87:[27,26,25,15,24,22,17,18,19],88:[27,26,15,24,22,19],89:[27,25,24,15,19],90:[27,25,17,15,19],91:[27,26,25,19],92:[26,25,18,19],93:[26,24,15,19],94:[23,24,15,19],95:[27,25,15,16],96:[27,26,25,18,24,19]},clarinet:{52:[[3,4,6,8,9,11,14,18,20],[3,4,6,8,9,11,14,20]],53:[[3,4,6,8,9,11,12,20],[3,4,6,8,9,11,18,20]],54:[[3,4,6,8,9,11,13,18,20],[3,4,6,8,9,11,13,20],[3,4,6,8,9,11,15]],55:[3,4,6,8,9,11,20],56:[3,4,6,8,9,11,16,20],57:[3,4,6,8,9,20],58:[3,4,6,8,20],59:[[3,4,6,9,20],[3,4,6,8,10,20]],60:[3,4,6,20],61:[3,4,6,7,20],62:[3,4,20],63:[[3,4,20,24],[3,4,5,20],[3,8,20]],64:[3,20],65:[20],66:[[3],[20,23,24]],67:[],68:[2],69:[1],70:[1,19],71:[[3,4,6,8,9,11,14,18,19,20],[3,4,6,8,9,11,14,19,20]],72:[[3,4,6,8,9,11,12,19,20],[3,4,6,8,9,11,18,19,20]],73:[[3,4,6,8,9,11,13,19,20],[3,4,6,8,9,11,13,18,19,20],[3,4,6,8,9,11,15,19,20]],74:[3,4,6,8,9,11,19,20],75:[3,4,6,8,9,11,16,19,20],76:[3,4,6,8,9,19,20],77:[3,4,6,8,19,20],78:[[3,4,6,9,19,20],[3,4,6,8,10,19,20]],79:[3,4,6,19,20],80:[3,4,6,7,19,20],81:[3,4,19,20],82:[[3,4,19,20,24],[3,4,5,19,20],[3,4,8,19,20]],83:[3,19,20],84:[19,20],85:[4,6,8,9,19,20],86:[4,6,8,16,19,20],87:[[4,6,8,10,16,19,20],[4,6,9,16,19,20]],88:[4,6,16,19,20],89:[4,6,7,16,19,20]},trumpet:{0:[1,2,3],54:[4,5,6],55:[4,2,6],56:[1,5,6],57:[4,5,3],58:[4,2,3],59:[1,5,3],60:[1,2,3],61:[4,5,6],62:[4,2,6],63:[1,5,6],64:[4,5,3],65:[4,2,3],66:[1,5,3],67:[1,2,3],68:[1,5,6],69:[4,5,3],70:[4,2,3],71:[1,5,3],72:[1,2,3],73:[4,5,3],74:[4,2,3],75:[1,5,3],76:[1,2,3],77:[4,2,3],78:[1,4,3],79:[1,2,3],80:[1,5,6],81:[4,5,3],82:[4,2,3],83:[1,5,3],84:[1,2,3]},horn:{53:[1],54:[2],55:[],56:[2,3],57:[1,2],58:[1],59:[2],60:[],61:[1,2],62:[1],63:[2],64:[],65:[1],66:[2],67:[],68:[0,2,3],69:[0,1,2],70:[0,1],71:[0,2],72:[0],73:[0,2,3],74:[0,1,2],75:[0,1],76:[0,2],77:[0],78:[0,2],79:[0],80:[0,2,3],81:[0,1,2],82:[0,1],83:[0,2],84:[0]},"up-bass-horn":{0:[1,2,3],40:[4,5,6],41:[4,2,6],42:[1,5,6],43:[4,5,3],44:[4,2,3],45:[1,5,3],46:[1,2,3],47:[4,5,6],48:[4,2,6],49:[1,5,6],50:[4,5,3],51:[4,2,3],52:[1,5,3],53:[1,2,3],54:[1,5,6],55:[4,5,3],56:[4,2,3],57:[1,5,3],58:[1,2,3],59:[4,5,3],60:[4,2,3],61:[1,5,3],62:[1,2,3],63:[4,2,3],64:[1,5,3],65:[1,2,3],66:[1,5,6],67:[4,5,3],68:[4,2,3],69:[1,5,3],70:[1,2,3]},trombone:{0:[1],40:[22],41:[11],42:[5],43:[4],44:[3],45:[2],46:[1],47:[22],48:[11],49:[5],50:[4],51:[3],52:[2],53:[1],54:[5],55:[4],56:[3],57:[2],58:[1],59:[4],60:[3],61:[2],62:[1],63:[3],64:[2],65:[1],66:[5],67:[4],68:[3],69:[2],70:[1]},saxophone:{58:[2,4,5,13,17,18,19,23],59:[2,4,5,11,17,18,19,23],60:[2,4,5,17,18,19,23],61:[2,4,5,12,17,18,19,23],62:[2,4,5,17,18,19],63:[2,4,5,17,18,19,22],64:[2,4,5,17,18],65:[2,4,5,17],66:[[2,4,5,18],[2,4,5,17,21]],67:[2,4,5],68:[2,4,5,10],69:[2,4],70:[[2,4,16],[2,17],[2,3]],71:[2],72:[[4],[2,15]],73:[],74:[2,4,5,6,17,18,19],75:[2,4,5,6,17,18,19,22],76:[2,4,5,6,17,18],77:[2,4,5,6,17],78:[[2,4,5,6,18],[2,4,5,6,17,21]],79:[2,4,5,6],80:[2,4,5,6,10],81:[2,4,6],82:[[2,4,6,16],[2,6,17],[2,3,6]],83:[2,6],84:[[4,6],[2,6,15]],85:[6],86:[6,9],87:[6,7,8],88:[6,8,9,14],89:[[6,7,8,9,14],[1,4,6]]},tuba:{0:[1,2,3],28:[4,5,6],29:[4,2,6],30:[1,5,6],31:[4,5,3],32:[4,2,3],33:[4,2,6],34:[1,2,3],35:[4,5,6],36:[4,2,6],37:[1,5,6],38:[4,5,3],39:[4,2,3],40:[1,5,3],41:[1,2,3],42:[1,5,6],43:[4,5,3],44:[4,2,3],45:[1,5,3],46:[1,2,3],47:[4,5,3],48:[4,2,3],49:[1,5,3],50:[1,2,3],51:[4,2,3],52:[1,5,3],53:[1,2,3],54:[1,5,6],55:[4,5,3],56:[4,2,3],57:[1,5,3],58:[1,2,3]},piccolo:{60:[11,2,33,4,5,6,7,8],61:[11,2,33,4,5,6,7,88],62:[11,2,33,4,5,6,7],63:[11,2,33,4,5,6,77],64:[11,2,33,4,5,6],65:[11,2,33,4,5],66:[11,2,33,4,6,7],67:[11,2,33,4],68:[11,2,33,5,6,77],69:[11,2,33],70:[[11,2,4,5],[1,11,2,4,6,7]],71:[[11,2],[11,33,4]],72:[11,33],73:[[2,33],[11]],74:[33],75:[33,4,5,6,7],76:[1,2,33,4,5,6],77:[1,2,33,4,5],78:[1,2,33,4,6,8],79:[1,2,33,4],80:[1,2,33,4,6,7,8],81:[1,2,33],82:[1,2,33,5,6,7],83:[1,2,33,5,6],84:[1,2,5,6],85:[1,2,4,5,7,8,100],86:[1,2,4,5,7,8]},"small-drum":{0:["active","active-left","active-right"],64:["left","right"]},hulusi:{64:[7,6,5,4,3,2,11,91],65:[7,6,5,4,3,2,1,91],66:[7,6,5,4,3,2,91],67:[7,6,5,4,3,2,11,92],68:[7,6,5,4,3,2,1,92],69:[7,6,5,4,3,2,93],70:[7,6,5,4,3,11,93],71:[7,6,5,4,3,93],72:[7,6,5,4,95],73:[7,6,5,3,2,95],74:[7,6,5,95],75:[7,6,4,3,95],76:[7,6,95],77:[7,5,4,3,2,94],78:[7,5,4,94],79:[7,94],80:[6,94],81:[96]},pan:{55:[21],57:[20],59:[19],60:[18],62:[17],64:[16],65:[15],67:[14],69:[13],71:[12],72:[11],74:[10],76:[9],77:[8],79:[7],81:[6],83:[5],84:[4],86:[3],88:[2],89:[1]},ocarina:{57:[1,2,3,4,5,6,7,8,9,10,11,12],58:[1,2,3,4,5,6,8,9,10,11,12],59:[1,2,4,5,6,7,8,9,10,11,12],60:[1,2,4,5,6,8,9,10,11,12],61:[1,2,4,5,6,7,8,9,11,12],62:[1,2,4,5,6,8,9,11,12],63:[1,2,4,5,6,9,11,12],64:[1,2,4,5,6,8,11,12],65:[1,2,4,5,6,11,12],66:[1,2,4,6,9,11,12],67:[1,2,4,6,11,12],68:[1,2,6,9,11,12],69:[1,2,6,11,12],70:[1,6,9,11,12],71:[1,6,11,12],72:[6,11,12],73:[6,9,12],74:[6,12],75:[6,9],76:[6],77:[]},melodica:{53:[1],54:[101],55:[2],56:[102],57:[3],58:[103],59:[4],60:[5],61:[104],62:[6],63:[105],64:[7],65:[8],66:[106],67:[9],68:[107],69:[10],70:[108],71:[11],72:[12],73:[109],74:[13],75:[110],76:[14],77:[15],78:[111],79:[16],80:[112],81:[17],82:[113],83:[18],84:[19]},baroqueRecorder:{60:[11,2,33,4,5,6,7,8],61:[11,2,33,4,5,6,7,88],62:[11,2,33,4,5,6,7],63:[11,2,33,4,5,6,77],64:[11,2,33,4,5,6],65:[11,2,33,4,5,7,8],66:[11,2,33,4,6,7],67:[11,2,33,4],68:[11,2,33,5,6,77],69:[11,2,33],70:[11,2,4,5],71:[11,2],72:[11,33],73:[2,33],74:[33],75:[33,4,5,6,7],76:[1,2,33,4,5,6],77:[1,2,33,4,5,7],78:[1,2,33,4,6],79:[1,2,33,4],80:[1,2,33,5],81:[1,2,33],82:[1,2,33,5,6,7],83:[1,2,33,5,6],84:[1,2,5,6],85:[1,2,4,5,7,8,100],86:[1,2,4,5,7,8],87:[1,2,4],88:[1,2,33,4,5,6],89:[1,2,33,4,5,7],90:[1,2,33,4,6],91:[1,2,33,4],92:[1,2,33,5],93:[1,2,33],94:[1,2,33,5,6,7],95:[1,2,33,5,6],96:[1,2,5,6],97:[1,2,4,5,7,8],98:[1,2,4]}},mappingVoicePart=(i,e)=>{if(e==="GYM")return Number(i);if(e==="COLEXIU")return{Flute:2,Clarinet:4,Trombone:14,Tuba:17,Trumpet:12,Horn:13,AltoSaxophone:6,TenorSaxophone:6,Saxophone:6,UpBassHorn:15,Melodica:137,HulusiFlute:136,PanFlute:135,Ocarina:134,Recorder:120,Ukulele:130,Mouthorgan:140,Piano:150}[i];if(e==="ORCHESTRA")return{1:23,2:2,3:5,4:4,5:12,6:14,7:13,8:15,9:17}[i];if(e==="INSTRUMENT"){let r=i;return typeof r=="string"&&(r=r.toLocaleLowerCase().replace(/ /g,"")),{flute:2,clarinet:4,trombone:14,tuba:17,trumpet:12,horn:13,altosaxophone:6,tenorsaxophone:6,saxophone:6,upbasshorn:15,melodica:137,hulusiFlute:136,panflute:135,recorder:120,ukulele:130,mouthorgan:140,piano:150,baroquerecorder:"baroque-recorder",4:"piccolo",3:"hulusi-flute",1:"pan-flute",2:"ocarina",5:"melodica",23:2,24:6,25:4,26:12,27:14,28:13,29:15,30:17,tenorrecorder:"piccolo",woodwind:"hulusi-flute",panpipes:"pan-flute",ocarina:"ocarina",whistling:"whistling",nai:"melodica",15:"baroque-recorder",16:"baroque-recorder"}[r]||0}else if(e==="ENSEMBLE"){let r=i;const s={Piccolo:"piccolo",Flute:2,"Flute 1":2,"Flute 2":2,Oboe:1,"Clarinet in Bb 1":4,"Clarinet in Bb 2":4,"Alto Clarinet in Eb":4,"Bass Clarinet in Bb":4,Bassoon:1,"Alto Saxophone":5,"Tenor Saxophone":5,"Baritone Saxophone":5,"Trumpet in Bb 1":12,"Trumpet in Bb 2":12,"Horn in F":13,"Horn in F 1":13,"Horn in F 2":13,"Trombone 1":14,"Trombone 2":14,"Trombone 3":14,Euphonium:15,Tuba:17,Chimes:1,Bells:1,Xylophone:1,"Snare Drum":1,"Bass Drum":1,Triangle:1,"Suspended Cymbal":1,"Crash Cymbals":1,"Concert Toms":1,Timpani:1,flute:2,oboe:4,clarinet:4,trombone:14,tuba:17,trumpet:12,horn:13,altosaxophone:6,tenorsaxophone:6,saxophone:6,upbasshorn:15,melodica:137,hulusiFlute:136,panflute:135,recorder:120,ukulele:130,mouthorgan:140,piano:150,4:"piccolo",3:"hulusi-flute",1:"pan-flute",2:"ocarina",5:"melodica",26:12,tenorrecorder:"piccolo",woodwind:"hulusi-flute",panpipes:"pan-flute",ocarina:"ocarina",nai:"melodica",BaroqueRecorder:"baroque-recorder"};let o;if(typeof r=="string"){for(let a in s)if(a===r){o=s[a];break}}else o=s.code;return o}return 0},matchVoicePart=(i,e)=>{if(e==="SINGLE")return{33:"pan-flute",34:"ocarina",35:"hulusi-flute",37:"piccolo",36:"melodica",38:"baroque-recorder",39:"whistling",1:2,5:5,3:4,11:12,13:14,12:13,14:15,16:17}[i];{let r=i;const s={Piccolo:"piccolo",Flute:2,"Flute 1":2,"Flute 2":2,Oboe:1,"Clarinet in Bb":4,"Clarinet in Bb 1":4,"Clarinet in Bb 2":4,"Alto Clarinet in Eb":4,"Bass Clarinet in Bb":4,Bassoon:1,"Alto Saxophone":5,"Tenor Saxophone":5,"Baritone Saxophone":5,"Trumpet in Bb 1":12,"Trumpet in Bb 2":12,"Horn in F":13,"Horn in F 1":13,"Horn in F 2":13,"Trombone 1":14,"Trombone 2":14,"Trombone 3":14,Euphonium:15,Tuba:17,Chimes:1,Bells:1,Xylophone:1,"Snare Drum":1,"Bass Drum":1,Triangle:1,"Suspended Cymbal":1,"Crash Cymbals":1,"Concert Toms":1,Timpani:1,flute:2,oboe:4,clarinet:4,trombone:14,tuba:17,trumpet:12,horn:13,altosaxophone:6,tenorsaxophone:6,saxophone:6,upbasshorn:15,melodica:137,hulusiFlute:136,panflute:135,recorder:120,ukulele:130,mouthorgan:140,piano:150,4:"piccolo",3:"hulusi-flute",1:"pan-flute",2:"ocarina",5:"melodica",26:12,tenorrecorder:"piccolo",woodwind:"hulusi-flute",panpipes:"pan-flute",ocarina:"ocarina",whistling:"whistling",nai:"melodica",BaroqueRecorder:"baroque-recorder","Drum Set":24,Marimba:26,Vibraphone:27,"Tubular Bells":30,Mallets:32};let o;if(typeof r=="string"){r=r.toLocaleLowerCase().replace(/ /g,"");for(let a in s){let l=a;if(typeof a=="string"&&(l=l.toLocaleLowerCase().replace(/ /g,"")),l===r){o=s[a];break}}}else o=s.code;return o}},subjectFingering=i=>{switch(i){case 2:return{name:"flute",direction:"transverse",height:"1.6rem",scaleData:{scale:"0.8",offset:"3.64rem"},hasTizhi:!0,id:1};case 4:return{name:"clarinet",direction:"vertical",width:"3rem",hasTizhi:!0,id:3};case 5:case 6:return{name:"saxophone",direction:"vertical",width:"4.34rem",hasTizhi:!0,id:5};case 12:return{name:"trumpet",direction:"transverse",height:"1.6rem",scaleData:{scale:"0.8",offset:"3.64rem"},hasTizhi:!1,id:11};case 13:return{name:"horn",direction:"vertical",width:"4.98rem",hasTizhi:!1,id:12};case 14:return{name:"trombone",direction:"transverse",height:"1.6rem",scaleData:{scale:"0.8",offset:"3.64rem"},hasTizhi:!1,id:13};case 15:return{name:"up-bass-horn",direction:"vertical",width:"4.34rem",hasTizhi:!1,id:14};case 17:return{name:"tuba",direction:"vertical",width:"4.34rem",hasTizhi:!1,id:16};case 120:return{name:"piccolo",direction:"vertical",width:"3rem",orientation:0,hasTizhi:!0,id:2};case"piccolo":return{name:"piccolo",direction:"vertical",width:"3rem",orientation:0,code:"竖笛",hasTizhi:!0,id:37};case"hulusi-flute":return{name:"hulusi-flute",direction:"vertical",width:"3rem",orientation:0,code:"葫芦丝",hasTizhi:!1,id:35};case"pan-flute":return{name:"pan-flute",direction:"transverse",height:"2rem",scaleData:{scale:"0.8",offset:"3.64rem"},disabledFinger:!0,orientation:0,code:"排箫",hasTizhi:!1,id:33};case"ocarina":return{name:"ocarina",direction:"vertical",width:"3rem",disabledFinger:!0,orientation:0,code:"陶笛",hasTizhi:!1,id:34};case"whistling":return{name:"whistling",direction:"vertical",width:"3rem",disabledFinger:!0,orientation:0,code:"陶笛",hasTizhi:!1,id:39};case"melodica":return{name:"melodica",direction:"transverse",height:"2rem",scaleData:{scale:"0.8",offset:"3.64rem"},orientation:0,code:"口风琴",hasTizhi:!1,id:36};case"baroque-recorder":return{name:"baroque-recorder",direction:"vertical",width:"3rem",orientation:0,code:"竖笛",hasTizhi:!0,id:38};default:return typeof i=="number"?{id:i}:{}}},getFingeringConfig=async i=>{switch(i){case"flute":return{json:(await __vitePreload(()=>import("./index-7f22768f.js"),[],import.meta.url)).default,relationship:relationships.flute,height:"60px",styles:{}};case"clarinet":return{json:(await __vitePreload(()=>import("./index-2499965c.js"),[],import.meta.url)).default,relationship:relationships.clarinet,styles:{marginLeft:".4rem",marginRight:".7rem"}};case"trumpet":return{json:(await __vitePreload(()=>import("./index-f01bef28.js"),[],import.meta.url)).default,relationship:relationships.trumpet};case"horn":return{json:(await __vitePreload(()=>import("./index-20c025d3.js"),[],import.meta.url)).default,relationship:relationships.horn,height:"212px",width:"252px"};case"tuba":return{json:(await __vitePreload(()=>import("./index-902205b3.js"),[],import.meta.url)).default,relationship:relationships.tuba};case"piccolo":return{json:(await __vitePreload(()=>import("./index-991877f6.js"),[],import.meta.url)).default,relationship:relationships.piccolo};case"piccolo1":return{json:(await __vitePreload(()=>import("./index-0bbf84fb.js"),[],import.meta.url)).default,relationship:relationships.piccolo};case"piccolo2":return{json:(await __vitePreload(()=>import("./index-f5dd9e1d.js"),[],import.meta.url)).default,relationship:relationships.piccolo};case"up-bass-horn":return{json:(await __vitePreload(()=>import("./index-ad5b3309.js"),[],import.meta.url)).default,relationship:relationships["up-bass-horn"]};case"trombone":return{json:(await __vitePreload(()=>import("./index-f23e3dbf.js"),[],import.meta.url)).default,relationship:relationships.trombone};case"saxophone":return{json:(await __vitePreload(()=>import("./index-cef965b9.js"),[],import.meta.url)).default,relationship:relationships.saxophone,styles:{marginLeft:".2rem",marginRight:".3rem"}};case"small-drum":return{json:(await __vitePreload(()=>import("./index-7ad0b9f0.js"),[],import.meta.url)).default,relationship:relationships["up-bass-horn"],width:"180px"};case"hulusi-flute":return{json:(await __vitePreload(()=>import("./index-71a277d3.js"),[],import.meta.url)).default,relationship:relationships.hulusi,styles:{marginLeft:".6rem",marginRight:".7rem"}};case"hulusi-flute1":return{json:(await __vitePreload(()=>import("./index-03bddf2b.js"),[],import.meta.url)).default,relationship:relationships.hulusi,styles:{marginLeft:".6rem",marginRight:".7rem"}};case"hulusi-flute2":return{json:(await __vitePreload(()=>import("./index-97e45cdd.js"),[],import.meta.url)).default,relationship:relationships.hulusi,styles:{marginLeft:".6rem",marginRight:".7rem"}};case"pan-flute":return{json:(await __vitePreload(()=>import("./index-0bc55d54.js"),[],import.meta.url)).default,relationship:relationships.pan};case"pan-flute1":return{json:(await __vitePreload(()=>import("./index-97c2723f.js"),[],import.meta.url)).default,relationship:relationships.pan};case"pan-flute2":return{json:(await __vitePreload(()=>import("./index-589cb412.js"),[],import.meta.url)).default,relationship:relationships.pan};case"pan-flute3":return{json:(await __vitePreload(()=>import("./index-e427d448.js"),[],import.meta.url)).default,relationship:relationships.pan};case"ocarina":return{json:(await __vitePreload(()=>import("./index-8848f89c.js"),[],import.meta.url)).default,relationship:relationships.ocarina,width:"180px",styles:{marginTop:"auto"}};case"ocarina1":return{json:(await __vitePreload(()=>import("./index-ad04d4cf.js"),[],import.meta.url)).default,relationship:relationships.ocarina,width:"180px",styles:{marginTop:"auto"}};case"ocarina2":return{json:(await __vitePreload(()=>import("./index-c7652d9b.js"),[],import.meta.url)).default,relationship:relationships.ocarina,width:"180px",styles:{marginTop:"auto"}};case"whistling":return{json:(await __vitePreload(()=>import("./index-c5bb109e.js"),[],import.meta.url)).default,relationship:relationships.ocarina,width:"180px",styles:{marginTop:"auto"}};case"whistling1":return{json:(await __vitePreload(()=>import("./index-38262e39.js"),[],import.meta.url)).default,relationship:relationships.ocarina,width:"180px",styles:{marginTop:"auto"}};case"whistling2":return{json:(await __vitePreload(()=>import("./index-6972bb98.js"),[],import.meta.url)).default,relationship:relationships.ocarina,width:"180px",styles:{marginTop:"auto"}};case"melodica":return{json:(await __vitePreload(()=>import("./index-55a98a41.js"),[],import.meta.url)).default,relationship:relationships.melodica,height:"80px",styles:{marginTop:"auto"}};case"melodica1":return{json:(await __vitePreload(()=>import("./index-b6d2ab3b.js"),[],import.meta.url)).default,relationship:relationships.melodica,height:"80px",styles:{marginTop:"auto"}};case"baroque-recorder":return{json:(await __vitePreload(()=>import("./index-7908a008.js"),[],import.meta.url)).default,relationship:relationships.baroqueRecorder};case"baroque-recorder1":return{json:(await __vitePreload(()=>import("./index-142fdf16.js"),[],import.meta.url)).default,relationship:relationships.baroqueRecorder};case"baroque-recorder2":return{json:(await __vitePreload(()=>import("./index-d13c0247.js"),[],import.meta.url)).default,relationship:relationships.baroqueRecorder};default:return null}},getMusicSheetDetail=i=>request.get("/musicSheet/cbsDetail/"+i);class AJAX{static ajax(e,r=9e3){let s;const o=e.indexOf(".mxl")>-1?"text/plain; charset=x-user-defined":"application/xml";if(XMLHttpRequest)s=new XMLHttpRequest;else if(ActiveXObject)s=new ActiveXObject("Microsoft.XMLHTTP");else return Promise.reject(new Error("XMLHttp not supported."));return s.timeout=r,new Promise((a,l)=>{s.onreadystatechange=()=>{s.readyState===XMLHttpRequest.DONE&&(s.status===200||s.status===0&&s.responseText?a(s.responseText):l(new Error("Could not retrieve requested URL "+s.status)))},s.ontimeout=c=>{l(new Error("Server request Timeout"))},s.overrideMimeType(o),s.open("GET",e,!0),s.send()})}}const _Fraction=class{constructor(i=0,e=1,r=0,s=!0){this.numerator=0,this.denominator=1,this.wholeValue=0,this.numerator=i,this.denominator=e,this.wholeValue=r,s&&this.simplify(),this.setRealValue()}static max(i,e){return i.RealValue>e.RealValue?i:e}static Equal(i,e){return i.wholeValue===e.wholeValue&&i.Denominator===e.Denominator&&i.Numerator===e.Numerator}static createFromFraction(i){return new _Fraction(i.numerator,i.denominator,i.wholeValue,!1)}static plus(i,e){const r=i.clone();return r.Add(e),r}static minus(i,e){const r=i.clone();return r.Sub(e),r}static multiply(i,e){return new _Fraction((i.wholeValue*i.denominator+i.numerator)*(e.wholeValue*e.denominator+e.numerator),i.denominator*e.denominator)}static greatestCommonDenominator(i,e){if(i===0)return e;if(e===1)return 1;for(;Math.abs(e)>=1&&Math.abs(i)>=1;)i>e?i-=e:e-=i;const r=Math.round(i);return Math.max(r,1)}toString(){let i=this.numerator+"/"+this.denominator;return this.wholeValue!==0&&(i=this.wholeValue+" "+i),i}clone(){return new _Fraction(this.numerator,this.denominator,this.wholeValue,!1)}get Numerator(){return this.numerator}set Numerator(i){this.numerator!==i&&(this.numerator=i,this.simplify(),this.setRealValue())}get Denominator(){return this.denominator}set Denominator(i){this.denominator!==i&&(this.denominator=i,this.numerator!==0&&this.simplify(),this.setRealValue())}get WholeValue(){return this.wholeValue}set WholeValue(i){this.wholeValue!==i&&(this.wholeValue=i,this.setRealValue())}GetExpandedNumerator(){return this.wholeValue*this.denominator+this.numerator}calculateNumberOfNeededDots(){let i=1,e=2;const r=this.GetExpandedNumerator();for(;ei;)e.Numerator++;if(this.numerator>this.denominator){const r=new _Fraction(this.numerator-1,this.denominator,this.wholeValue);for(;r.Denominator>i;)r.Numerator--;if(r.Denominator_Fraction.maximumAllowedNumber){const r=this.denominator/_Fraction.maximumAllowedNumber;this.numerator=Math.round(this.numerator/r),this.denominator=Math.round(this.denominator/r)}if(this.numerator>_Fraction.maximumAllowedNumber){const r=this.numerator/_Fraction.maximumAllowedNumber;this.numerator=Math.round(this.numerator/r),this.denominator=Math.round(this.denominator/r)}}isOnBeat(i){const e=this.distanceFromBeat(i);return Math.abs(e)<_Fraction.FloatInaccuracyTolerance}distanceFromBeat(i){const e=new _Fraction(1,i.Denominator);return this.RealValue%e.RealValue}};let Fraction$1=_Fraction;Fraction$1.maximumAllowedNumber=46340;Fraction$1.FloatInaccuracyTolerance=1e-4;class AbstractExpression{constructor(e){this.placement=e}static isStringInStringList(e,r){for(let s=0,o=e.length;s(i[i.Above=0]="Above",i[i.Below=1]="Below",i[i.Left=2]="Left",i[i.Right=3]="Right",i[i.NotYetDefined=4]="NotYetDefined",i[i.AboveOrBelow=5]="AboveOrBelow",i))(PlacementEnum||{});const _ContinuousDynamicExpression=class extends AbstractExpression{constructor(i,e,r,s,o,a,l=""){super(e),super.parentMeasure=s,this.NumberXml=a,this.dynamicType=i,this.label=l,this.staffNumber=r,this.activeInstantaneousDynamic=o,this.startVolume=1,this.endVolume=1,this.setStartAndEndVolume(),l!==""&&this.setType()}setStartAndEndVolume(){this.activeInstantaneousDynamic&&(this.dynamicType===0&&(this.startVolume=this.activeInstantaneousDynamic.Volume,this.endVolume=this.activeInstantaneousDynamic.Volume*1.2),this.dynamicType===1&&(this.startVolume=this.activeInstantaneousDynamic.Volume,this.endVolume=this.activeInstantaneousDynamic.Volume*.8))}get DynamicType(){return this.dynamicType}set DynamicType(i){this.dynamicType=i}get StartMultiExpression(){return this.startMultiExpression}set StartMultiExpression(i){this.startMultiExpression=i}get EndMultiExpression(){return this.endMultiExpression}set EndMultiExpression(i){this.endMultiExpression=i}get Placement(){return this.placement}set Placement(i){this.placement=i}get StartVolume(){return this.startVolume}set StartVolume(i){this.startVolume=i}get EndVolume(){return this.endVolume}set EndVolume(i){this.endVolume=i}get StaffNumber(){return this.staffNumber}set StaffNumber(i){this.staffNumber=i}get Label(){return this.label}set Label(i){this.label=i,this.setType()}static isInputStringContinuousDynamic(i){return i?_ContinuousDynamicExpression.isStringInStringList(_ContinuousDynamicExpression.listContinuousDynamicIncreasing,i)||_ContinuousDynamicExpression.isStringInStringList(_ContinuousDynamicExpression.listContinuousDynamicDecreasing,i):!1}getInterpolatedDynamic(i){const e=this.StartMultiExpression.AbsoluteTimestamp;let r;if(this.EndMultiExpression?r=this.EndMultiExpression.AbsoluteTimestamp:r=Fraction$1.plus(this.startMultiExpression.SourceMeasureParent.AbsoluteTimestamp,this.startMultiExpression.SourceMeasureParent.Duration),i.lt(e))return-1;if(r.lt(i))return-2;const s=Fraction$1.minus(i,e).RealValue/Fraction$1.minus(r,e).RealValue;return Math.max(0,Math.min(99.9,this.startVolume+(this.endVolume-this.startVolume)*s))}isWedge(){return!this.label}setType(){_ContinuousDynamicExpression.isStringInStringList(_ContinuousDynamicExpression.listContinuousDynamicIncreasing,this.label)?this.dynamicType=0:_ContinuousDynamicExpression.isStringInStringList(_ContinuousDynamicExpression.listContinuousDynamicDecreasing,this.label)&&(this.dynamicType=1)}};let ContinuousDynamicExpression=_ContinuousDynamicExpression;ContinuousDynamicExpression.listContinuousDynamicIncreasing=["crescendo","cresc","cresc.","cres."];ContinuousDynamicExpression.listContinuousDynamicDecreasing=["decrescendo","decresc","decr.","diminuendo","dim.","dim"];var ContDynamicEnum=(i=>(i[i.crescendo=0]="crescendo",i[i.diminuendo=1]="diminuendo",i))(ContDynamicEnum||{}),DynamicExpressionSymbolEnum=(i=>(i[i.p=0]="p",i[i.f=1]="f",i[i.s=2]="s",i[i.z=3]="z",i[i.m=4]="m",i[i.r=5]="r",i))(DynamicExpressionSymbolEnum||{});class MusicSheetReadingException{constructor(e,r){this.message=e,r&&(this.message+=" "+r.toString())}}class ArgumentOutOfRangeException{constructor(e){this.message=e}}class InvalidEnumArgumentException{constructor(e){this.message=e}}var loglevelExports={},loglevel={get exports(){return loglevelExports},set exports(i){loglevelExports=i}};(function(i){(function(e,r){i.exports?i.exports=r():e.log=r()})(commonjsGlobal,function(){var e=function(){},r="undefined",s=typeof window!==r&&typeof window.navigator!==r&&/Trident\/|MSIE /.test(window.navigator.userAgent),o=["trace","debug","info","warn","error"],a={},l=null;function c(S,E){var x=S[E];if(typeof x.bind=="function")return x.bind(S);try{return Function.prototype.bind.call(x,S)}catch(C){return function(){return Function.prototype.apply.apply(x,[S,arguments])}}}function u(){console.log&&(console.log.apply?console.log.apply(console,arguments):Function.prototype.apply.apply(console.log,[console,arguments])),console.trace&&console.trace()}function m(S){return S==="debug"&&(S="log"),typeof console===r?!1:S==="trace"&&s?u:console[S]!==void 0?c(console,S):console.log!==void 0?c(console,"log"):e}function g(){for(var S=this.getLevel(),E=0;E=0&&B<=x.levels.SILENT)return B;throw new TypeError("log.setLevel() called with invalid level: "+O)}x.name=S,x.levels={TRACE:0,DEBUG:1,INFO:2,WARN:3,ERROR:4,SILENT:5},x.methodFactory=E||y,x.getLevel=function(){return k!=null?k:P!=null?P:C},x.setLevel=function(O,B){return k=D(O),B!==!1&&M(k),g.call(x)},x.setDefaultLevel=function(O){P=D(O),T()||x.setLevel(O,!1)},x.resetLevel=function(){k=null,F(),g.call(x)},x.enableAll=function(O){x.setLevel(x.levels.TRACE,O)},x.disableAll=function(O){x.setLevel(x.levels.SILENT,O)},x.rebuild=function(){if(l!==x&&(C=D(l.getLevel())),g.call(x),l===x)for(var O in a)a[O].rebuild()},C=D(l?l.getLevel():"WARN");var N=T();N!=null&&(k=D(N)),g.call(x)}l=new A,l.getLogger=function(E){if(typeof E!="symbol"&&typeof E!="string"||E==="")throw new TypeError("You must supply a name when creating a logger.");var x=a[E];return x||(x=a[E]=new A(E,l.methodFactory)),x};var b=typeof window!==r?window.log:void 0;return l.noConflict=function(){return typeof window!==r&&window.log===l&&(window.log=b),l},l.getLoggers=function(){return a},l.default=l,l})})(loglevel);var lib$3={},arrays$4={},util$b={};(function(i){Object.defineProperty(i,"__esModule",{value:!0});var e=Object.prototype.hasOwnProperty;i.has=function(d,y){return e.call(d,y)};function r(d,y){return d"u"}i.isUndefined=c;function u(d){return Object.prototype.toString.call(d)==="[object String]"}i.isString=u;function m(d){return c(d)||!l(d)?function(y,A){return y=0;a--)if(s(i[a],e))return a;return-1}arrays$4.lastIndexOf=lastIndexOf;function contains(i,e,r){return indexOf$1(i,e,r)>=0}arrays$4.contains=contains;function remove(i,e,r){var s=indexOf$1(i,e,r);return s<0?!1:(i.splice(s,1),!0)}arrays$4.remove=remove;function frequency(i,e,r){for(var s=r||util$a.defaultEquals,o=i.length,a=0,l=0;l=i.length||r<0||r>=i.length)return!1;var s=i[e];return i[e]=i[r],i[r]=s,!0}arrays$4.swap=swap;function toString$1(i){return"["+i.toString()+"]"}arrays$4.toString=toString$1;function forEach(i,e){for(var r=0,s=i;re.size())return!1;var r=!0;return this.forEach(function(s){return e.contains(s)?!0:(r=!1,!1)}),r},i.prototype.remove=function(e){return this.contains(e)?(this.dictionary.remove(e),!0):!1},i.prototype.forEach=function(e){this.dictionary.forEach(function(r,s){return e(s)})},i.prototype.toArray=function(){return this.dictionary.values()},i.prototype.isEmpty=function(){return this.dictionary.isEmpty()},i.prototype.size=function(){return this.dictionary.size()},i.prototype.clear=function(){this.dictionary.clear()},i.prototype.toString=function(){return arrays$3.toString(this.toArray())},i}();_Set.default=Set$1;Object.defineProperty(Bag$1,"__esModule",{value:!0});var util$7=util$b,Dictionary_1$4=Dictionary$2,Set_1$1=_Set,Bag=function(){function i(e){this.toStrF=e||util$7.defaultToString,this.dictionary=new Dictionary_1$4.default(this.toStrF),this.nElements=0}return i.prototype.add=function(e,r){if(r===void 0&&(r=1),util$7.isUndefined(e)||r<=0)return!1;if(this.contains(e))this.dictionary.getValue(e).copies+=r;else{var s={value:e,copies:r};this.dictionary.setValue(e,s)}return this.nElements+=r,!0},i.prototype.count=function(e){return this.contains(e)?this.dictionary.getValue(e).copies:0},i.prototype.contains=function(e){return this.dictionary.containsKey(e)},i.prototype.remove=function(e,r){if(r===void 0&&(r=1),util$7.isUndefined(e)||r<=0)return!1;if(this.contains(e)){var s=this.dictionary.getValue(e);return r>s.copies?this.nElements-=s.copies:this.nElements-=r,s.copies-=r,s.copies<=0&&this.dictionary.remove(e),!0}else return!1},i.prototype.toArray=function(){for(var e=[],r=this.dictionary.values(),s=0,o=r;sthis.nElements||util$6.isUndefined(e))return!1;var s=this.createNode(e);if(this.nElements===0||this.lastNode===null)this.firstNode=s,this.lastNode=s;else if(r===this.nElements)this.lastNode.next=s,this.lastNode=s;else if(r===0)s.next=this.firstNode,this.firstNode=s;else{var o=this.nodeAtIndex(r-1);if(o===null)return!1;s.next=o.next,o.next=s}return this.nElements++,!0},i.prototype.first=function(){if(this.firstNode!==null)return this.firstNode.element},i.prototype.last=function(){if(this.lastNode!==null)return this.lastNode.element},i.prototype.elementAtIndex=function(e){var r=this.nodeAtIndex(e);if(r!==null)return r.element},i.prototype.indexOf=function(e,r){var s=r||util$6.defaultEquals;if(util$6.isUndefined(e))return-1;for(var o=this.firstNode,a=0;o!==null;){if(s(o.element,e))return a;a++,o=o.next}return-1},i.prototype.contains=function(e,r){return this.indexOf(e,r)>=0},i.prototype.remove=function(e,r){var s=r||util$6.defaultEquals;if(this.nElements<1||util$6.isUndefined(e))return!1;for(var o=null,a=this.firstNode;a!==null;){if(s(a.element,e))return o===null?(this.firstNode=a.next,a===this.lastNode&&(this.lastNode=null)):a===this.lastNode?(this.lastNode=o,o.next=a.next,a.next=null):(o.next=a.next,a.next=null),this.nElements--,!0;o=a,a=a.next}return!1},i.prototype.clear=function(){this.firstNode=null,this.lastNode=null,this.nElements=0},i.prototype.equals=function(e,r){var s=r||util$6.defaultEquals;return!(e instanceof i)||this.size()!==e.size()?!1:this.equalsAux(this.firstNode,e.firstNode,s)},i.prototype.equalsAux=function(e,r,s){for(;e!==null&&r!==null;){if(!s(e.element,r.element))return!1;e=e.next,r=r.next}return!0},i.prototype.removeElementAtIndex=function(e){if(!(e<0||e>=this.nElements||this.firstNode===null||this.lastNode===null)){var r;if(this.nElements===1)r=this.firstNode.element,this.firstNode=null,this.lastNode=null;else{var s=this.nodeAtIndex(e-1);s===null?(r=this.firstNode.element,this.firstNode=this.firstNode.next):s.next===this.lastNode&&(r=this.lastNode.element,this.lastNode=s),s!==null&&s.next!==null&&(r=s.next.element,s.next=s.next.next)}return this.nElements--,r}},i.prototype.forEach=function(e){for(var r=this.firstNode;r!==null&&e(r.element)!==!1;)r=r.next},i.prototype.reverse=function(){for(var e=null,r=this.firstNode,s=null;r!==null;)s=r.next,r.next=e,e=r,r=s;s=this.firstNode,this.firstNode=this.lastNode,this.lastNode=s},i.prototype.toArray=function(){for(var e=[],r=this.firstNode;r!==null;)e.push(r.element),r=r.next;return e},i.prototype.size=function(){return this.nElements},i.prototype.isEmpty=function(){return this.nElements<=0},i.prototype.toString=function(){return arrays$2.toString(this.toArray())},i.prototype.nodeAtIndex=function(e){if(e<0||e>=this.nElements)return null;if(e===this.nElements-1)return this.lastNode;for(var r=this.firstNode,s=0;s0&&(e=e.rightCh);return e},i.prototype.transplant=function(e,r){e.parent===null?this.root=r:e===e.parent.leftCh?e.parent.leftCh=r:e.parent.rightCh=r,r!==null&&(r.parent=e.parent)},i.prototype.removeNode=function(e){if(e.leftCh===null)this.transplant(e,e.rightCh);else if(e.rightCh===null)this.transplant(e,e.leftCh);else{var r=this.minimumAux(e.rightCh);r.parent!==e&&(this.transplant(r,r.rightCh),r.rightCh=e.rightCh,r.rightCh.parent=r),this.transplant(e,r),r.leftCh=e.leftCh,r.leftCh.parent=r}},i.prototype.inorderTraversalAux=function(e,r,s){e===null||s.stop||(this.inorderTraversalAux(e.leftCh,r,s),!s.stop&&(s.stop=r(e.element)===!1,!s.stop&&this.inorderTraversalAux(e.rightCh,r,s)))},i.prototype.levelTraversalAux=function(e,r){var s=new Queue_1$1.default;for(e!==null&&s.enqueue(e),e=s.dequeue()||null;e!=null;){if(r(e.element)===!1)return;e.leftCh!==null&&s.enqueue(e.leftCh),e.rightCh!==null&&s.enqueue(e.rightCh),e=s.dequeue()||null}},i.prototype.preorderTraversalAux=function(e,r,s){e===null||s.stop||(s.stop=r(e.element)===!1,!s.stop&&(this.preorderTraversalAux(e.leftCh,r,s),!s.stop&&this.preorderTraversalAux(e.rightCh,r,s)))},i.prototype.postorderTraversalAux=function(e,r,s){e===null||s.stop||(this.postorderTraversalAux(e.leftCh,r,s),!s.stop&&(this.postorderTraversalAux(e.rightCh,r,s),!s.stop&&(s.stop=r(e.element)===!1)))},i.prototype.minimumAux=function(e){for(;e!=null&&e.leftCh!==null;)e=e.leftCh;return e},i.prototype.maximumAux=function(e){for(;e!=null&&e.rightCh!==null;)e=e.rightCh;return e},i.prototype.heightAux=function(e){return e===null?-1:Math.max(this.heightAux(e.leftCh),this.heightAux(e.rightCh))+1},i.prototype.insertNode=function(e){for(var r=null,s=this.root;s!==null;){var o=this.compare(e.element,s.element);if(o===0)return null;o<0?(r=s,s=s.leftCh):(r=s,s=s.rightCh)}return e.parent=r,r===null?this.root=e:this.compare(e.element,r.element)<0?r.leftCh=e:r.rightCh=e,e},i.prototype.createNode=function(e){return{element:e,leftCh:null,rightCh:null,parent:null}},i}();BSTreeKV$1.default=BSTreeKV;var __extends$2=commonjsGlobal&&commonjsGlobal.__extends||function(){var i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,r){e.__proto__=r}||function(e,r){for(var s in r)r.hasOwnProperty(s)&&(e[s]=r[s])};return function(e,r){i(e,r);function s(){this.constructor=e}e.prototype=r===null?Object.create(r):(s.prototype=r.prototype,new s)}}();Object.defineProperty(BSTree$1,"__esModule",{value:!0});var BSTreeKV_1$1=BSTreeKV$1,BSTree=function(i){__extends$2(e,i);function e(){return i!==null&&i.apply(this,arguments)||this}return e}(BSTreeKV_1$1.default);BSTree$1.default=BSTree;var Heap$1={};Object.defineProperty(Heap$1,"__esModule",{value:!0});var collections=util$b,arrays$1=arrays$4,Heap=function(){function i(e){this.data=[],this.compare=e||collections.defaultCompare}return i.prototype.leftChildIndex=function(e){return 2*e+1},i.prototype.rightChildIndex=function(e){return 2*e+2},i.prototype.parentIndex=function(e){return Math.floor((e-1)/2)},i.prototype.minIndex=function(e,r){return r>=this.data.length?e>=this.data.length?-1:e:this.compare(this.data[e],this.data[r])<=0?e:r},i.prototype.siftUp=function(e){for(var r=this.parentIndex(e);e>0&&this.compare(this.data[r],this.data[e])>0;)arrays$1.swap(this.data,r,e),e=r,r=this.parentIndex(e)},i.prototype.siftDown=function(e){for(var r=this.minIndex(this.leftChildIndex(e),this.rightChildIndex(e));r>=0&&this.compare(this.data[e],this.data[r])>0;)arrays$1.swap(this.data,r,e),e=r,r=this.minIndex(this.leftChildIndex(e),this.rightChildIndex(e))},i.prototype.peek=function(){if(this.data.length>0)return this.data[0]},i.prototype.add=function(e){return collections.isUndefined(e)?!1:(this.data.push(e),this.siftUp(this.data.length-1),!0)},i.prototype.removeRoot=function(){if(this.data.length>0){var e=this.data[0];return this.data[0]=this.data[this.data.length-1],this.data.splice(this.data.length-1,1),this.data.length>0&&this.siftDown(0),e}},i.prototype.contains=function(e){var r=collections.compareToEquals(this.compare);return arrays$1.contains(this.data,e,r)},i.prototype.size=function(){return this.data.length},i.prototype.isEmpty=function(){return this.data.length<=0},i.prototype.clear=function(){this.data.length=0},i.prototype.forEach=function(e){arrays$1.forEach(this.data,e)},i}();Heap$1.default=Heap;var LinkedDictionary$1={},__extends$1=commonjsGlobal&&commonjsGlobal.__extends||function(){var i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,r){e.__proto__=r}||function(e,r){for(var s in r)r.hasOwnProperty(s)&&(e[s]=r[s])};return function(e,r){i(e,r);function s(){this.constructor=e}e.prototype=r===null?Object.create(r):(s.prototype=r.prototype,new s)}}();Object.defineProperty(LinkedDictionary$1,"__esModule",{value:!0});var Dictionary_1$3=Dictionary$2,util$4=util$b,LinkedDictionaryPair=function(){function i(e,r){this.key=e,this.value=r}return i.prototype.unlink=function(){this.prev.next=this.next,this.next.prev=this.prev},i}(),HeadOrTailLinkedDictionaryPair=function(){function i(){this.key=null,this.value=null}return i.prototype.unlink=function(){this.prev.next=this.next,this.next.prev=this.prev},i}();function isHeadOrTailLinkedDictionaryPair(i){return!i.next}var LinkedDictionary=function(i){__extends$1(e,i);function e(r){var s=i.call(this,r)||this;return s.head=new HeadOrTailLinkedDictionaryPair,s.tail=new HeadOrTailLinkedDictionaryPair,s.head.next=s.tail,s.tail.prev=s.head,s}return e.prototype.appendToTail=function(r){var s=this.tail.prev;s.next=r,r.prev=s,r.next=this.tail,this.tail.prev=r},e.prototype.getLinkedDictionaryPair=function(r){if(!util$4.isUndefined(r)){var s="$"+this.toStr(r),o=this.table[s];return o}},e.prototype.getValue=function(r){var s=this.getLinkedDictionaryPair(r);if(!util$4.isUndefined(s))return s.value},e.prototype.remove=function(r){var s=this.getLinkedDictionaryPair(r);if(!util$4.isUndefined(s))return i.prototype.remove.call(this,r),s.unlink(),s.value},e.prototype.clear=function(){i.prototype.clear.call(this),this.head.next=this.tail,this.tail.prev=this.head},e.prototype.replace=function(r,s){var o="$"+this.toStr(s.key);s.next=r.next,s.prev=r.prev,this.remove(r.key),s.prev.next=s,s.next.prev=s,this.table[o]=s,++this.nElements},e.prototype.setValue=function(r,s){if(!(util$4.isUndefined(r)||util$4.isUndefined(s))){var o=this.getLinkedDictionaryPair(r),a=new LinkedDictionaryPair(r,s),l="$"+this.toStr(r);if(util$4.isUndefined(o)){this.appendToTail(a),this.table[l]=a,++this.nElements;return}else return this.replace(o,a),o.value}},e.prototype.keys=function(){var r=[];return this.forEach(function(s,o){r.push(s)}),r},e.prototype.values=function(){var r=[];return this.forEach(function(s,o){r.push(o)}),r},e.prototype.forEach=function(r){for(var s=this.head.next;!isHeadOrTailLinkedDictionaryPair(s);){var o=r(s.key,s.value);if(o===!1)return;s=s.next}},e}(Dictionary_1$3.default);LinkedDictionary$1.default=LinkedDictionary;var MultiDictionary$1={};Object.defineProperty(MultiDictionary$1,"__esModule",{value:!0});var util$3=util$b,Dictionary_1$2=Dictionary$2,arrays=arrays$4,MultiDictionary=function(){function i(e,r,s){s===void 0&&(s=!1),this.dict=new Dictionary_1$2.default(e),this.equalsF=r||util$3.defaultEquals,this.allowDuplicate=s}return i.prototype.getValue=function(e){var r=this.dict.getValue(e);return util$3.isUndefined(r)?[]:arrays.copy(r)},i.prototype.setValue=function(e,r){if(util$3.isUndefined(e)||util$3.isUndefined(r))return!1;var s=this.dict.getValue(e);return util$3.isUndefined(s)?(this.dict.setValue(e,[r]),!0):!this.allowDuplicate&&arrays.contains(s,r,this.equalsF)?!1:(s.push(r),!0)},i.prototype.remove=function(e,r){if(util$3.isUndefined(r)){var s=this.dict.remove(e);return!util$3.isUndefined(s)}var o=this.dict.getValue(e);return!util$3.isUndefined(o)&&arrays.remove(o,r,this.equalsF)?(o.length===0&&this.dict.remove(e),!0):!1},i.prototype.keys=function(){return this.dict.keys()},i.prototype.values=function(){for(var e=this.dict.values(),r=[],s=0,o=e;s-1&&this.insertIdIntoRoot(r,s);for(var o in this.nodes)if(this.nodes.hasOwnProperty(o)){var a=this.findNodeId(o,e);a>-1&&this.insertIdIntoNode(o,r,a)}},i.prototype.insertIdAfterId=function(e,r){var s=this.findRootId(e);s>-1&&this.insertIdIntoRoot(r,s+1);for(var o in this.nodes)if(this.nodes.hasOwnProperty(o)){var a=this.findNodeId(o,e);a>-1&&this.insertIdIntoNode(o,r,a+1)}},i.prototype.insertIdIntoId=function(e,r){this.nodeInsertAtEnd(e,r),this.nodes[r]=[]},i.prototype.insertIdIntoRoot=function(e,r){if(r===void 0)this.rootInsertAtEnd(e);else if(r<0){var s=this.rootIds.length;this.rootIds.splice(r+s+1,0,e)}else this.rootIds.splice(r,0,e);this.nodes[e]=this.nodes[e]||[]},i.prototype.insertIdIntoNode=function(e,r,s){if(this.nodes[e]=this.nodes[e]||[],this.nodes[r]=this.nodes[r]||[],s===void 0)this.nodeInsertAtEnd(e,r);else if(s<0){var o=this.nodes[e].length;this.nodes[e].splice(s+o+1,0,r)}else this.nodes[e].splice(s,0,r)},i.prototype.moveId=function(e,r,s){var o=e,a=this.findRootId(o);this.nodes[r];for(var l in this.nodes)if(this.nodes.hasOwnProperty(l)){this.findNodeId(l,r);break}var c=r,u=this.findRootId(c);this.nodes[r];for(var l in this.nodes)if(this.nodes.hasOwnProperty(l)){this.findNodeId(l,r);break}if(a>-1)if(u>-1)switch(this.rootDelete(a),u>a&&u--,s){case Direction.BEFORE:this.insertIdIntoRoot(o,u);break;case Direction.AFTER:this.insertIdIntoRoot(o,u+1);break;case Direction.INSIDE_AT_START:this.nodeInsertAtStart(c,o);break;case Direction.INSIDE_AT_END:this.nodeInsertAtEnd(c,o);break}else{this.rootDelete(a);for(var l in this.nodes)if(this.nodes.hasOwnProperty(l)){var m=this.findNodeId(l,c);if(m>-1){switch(s){case Direction.BEFORE:this.insertIdIntoNode(l,o,m);break;case Direction.AFTER:this.insertIdIntoNode(l,o,m+1);break;case Direction.INSIDE_AT_START:this.nodeInsertAtStart(c,o);break;case Direction.INSIDE_AT_END:this.nodeInsertAtEnd(c,o);break}break}}}else if(u>-1){for(var l in this.nodes)if(this.nodes.hasOwnProperty(l)){var m=this.findNodeId(l,o);if(m>-1){this.nodeDeleteAtIndex(l,m);break}}switch(s){case Direction.BEFORE:this.insertIdIntoRoot(o,u);break;case Direction.AFTER:this.insertIdIntoRoot(o,u+1);break;case Direction.INSIDE_AT_START:this.nodeInsertAtStart(c,o);break;case Direction.INSIDE_AT_END:this.nodeInsertAtEnd(c,o);break}}else{for(var l in this.nodes)if(this.nodes.hasOwnProperty(l)){var m=this.findNodeId(l,o);if(m>-1){this.nodeDeleteAtIndex(l,m);break}}for(var l in this.nodes)if(this.nodes.hasOwnProperty(l)){var m=this.findNodeId(l,c);if(m>-1){switch(s){case Direction.BEFORE:this.insertIdIntoNode(l,o,m);break;case Direction.AFTER:this.insertIdIntoNode(l,o,m+1);break;case Direction.INSIDE_AT_START:this.nodeInsertAtStart(c,o);break;case Direction.INSIDE_AT_END:this.nodeInsertAtEnd(c,o);break}break}}}},i.prototype.swapArrayElements=function(e,r,s){var o=e[r];return e[r]=e[s],e[s]=o,e},i.prototype.rootDeleteId=function(e){var r=this.findRootId(e);r>-1&&this.rootDelete(r)},i.prototype.nodeAndSubNodesDelete=function(e){for(var r=[],s=0;s(i[i.pppppp=0]="pppppp",i[i.ppppp=1]="ppppp",i[i.pppp=2]="pppp",i[i.ppp=3]="ppp",i[i.pp=4]="pp",i[i.p=5]="p",i[i.mp=6]="mp",i[i.mf=7]="mf",i[i.f=8]="f",i[i.ff=9]="ff",i[i.fff=10]="fff",i[i.ffff=11]="ffff",i[i.fffff=12]="fffff",i[i.ffffff=13]="ffffff",i[i.sf=14]="sf",i[i.sff=15]="sff",i[i.sfp=16]="sfp",i[i.sfpp=17]="sfpp",i[i.fp=18]="fp",i[i.rf=19]="rf",i[i.rfz=20]="rfz",i[i.sfz=21]="sfz",i[i.sffz=22]="sffz",i[i.fz=23]="fz",i[i.other=24]="other",i))(DynamicEnum||{});InstantaneousDynamicExpression.staticConstructor();class DynamicsContainer{constructor(e,r){e instanceof ContinuousDynamicExpression?this.continuousDynamicExpression=e:e instanceof InstantaneousDynamicExpression&&(this.instantaneousDynamicExpression=e),this.staffNumber=r}static Compare(e,r){return e.parMultiExpression().AbsoluteTimestamp.CompareTo(r.parMultiExpression().AbsoluteTimestamp)}parMultiExpression(){if(this.continuousDynamicExpression)return this.continuousDynamicExpression.StartMultiExpression;if(this.instantaneousDynamicExpression)return this.instantaneousDynamicExpression.ParentMultiExpression}}class AbstractNotationInstruction{constructor(e){this.printObject=!0,this.parent=e}get Parent(){return this.parent}set Parent(e){this.parent=e}get PrintObject(){return this.printObject}set PrintObject(e){this.printObject=e}}class RhythmInstruction extends AbstractNotationInstruction{constructor(e,r){super(void 0),this.rhythm=e,this.numerator=e.Numerator,this.denominator=e.Denominator,this.symbolEnum=r}get Rhythm(){return this.rhythm}set Rhythm(e){this.rhythm=e}get SymbolEnum(){return this.symbolEnum}set SymbolEnum(e){this.symbolEnum=e}clone(){return new RhythmInstruction(this.rhythm.clone(),this.symbolEnum)}OperatorEquals(e){const r=this;return r===e?!0:!r||!e?!1:r.numerator===e.numerator&&r.denominator===e.denominator}OperatorNotEqual(e){return this!==e}ToString(){return"Rhythm: "+this.rhythm.toString()}}var RhythmSymbolEnum=(i=>(i[i.NONE=0]="NONE",i[i.COMMON=1]="COMMON",i[i.CUT=2]="CUT",i))(RhythmSymbolEnum||{});class MusicPartManagerIterator{constructor(e,r,s){this.currentMeasureIndex=0,this.currentPartIndex=0,this.currentVoiceEntryIndex=-1,this.currentDynamicEntryIndex=0,this.currentTempoEntryIndex=0,this.currentDynamicChangingExpressions=[],this.repetitionIterationCountDictKeys=[],this.repetitionIterationCountDictValues=[],this.currentRepetition=void 0,this.endReached=!1,this.frontReached=!1,this.currentTimeStamp=new Fraction$1(0,1),this.currentEnrolledMeasureTimestamp=new Fraction$1(0,1),this.currentRelativeInMeasureTimestamp=new Fraction$1(0,1),this.currentVerticalContainerInMeasureTimestamp=new Fraction$1(0,1),this.jumpResponsibleRepetition=void 0,this.activeDynamicExpressions=[],this.SkipInvisibleNotes=!0,this.testNoteIdx=0;try{this.frontReached=!0,this.musicSheet=e,this.currentBpm=e.userStartTempoInBPM,this.currentVoiceEntries=void 0,this.frontReached=!1;for(const o of this.musicSheet.Repetitions)this.setRepetitionIterationCount(o,1);for(let o=0;o=this.JumpResponsibleRepetition.StartIndex&&o.EndIndex<=this.JumpResponsibleRepetition.EndIndex&&this.resetRepetitionIterationCount(o)}}handleRepetitionsAtMeasureEnd(){for(let e=0,r=this.currentMeasure.LastRepetitionInstructions.length;e-1&&this.getRepetitionIterationCount(o)=this.JumpResponsibleRepetition.StartIndex&&o.EndIndex<=this.JumpResponsibleRepetition.EndIndex&&this.resetRepetitionIterationCount(o),this.repetitionIterationCountDictKeys.contains(o))){const a=o.getForwardJumpTargetForIteration(this.getRepetitionIterationCount(o));if(a>=0){this.currentMeasureIndex=a,this.currentMeasure=this.musicSheet.SourceMeasures[this.currentMeasureIndex],this.currentVoiceEntryIndex=-1,this.jumpResponsibleRepetition=o,this.forwardJumpOccurred=!0;return}a===-2&&(this.endReached=!0)}}}this.currentMeasureIndex++,this.JumpResponsibleRepetition!==void 0&&this.currentMeasureIndex>this.JumpResponsibleRepetition.EndIndex&&(this.jumpResponsibleRepetition=void 0)}doBackJump(e){this.currentMeasureIndex=e.getBackwardJumpTarget(),this.currentMeasure=this.musicSheet.SourceMeasures[this.currentMeasureIndex],this.currentVoiceEntryIndex=-1,this.incrementRepetitionIterationCount(e),this.jumpResponsibleRepetition=e,this.backJumpOccurred=!0}activateCurrentRhythmInstructions(){if(this.currentMeasure!==void 0&&this.currentMeasure.FirstInstructionsStaffEntries.length>0&&this.currentMeasure.FirstInstructionsStaffEntries[0]!==void 0){const e=this.currentMeasure.FirstInstructionsStaffEntries[0].Instructions;for(let r=0,s=e.length;r0&&(this.currentDynamicEntryIndex>=e.length||e[this.currentDynamicEntryIndex].parMultiExpression().AbsoluteTimestamp.gte(this.CurrentSourceTimestamp));)this.currentDynamicEntryIndex--;for(;this.currentDynamicEntryIndex0&&(this.currentTempoEntryIndex>=r.length||r[this.currentTempoEntryIndex].AbsoluteTimestamp.gte(this.CurrentSourceTimestamp));)this.currentTempoEntryIndex--;for(;this.currentTempoEntryIndex0){this.currentVoiceEntryIndex--;const e=this.currentMeasure.VerticalSourceStaffEntryContainers[this.currentVoiceEntryIndex];this.currentVoiceEntries=this.getVoiceEntries(e),this.currentVerticalContainerInMeasureTimestamp=e.Timestamp,this.currentTimeStamp=Fraction$1.plus(this.currentMeasure.AbsoluteTimestamp,this.currentVerticalContainerInMeasureTimestamp),this.activateCurrentDynamicOrTempoInstructions();const r=this.musicSheet.SelectionEnd;r&&this.currentTimeStamp.lt(r)&&(this.endReached=!1),this.currentMeasureIndex=this.musicSheet.SourceMeasures.indexOf(this.CurrentMeasure);return}else if(this.currentVoiceEntryIndex===0&&this.currentMeasureIndex!==0){const e=this.musicSheet.SourceMeasures[this.currentMeasureIndex-1];this.currentMeasureIndex--,this.currentMeasure=this.musicSheet.SourceMeasures[this.currentMeasureIndex];const r=e.VerticalSourceStaffEntryContainers[e.VerticalSourceStaffEntryContainers.length-1];this.currentVoiceEntries=this.getVoiceEntries(r),this.currentVerticalContainerInMeasureTimestamp=r.Timestamp,this.currentVoiceEntryIndex=e.VerticalSourceStaffEntryContainers.length-1,this.currentTimeStamp=Fraction$1.plus(this.currentMeasure.AbsoluteTimestamp,r.Timestamp),this.activateCurrentDynamicOrTempoInstructions();const s=this.musicSheet.SelectionEnd;s&&this.currentTimeStamp.lt(s)&&(this.endReached=!1);return}this.frontReached=!0,this.currentTimeStamp=new Fraction$1(-1,1)}recursiveMove(){var e,r,s,o;if(this.currentVoiceEntryIndex++,this.currentVoiceEntryIndex===0&&(this.handleRepetitionsAtMeasureBegin(),this.activateCurrentRhythmInstructions()),this.currentVoiceEntryIndex>=0&&this.currentVoiceEntryIndex=0&&this.currentMeasureIndex0){if(!e)return!0;for(let s=0,o=r.length;sr,this.openSheetMusicDisplay.Sheet.SelectionStart=this.openSheetMusicDisplay.Sheet.SourceMeasures[r].AbsoluteTimestamp,this.openSheetMusicDisplay.Sheet&&this.openSheetMusicDisplay.Sheet.SourceMeasures.length>s){const o=this.openSheetMusicDisplay.Sheet.SourceMeasures[s];this.openSheetMusicDisplay.Sheet.SelectionEnd=Fraction$1.plus(o.AbsoluteTimestamp,o.Duration)}this.iterator=this.manager.getIterator(),this.iterator.SkipInvisibleNotes=this.skipInvisibleNotes}getStaffEntryFromVoiceEntry(e){const r=e.ParentSourceStaffEntry.VerticalContainerParent.ParentMeasure.measureListIndex,s=e.ParentSourceStaffEntry.ParentStaff.idInMusicSheet;return this.graphic.findGraphicalStaffEntryFromMeasureList(s,r,e.ParentSourceStaffEntry)}updateWithTimestamp(e){const r=this.manager.absoluteEnrolledToSheetTimestamp(e),s=this.graphic.calculateXPositionFromTimestamp(r),o=s[0],a=s[1];this.updateCurrentPageFromSystem(a);const l=s[2];if(!l)return;const c=Math.max(l.parentMeasure.MeasureNumber,1);let u;for(const y of this.graphic.MeasureList[c-1])if(y){u=y;break}const m=this.graphic.calculateCursorPoints(o,a),g=m[0].y,d=m[1].y-g;if(u){if(this.updateWidthAndStyle(u.PositionAndShape,o,g,d),this.openSheetMusicDisplay.FollowCursor){const y=this.cursorElement.getBoundingClientRect().top;this.cursorElement.scrollIntoView({behavior:y<1e3?"smooth":"auto",block:this.ScrollPosition})}this.cursorElement.style.display=""}}update(){if(this.hidden||this.hidden===void 0||this.hidden===null)return;this.updateCurrentPage();const e=this.Iterator;let r=e.CurrentVisibleVoiceEntries(),s=e.CurrentMeasureIndex,o=0,a=0,l=0,c;if(r.length===0&&!e.FrontReached&&!e.EndReached&&(e.moveToPrevious(),r=e.CurrentVisibleVoiceEntries(),e.moveToNext()),e.FrontReached&&r.length===0){e.moveToNext(),r=e.CurrentVisibleVoiceEntries();const y=this.findVisibleGraphicalMeasure(e.CurrentMeasureIndex);o=y.PositionAndShape.AbsolutePosition.x,c=y.ParentMusicSystem,e.moveToPrevious()}else if(e.EndReached||!e.CurrentVoiceEntries||r.length===0){e.moveToPrevious(),r=e.CurrentVisibleVoiceEntries(),s=e.CurrentMeasureIndex;const y=this.findVisibleGraphicalMeasure(e.CurrentMeasureIndex);o=y.PositionAndShape.AbsolutePosition.x+y.PositionAndShape.Size.width,c=y.ParentMusicSystem,e.moveToNext()}else if(e.CurrentMeasure.isReducedToMultiRest){const y=this.findVisibleGraphicalMeasure(e.CurrentMeasureIndex),A=y.parentSourceMeasure.multipleRestMeasures,S=e.CurrentMeasure.multipleRestMeasureNumber/(A+1),E=y.PositionAndShape.Size.width-y.beginInstructionsWidth;o=y.PositionAndShape.AbsolutePosition.x+y.beginInstructionsWidth+S*E,c=y.ParentMusicSystem}else{const A=r.map(b=>this.getStaffEntryFromVoiceEntry(b)).sort((b,S)=>{var E,x,C,P;return((x=(E=b==null?void 0:b.PositionAndShape)==null?void 0:E.AbsolutePosition)==null?void 0:x.x)<=((P=(C=S==null?void 0:S.PositionAndShape)==null?void 0:C.AbsolutePosition)==null?void 0:P.x)?-1:1})[0];A&&(o=A.PositionAndShape.AbsolutePosition.x,c=A.parentMeasure.ParentMusicSystem)}if(!c)return;a=c.PositionAndShape.AbsolutePosition.y+c.StaffLines[0].PositionAndShape.RelativePosition.y;let u=c.PositionAndShape.AbsolutePosition.y;const m=c.StaffLines[c.StaffLines.length-1];m&&(u+=m.PositionAndShape.RelativePosition.y+m.StaffHeight),l=u-a;const g=this.findVisibleGraphicalMeasure(s);if(!g)return;const d=g.PositionAndShape;if(this.updateWidthAndStyle(d,o,a,l),this.openSheetMusicDisplay.FollowCursor&&this.cursorOptions.follow)if(this.openSheetMusicDisplay.EngravingRules.RenderSingleHorizontalStaffline)this.cursorElement.scrollIntoView({behavior:"smooth",inline:"center"});else{const y=this.cursorElement.getBoundingClientRect().top;this.cursorElement.scrollIntoView({behavior:y<1e3?"smooth":"auto",block:"center"})}this.cursorElement.style.display=""}findVisibleGraphicalMeasure(e){for(let r=0;r{s.push.apply(s,o.Notes)}),s}GNotesUnderCursor(e){const r=this.VoicesUnderCursor(e),s=[];return r.forEach(o=>{s.push(...o.Notes.map(a=>this.rules.GNote(a)))}),s}updateCurrentPage(){let e=this.iterator.currentTimeStamp;e.RealValue<0&&(e=new Fraction$1(0,0));for(const r of this.graphic.MusicPages)if(r.MusicSystems.last().GetSystemsLastTimeStamp().gt(e)){const o=r.PageNumber;return o!==this.currentPageNumber&&(this.container.removeChild(this.cursorElement),this.container=document.getElementById(this.rules.DYContainerId+o),this.container.appendChild(this.cursorElement)),this.currentPageNumber=o}return 1}get SkipInvisibleNotes(){return this.skipInvisibleNotes}set SkipInvisibleNotes(e){this.skipInvisibleNotes=e,this.iterator.SkipInvisibleNotes=e}get CursorOptions(){return this.cursorOptions}set CursorOptions(e){this.cursorOptions=e}updateCurrentPageFromSystem(e){if(e!=null&&e.Parent){const r=e.Parent.PageNumber;return r!==this.currentPageNumber&&(this.container.removeChild(this.cursorElement),this.container=document.getElementById(this.rules.DYContainerId+r),this.container.appendChild(this.cursorElement)),this.currentPageNumber=r}return 1}Dispose(){this.rules=void 0,this.openSheetMusicDisplay=void 0,this.cursorOptions=void 0}}var DrawingParametersEnum=(i=>(i.allon="allon",i.compact="compact",i.compacttight="compacttight",i.default="default",i.leadsheet="leadsheet",i.preview="preview",i.thumbnail="thumbnail",i))(DrawingParametersEnum||{}),CursorType=(i=>(i[i.Standard=0]="Standard",i[i.ThinLeft=1]="ThinLeft",i[i.ShortThinTopLeft=2]="ShortThinTopLeft",i[i.CurrentArea=3]="CurrentArea",i[i.CurrentAreaLeft=4]="CurrentAreaLeft",i))(CursorType||{}),AlignRestOption=(i=>(i[i.Never=0]="Never",i[i.Always=1]="Always",i[i.Auto=2]="Auto",i))(AlignRestOption||{}),FillEmptyMeasuresWithWholeRests=(i=>(i[i.No=0]="No",i[i.YesVisible=1]="YesVisible",i[i.YesInvisible=2]="YesInvisible",i))(FillEmptyMeasuresWithWholeRests||{}),BackendType=(i=>(i[i.SVG=0]="SVG",i[i.Canvas=1]="Canvas",i))(BackendType||{}),SkyBottomLineBatchCalculatorBackendType=(i=>(i[i.Plain=0]="Plain",i[i.WebGL=1]="WebGL",i))(SkyBottomLineBatchCalculatorBackendType||{});class OSMDOptions{static OSMDOptionsStandard(){return{autoResize:!0,backend:"svg",drawingParameters:DrawingParametersEnum.default}}static BackendTypeFromString(e){return e&&e.toLowerCase()==="canvas"?1:0}}class IXmlElement{constructor(e){if(this.hasAttributes=!1,!e)throw new Error("IXmlElement: expected Element, got undefined");this.elem=e,this.name=e.nodeName.toLowerCase(),e.hasAttributes()&&(this.hasAttributes=!0,this.firstAttribute=e.attributes[0]),this.hasElements=e.hasChildNodes(),e.childNodes.length===1&&e.childNodes[0].nodeType===Node.TEXT_NODE?this.value=e.childNodes[0].nodeValue:this.value=""}attribute(e){return this.elem.attributes.getNamedItem(e)}attributes(){if(!this.attrs){const e=this.elem.attributes,r=[];for(let s=0;s0){let s;for(let o=0,a=r.length;oo?1:0}getFirstNonNullStaffEntry(){for(let e=0,r=this.staffEntries.length;e(i[i.BaseWritingColor=0]="BaseWritingColor",i[i.FollowingCursor=1]="FollowingCursor",i[i.AlternativeFollowingCursor=2]="AlternativeFollowingCursor",i[i.PlaybackCursor=3]="PlaybackCursor",i[i.Highlighted=4]="Highlighted",i[i.ErrorUnderlay=5]="ErrorUnderlay",i[i.Selected=6]="Selected",i[i.SelectionSymbol=7]="SelectionSymbol",i[i.DebugColor1=8]="DebugColor1",i[i.DebugColor2=9]="DebugColor2",i[i.DebugColor3=10]="DebugColor3",i[i.SplitScreenDivision=11]="SplitScreenDivision",i[i.GreyTransparentOverlay=12]="GreyTransparentOverlay",i[i.MarkedArea1=13]="MarkedArea1",i[i.MarkedArea2=14]="MarkedArea2",i[i.MarkedArea3=15]="MarkedArea3",i[i.MarkedArea4=16]="MarkedArea4",i[i.MarkedArea5=17]="MarkedArea5",i[i.MarkedArea6=18]="MarkedArea6",i[i.MarkedArea7=19]="MarkedArea7",i[i.MarkedArea8=20]="MarkedArea8",i[i.MarkedArea9=21]="MarkedArea9",i[i.MarkedArea10=22]="MarkedArea10",i[i.Comment1=23]="Comment1",i[i.Comment2=24]="Comment2",i[i.Comment3=25]="Comment3",i[i.Comment4=26]="Comment4",i[i.Comment5=27]="Comment5",i[i.Comment6=28]="Comment6",i[i.Comment7=29]="Comment7",i[i.Comment8=30]="Comment8",i[i.Comment9=31]="Comment9",i[i.Comment10=32]="Comment10",i))(OutlineAndFillStyleEnum||{});const OUTLINE_AND_FILL_STYLE_DICT=new Dictionary;OUTLINE_AND_FILL_STYLE_DICT.setValue(0,"Thistle");OUTLINE_AND_FILL_STYLE_DICT.setValue(1,"Aqua");OUTLINE_AND_FILL_STYLE_DICT.setValue(2,"Azure");OUTLINE_AND_FILL_STYLE_DICT.setValue(3,"Bisque");OUTLINE_AND_FILL_STYLE_DICT.setValue(4,"CadetBlue");OUTLINE_AND_FILL_STYLE_DICT.setValue(5,"DarkBlue");OUTLINE_AND_FILL_STYLE_DICT.setValue(6,"DarkGoldenRod");OUTLINE_AND_FILL_STYLE_DICT.setValue(7,"BlanchedAlmond");OUTLINE_AND_FILL_STYLE_DICT.setValue(8,"Chartreuse");OUTLINE_AND_FILL_STYLE_DICT.setValue(9,"DarkGreen");OUTLINE_AND_FILL_STYLE_DICT.setValue(10,"DarkOrange");OUTLINE_AND_FILL_STYLE_DICT.setValue(11,"FireBrick");OUTLINE_AND_FILL_STYLE_DICT.setValue(12,"DarkSalmon");OUTLINE_AND_FILL_STYLE_DICT.setValue(13,"DarkSeaGreen");OUTLINE_AND_FILL_STYLE_DICT.setValue(14,"DarkOrchid");OUTLINE_AND_FILL_STYLE_DICT.setValue(15,"Aquamarine");OUTLINE_AND_FILL_STYLE_DICT.setValue(16,"DarkKhaki");OUTLINE_AND_FILL_STYLE_DICT.setValue(17,"ForestGreen");OUTLINE_AND_FILL_STYLE_DICT.setValue(18,"AliceBlue");OUTLINE_AND_FILL_STYLE_DICT.setValue(19,"DeepPink");OUTLINE_AND_FILL_STYLE_DICT.setValue(20,"Coral");OUTLINE_AND_FILL_STYLE_DICT.setValue(21,"DarkOliveGreen");OUTLINE_AND_FILL_STYLE_DICT.setValue(22,"Chocolate");OUTLINE_AND_FILL_STYLE_DICT.setValue(23,"DodgerBlue");OUTLINE_AND_FILL_STYLE_DICT.setValue(24,"Blue");OUTLINE_AND_FILL_STYLE_DICT.setValue(25,"Beige");OUTLINE_AND_FILL_STYLE_DICT.setValue(26,"Crimson");OUTLINE_AND_FILL_STYLE_DICT.setValue(27,"Fuchsia");OUTLINE_AND_FILL_STYLE_DICT.setValue(28,"Brown");OUTLINE_AND_FILL_STYLE_DICT.setValue(29,"BlanchedAlmond");OUTLINE_AND_FILL_STYLE_DICT.setValue(30,"CornflowerBlue");OUTLINE_AND_FILL_STYLE_DICT.setValue(31,"Cornsilk");OUTLINE_AND_FILL_STYLE_DICT.setValue(32,"DarkGrey");var GraphicalLayers=(i=>(i[i.Background=0]="Background",i[i.Highlight=1]="Highlight",i[i.MeasureError=2]="MeasureError",i[i.SelectionSymbol=3]="SelectionSymbol",i[i.Cursor=4]="Cursor",i[i.PSI_Debug=5]="PSI_Debug",i[i.Notes=6]="Notes",i[i.Comment=7]="Comment",i[i.Debug_above=8]="Debug_above",i))(GraphicalLayers||{}),NoteState=(i=>(i[i.Normal=0]="Normal",i[i.Selected=1]="Selected",i[i.Follow_Confirmed=2]="Follow_Confirmed",i[i.QFeedback_NotFound=3]="QFeedback_NotFound",i[i.QFeedback_OK=4]="QFeedback_OK",i[i.QFeedback_Perfect=5]="QFeedback_Perfect",i[i.Debug1=6]="Debug1",i[i.Debug2=7]="Debug2",i[i.Debug3=8]="Debug3",i))(NoteState||{}),AutoColorSet=(i=>(i.C="#d82c6b",i.D="#F89D15",i.E="#FFE21A",i.F="#4dbd5c",i.G="#009D96",i.A="#43469d",i.B="#76429c",i.Rest="#000000",i))(AutoColorSet||{});class GraphicalLine{constructor(e,r,s=0,o=OutlineAndFillStyleEnum.BaseWritingColor,a=void 0){this.start=e,this.end=r,this.width=s,this.styleId=o,this.colorHex=a}get Start(){return this.start}set Start(e){this.start=e}get End(){return this.end}set End(e){this.end=e}get Width(){return this.width}set Width(e){this.width=e}}class PointF2D{constructor(e=0,r=0){this.x=0,this.y=0,this.x=e,this.y=r}static get Empty(){return new PointF2D}static pointsAreEqual(e,r){return e.x===r.x&&e.y===r.y}ToString(){return"["+this.x+", "+this.y+"]"}}var NoteEnum=(i=>(i[i.C=0]="C",i[i.D=2]="D",i[i.E=4]="E",i[i.F=5]="F",i[i.G=7]="G",i[i.A=9]="A",i[i.B=11]="B",i))(NoteEnum||{}),AccidentalEnum=(i=>(i[i.SHARP=0]="SHARP",i[i.FLAT=1]="FLAT",i[i.NONE=2]="NONE",i[i.NATURAL=3]="NATURAL",i[i.DOUBLESHARP=4]="DOUBLESHARP",i[i.DOUBLEFLAT=5]="DOUBLEFLAT",i[i.TRIPLESHARP=6]="TRIPLESHARP",i[i.TRIPLEFLAT=7]="TRIPLEFLAT",i[i.QUARTERTONESHARP=8]="QUARTERTONESHARP",i[i.QUARTERTONEFLAT=9]="QUARTERTONEFLAT",i[i.SLASHFLAT=10]="SLASHFLAT",i[i.THREEQUARTERSSHARP=11]="THREEQUARTERSSHARP",i[i.THREEQUARTERSFLAT=12]="THREEQUARTERSFLAT",i[i.SLASHQUARTERSHARP=13]="SLASHQUARTERSHARP",i[i.SLASHSHARP=14]="SLASHSHARP",i[i.DOUBLESLASHFLAT=15]="DOUBLESLASHFLAT",i[i.SORI=16]="SORI",i[i.KORON=17]="KORON",i))(AccidentalEnum||{});const _Pitch=class{constructor(i,e,r,s=void 0,o=!1){this.accidental=2,this.fundamentalNote=i,this.octave=e,this.accidental=r,this.accidentalXml=s,this.halfTone=i+(e+_Pitch.octXmlDiff)*12+_Pitch.HalfTonesFromAccidental(r),o||(this.frequency=_Pitch.calcFrequency(this),this.nextFrequency=_Pitch.calcFrequency(this,"next"),this.prevFrequency=_Pitch.calcFrequency(this,"prev"))}static getNoteEnumString(i){switch(i){case 0:return"C";case 2:return"D";case 4:return"E";case 5:return"F";case 7:return"G";case 9:return"A";case 11:return"B";default:return""}}static lineShiftFromNoteEnum(i,e){if(e===0)return[i,0];const r=_Pitch.pitchEnumValues,s=r.indexOf(i);let o=0,a=(s+e)%r.length;return s+e>r.length-1&&(o=1),a<0&&(a=r.length+a,o=-1),[r[a],o]}static CalculateTransposedHalfTone(i,e){const r=i.fundamentalNote+i.AccidentalHalfTones+e;return _Pitch.WrapAroundCheck(r,12)}static WrapAroundCheck(i,e){let r=0;for(;i<0;)i+=e,r--;for(;i>=e;)i-=e,r++;return{overflow:r,halftone:i}}static calcFrequency(i,e){const r=window.DYProjectName==="musicScore"?{"-2":[11,3],"-7":[12],"-9":[5],12:[33,34,35,37,38,2],24:[39]}:{"-2":[4,12,23],"-7":[13],"-9":[6],12:[5,116,55]};let s=0,o;if(i instanceof _Pitch){const m=i;s=m.octave-1,o=m.fundamentalNote-9+m.AccidentalHalfTones}else typeof i=="number"&&(o=i-57);const a=window.DYSubjectId;let l=0;if(window.DYEnvironment==="COLEXIU"&&(r[12]=[120]),window.xmlNeedAdjustVoice){for(const m in r)if(Object.prototype.hasOwnProperty.call(r,m)&&r[m].includes(a)){l=parseFloat(m);break}}let c=o+l;return e==="next"&&c++,e==="prev"&&c--,442*Math.pow(2,s)*Math.pow(2,c/12)}static calcFractionalKey(i){return Math.log(i/440)/Math.LN10*_Pitch.halftoneFactor+57}static fromFrequency(i){const e=_Pitch.calcFractionalKey(i)+.5,r=Math.floor(e/12)-_Pitch.octXmlDiff,s=Math.floor(e)%12;let o=s,a=2;return this.pitchEnumValues.indexOf(o)===-1&&(o=s-1,a=0),new _Pitch(o,r,a)}static fromHalftone(i){const e=Math.floor(i/12)-_Pitch.octXmlDiff,r=i%12;let s=r,o=2;return this.pitchEnumValues.indexOf(s)===-1&&(s=r-1,o=0),new _Pitch(s,e,o)}static ceiling(i){i=i%12;let e=i;return this.pitchEnumValues.indexOf(e)===-1&&(e=i+1),e}static floor(i){i=i%12;let e=i;return this.pitchEnumValues.indexOf(e)===-1&&(e=i-1),e}static HalfTonesFromAccidental(i){switch(i){case 2:return 0;case 0:return 1;case 1:return-1;case 3:return 0;case 4:return 2;case 5:return-2;case 6:return 3;case 7:return-3;case 8:return .5;case 9:return-.5;case 10:return-.51;case 11:return 1.5;case 12:return-1.5;case 13:return .0013;case 14:return .0014;case 15:return-.0015;case 16:return .0016;case 17:return .0017;default:throw new Error("Unhandled AccidentalEnum value")}}static AccidentalFromHalfTones(i){switch(i){case 0:return 2;case 1:return 0;case-1:return 1;case 2:return 4;case-2:return 5;case 3:return 6;case-3:return 7;case .5:return 8;case-.5:return 9;case 1.5:return 11;case-1.5:return 12;default:return i>0&&i<1?8:i<0&&i>-1?9:8}}static accidentalVexflow(i){let e;switch(i){case 3:e="n";break;case 1:e="b";break;case 0:e="#";break;case 4:e="##";break;case 6:e="###";break;case 5:e="bb";break;case 7:e="bbs";break;case 8:e="+";break;case 9:e="d";break;case 10:e="bs";break;case 11:e="++";break;case 12:e="db";break;case 13:e="+-";break;case 14:e="++-";break;case 15:e="bss";break;case 16:e="o";break;case 17:e="k";break}return e}get AccidentalHalfTones(){return _Pitch.HalfTonesFromAccidental(this.accidental)}get Octave(){return this.octave}get FundamentalNote(){return this.fundamentalNote}get Accidental(){return this.accidental}get AccidentalXml(){return this.accidentalXml}get Frequency(){return this.frequency}static get OctaveXmlDifference(){return _Pitch.octXmlDiff}getHalfTone(){return this.halfTone}getTransposedPitch(i){if(i>12)throw new Error("rewrite this method to handle bigger octave changes or don't use is with bigger octave changes!");return i>0?this.getHigherPitchByTransposeFactor(i):i<0?this.getLowerPitchByTransposeFactor(-i):this}DoEnharmonicChange(){switch(this.accidental){case 1:case 5:this.fundamentalNote=this.getPreviousFundamentalNote(this.fundamentalNote),this.accidental=_Pitch.AccidentalFromHalfTones(this.halfTone-(this.fundamentalNote+(this.octave+_Pitch.octXmlDiff)*12));break;case 0:case 4:this.fundamentalNote=this.getNextFundamentalNote(this.fundamentalNote),this.accidental=_Pitch.AccidentalFromHalfTones(this.halfTone-(this.fundamentalNote+(this.octave+_Pitch.octXmlDiff)*12));break;default:return}}ToString(){let i=_Pitch.accidentalVexflow(this.accidental);return i||(i=""),"Key: "+_Pitch.getNoteEnumString(this.fundamentalNote)+i+", Note: "+this.fundamentalNote+", octave: "+this.octave.toString()}ToStringShort(i=0){let e=_Pitch.accidentalVexflow(this.accidental);e||(e="");const r=this.octave+i;return _Pitch.getNoteEnumString(this.fundamentalNote)+e+r}get ToStringShortGet(){return this.ToStringShort(0)}OperatorEquals(i){const e=this;return!e||!i?!1:e.FundamentalNote===i.FundamentalNote&&e.Octave===i.Octave&&e.Accidental===i.Accidental}OperatorNotEqual(i){return this!==i}OperatorFundamentalGreaterThan(i){const e=this;return e.Octave===i.Octave?e.FundamentalNote>i.FundamentalNote:e.Octave>i.Octave}OperatorFundamentalLessThan(i){const e=this;return e.Octave===i.Octave?e.FundamentalNote_Pitch.pitchEnumValues.length-1?(s=_Pitch.pitchEnumValues[e+i-_Pitch.pitchEnumValues.length],r++):s=_Pitch.pitchEnumValues[e+i],new _Pitch(s,r,2)}getLowerPitchByTransposeFactor(i){const e=_Pitch.pitchEnumValues.indexOf(this.fundamentalNote);let r=this.octave,s;return e-i<0?(s=_Pitch.pitchEnumValues[_Pitch.pitchEnumValues.length+e-i],r--):s=_Pitch.pitchEnumValues[e-i],new _Pitch(s,r,2)}getNextFundamentalNote(i){let e=_Pitch.pitchEnumValues.indexOf(i);return e=(e+1)%_Pitch.pitchEnumValues.length,_Pitch.pitchEnumValues[e]}getPreviousFundamentalNote(i){const e=_Pitch.pitchEnumValues.indexOf(i);return e>0?_Pitch.pitchEnumValues[e-1]:_Pitch.pitchEnumValues[_Pitch.pitchEnumValues.length-1]}};let Pitch=_Pitch;Pitch.pitchEnumValues=[0,2,4,5,7,9,11];Pitch.halftoneFactor=12/(Math.LN2/Math.LN10);Pitch.octXmlDiff=3;class ClefInstruction extends AbstractNotationInstruction{constructor(e=0,r=0,s=2){super(void 0),this.clefType=0,this.line=2,this.octaveOffset=0,this.line=s,this.clefType=e,this.octaveOffset=r,this.calcParameters()}static getDefaultClefFromMidiInstrument(e){switch(e){case 0:return new ClefInstruction(1,0,4);case 33:return new ClefInstruction(1,0,4);case 34:return new ClefInstruction(1,0,4);case 35:return new ClefInstruction(1,0,4);case 36:return new ClefInstruction(1,0,4);case 37:return new ClefInstruction(1,0,4);case 38:return new ClefInstruction(1,0,4);case 39:return new ClefInstruction(1,0,4);case 43:return new ClefInstruction(1,0,4);default:return new ClefInstruction(0,0,2)}}static getAllPossibleClefs(){const e=[];for(let r=0;r<=2;r++){const s=new ClefInstruction(0,r,2);e.push(s)}for(let r=-2;r<=0;r++){const s=new ClefInstruction(1,r,4);e.push(s)}return e}static isSupportedClef(e){switch(e){case 0:case 1:case 2:case 3:case 4:return!0;default:return!1}}get ClefType(){return this.clefType}set ClefType(e){this.clefType=e}get Line(){return this.line}set Line(e){this.line=e}get OctaveOffset(){return this.octaveOffset}set OctaveOffset(e){this.octaveOffset=e}get ClefPitch(){return this.clefPitch}set ClefPitch(e){this.clefPitch=e}get ReferenceCyPosition(){return this.referenceCyPosition}set ReferenceCyPosition(e){this.referenceCyPosition=e}Equals(e){return this===e?!0:!this||!e?!1:this.clefPitch===e.clefPitch&&this.Line===e.Line}NotEqual(e){return!this.Equals(e)}ToString(){return"ClefType: "+this.clefType}calcParameters(){switch(this.clefType){case 0:this.clefPitch=new Pitch(NoteEnum.G,1+this.octaveOffset,AccidentalEnum.NONE),this.referenceCyPosition=5-this.line+2;break;case 1:this.clefPitch=new Pitch(NoteEnum.F,0+this.octaveOffset,AccidentalEnum.NONE),this.referenceCyPosition=5-this.line+1.5;break;case 2:this.clefPitch=new Pitch(NoteEnum.C,1+this.octaveOffset,AccidentalEnum.NONE),this.referenceCyPosition=5-this.line;break;case 3:this.clefPitch=new Pitch(NoteEnum.C,2,AccidentalEnum.NONE),this.referenceCyPosition=2;break;case 4:this.clefPitch=new Pitch(NoteEnum.G,0,AccidentalEnum.NONE),this.referenceCyPosition=0;break;default:throw new ArgumentOutOfRangeException("clefType")}}}var ClefEnum=(i=>(i[i.G=0]="G",i[i.F=1]="F",i[i.C=2]="C",i[i.percussion=3]="percussion",i[i.TAB=4]="TAB",i))(ClefEnum||{}),MidiInstrument=(i=>(i[i.None=-1]="None",i[i.Acoustic_Grand_Piano=0]="Acoustic_Grand_Piano",i[i.Bright_Acoustic_Piano=1]="Bright_Acoustic_Piano",i[i.Electric_Grand_Piano=2]="Electric_Grand_Piano",i[i.Honky_tonk_Piano=3]="Honky_tonk_Piano",i[i.Electric_Piano_1=4]="Electric_Piano_1",i[i.Electric_Piano_2=5]="Electric_Piano_2",i[i.Harpsichord=6]="Harpsichord",i[i.Clavinet=7]="Clavinet",i[i.Celesta=8]="Celesta",i[i.Glockenspiel=9]="Glockenspiel",i[i.Music_Box=10]="Music_Box",i[i.Vibraphone=11]="Vibraphone",i[i.Marimba=12]="Marimba",i[i.Xylophone=13]="Xylophone",i[i.Tubular_Bells=14]="Tubular_Bells",i[i.Dulcimer=15]="Dulcimer",i[i.Drawbar_Organ=16]="Drawbar_Organ",i[i.Percussive_Organ=17]="Percussive_Organ",i[i.Rock_Organ=18]="Rock_Organ",i[i.Church_Organ=19]="Church_Organ",i[i.Reed_Organ=20]="Reed_Organ",i[i.Accordion=21]="Accordion",i[i.Harmonica=22]="Harmonica",i[i.Tango_Accordion=23]="Tango_Accordion",i[i.Acoustic_Guitar_nylon=24]="Acoustic_Guitar_nylon",i[i.Acoustic_Guitar_steel=25]="Acoustic_Guitar_steel",i[i.Electric_Guitar_jazz=26]="Electric_Guitar_jazz",i[i.Electric_Guitar_clean=27]="Electric_Guitar_clean",i[i.Electric_Guitar_muted=28]="Electric_Guitar_muted",i[i.Overdriven_Guitar=29]="Overdriven_Guitar",i[i.Distortion_Guitar=30]="Distortion_Guitar",i[i.Guitar_harmonics=31]="Guitar_harmonics",i[i.Acoustic_Bass=32]="Acoustic_Bass",i[i.Electric_Bass_finger=33]="Electric_Bass_finger",i[i.Electric_Bass_pick=34]="Electric_Bass_pick",i[i.Fretless_Bass=35]="Fretless_Bass",i[i.Slap_Bass_1=36]="Slap_Bass_1",i[i.Slap_Bass_2=37]="Slap_Bass_2",i[i.Synth_Bass_1=38]="Synth_Bass_1",i[i.Synth_Bass_2=39]="Synth_Bass_2",i[i.Violin=40]="Violin",i[i.Viola=41]="Viola",i[i.Cello=42]="Cello",i[i.Contrabass=43]="Contrabass",i[i.Tremolo_Strings=44]="Tremolo_Strings",i[i.Pizzicato_Strings=45]="Pizzicato_Strings",i[i.Orchestral_Harp=46]="Orchestral_Harp",i[i.Timpani=47]="Timpani",i[i.String_Ensemble_1=48]="String_Ensemble_1",i[i.String_Ensemble_2=49]="String_Ensemble_2",i[i.Synth_Strings_1=50]="Synth_Strings_1",i[i.Synth_Strings_2=51]="Synth_Strings_2",i[i.Choir_Aahs=52]="Choir_Aahs",i[i.Voice_Oohs=53]="Voice_Oohs",i[i.Synth_Voice=54]="Synth_Voice",i[i.Orchestra_Hit=55]="Orchestra_Hit",i[i.Trumpet=56]="Trumpet",i[i.Trombone=57]="Trombone",i[i.Tuba=58]="Tuba",i[i.Muted_Trumpet=59]="Muted_Trumpet",i[i.French_Horn=60]="French_Horn",i[i.Brass_Section=61]="Brass_Section",i[i.Synth_Brass_1=62]="Synth_Brass_1",i[i.Synth_Brass_2=63]="Synth_Brass_2",i[i.Soprano_Sax=64]="Soprano_Sax",i[i.Alto_Sax=65]="Alto_Sax",i[i.Tenor_Sax=66]="Tenor_Sax",i[i.Baritone_Sax=67]="Baritone_Sax",i[i.Oboe=68]="Oboe",i[i.English_Horn=69]="English_Horn",i[i.Bassoon=70]="Bassoon",i[i.Clarinet=71]="Clarinet",i[i.Piccolo=72]="Piccolo",i[i.Flute=73]="Flute",i[i.Recorder=74]="Recorder",i[i.Pan_Flute=75]="Pan_Flute",i[i.Blown_Bottle=76]="Blown_Bottle",i[i.Shakuhachi=77]="Shakuhachi",i[i.Whistle=78]="Whistle",i[i.Ocarina=79]="Ocarina",i[i.Lead_1_square=80]="Lead_1_square",i[i.Lead_2_sawtooth=81]="Lead_2_sawtooth",i[i.Lead_3_calliope=82]="Lead_3_calliope",i[i.Lead_4_chiff=83]="Lead_4_chiff",i[i.Lead_5_charang=84]="Lead_5_charang",i[i.Lead_6_voice=85]="Lead_6_voice",i[i.Lead_7_fifths=86]="Lead_7_fifths",i[i.Lead_8_bass_lead=87]="Lead_8_bass_lead",i[i.Pad_1_new_age=88]="Pad_1_new_age",i[i.Pad_2_warm=89]="Pad_2_warm",i[i.Pad_3_polysynth=90]="Pad_3_polysynth",i[i.Pad_4_choir=91]="Pad_4_choir",i[i.Pad_5_bowed=92]="Pad_5_bowed",i[i.Pad_6_metallic=93]="Pad_6_metallic",i[i.Pad_7_halo=94]="Pad_7_halo",i[i.Pad_8_sweep=95]="Pad_8_sweep",i[i.FX_1_rain=96]="FX_1_rain",i[i.FX_2_soundtrack=97]="FX_2_soundtrack",i[i.FX_3_crystal=98]="FX_3_crystal",i[i.FX_4_atmosphere=99]="FX_4_atmosphere",i[i.FX_5_brightness=100]="FX_5_brightness",i[i.FX_6_goblins=101]="FX_6_goblins",i[i.FX_7_echoes=102]="FX_7_echoes",i[i.FX_8_scifi=103]="FX_8_scifi",i[i.Sitar=104]="Sitar",i[i.Banjo=105]="Banjo",i[i.Shamisen=106]="Shamisen",i[i.Koto=107]="Koto",i[i.Kalimba=108]="Kalimba",i[i.Bag_pipe=109]="Bag_pipe",i[i.Fiddle=110]="Fiddle",i[i.Shanai=111]="Shanai",i[i.Tinkle_Bell=112]="Tinkle_Bell",i[i.Agogo=113]="Agogo",i[i.Steel_Drums=114]="Steel_Drums",i[i.Woodblock=115]="Woodblock",i[i.Taiko_Drum=116]="Taiko_Drum",i[i.Melodic_Tom=117]="Melodic_Tom",i[i.Synth_Drum=118]="Synth_Drum",i[i.Reverse_Cymbal=119]="Reverse_Cymbal",i[i.Guitar_Fret_Noise=120]="Guitar_Fret_Noise",i[i.Breath_Noise=121]="Breath_Noise",i[i.Seashore=122]="Seashore",i[i.Bird_Tweet=123]="Bird_Tweet",i[i.Telephone_Ring=124]="Telephone_Ring",i[i.Helicopter=125]="Helicopter",i[i.Applause=126]="Applause",i[i.Gunshot=127]="Gunshot",i[i.Percussion=128]="Percussion",i))(MidiInstrument||{});const _KeyInstruction=class extends AbstractNotationInstruction{constructor(i=void 0,e=0,r=0){super(i),this.isTransposedBy=0,this.Key=e,this.keyTypeOriginal=e,this.mode=r,this.alteratedNotes=this.calcAlteratedNotes()}static copy(i){const e=new _KeyInstruction(i.parent,i.Key,i.Mode);return e.keyTypeOriginal=i.keyTypeOriginal,e}static getAllPossibleMajorKeyInstructions(){const i=[];for(let e=-7;e<7;e++){const r=new _KeyInstruction(void 0,e,0);i.push(r)}return i}get Key(){return this.keyType}set Key(i){this.keyType=i,this.alteratedNotes=this.calcAlteratedNotes()}get Mode(){return this.mode}set Mode(i){this.mode=i}get AlteratedNotes(){return this.alteratedNotes}calcAlteratedNotes(){const i=[];if(this.keyType>0)for(let e=0;e=0}getAlterationForPitch(i){return this.keyType>0&&this.alteratedNotes.indexOf(i.FundamentalNote)<=this.keyType?AccidentalEnum.SHARP:this.keyType<0&&this.alteratedNotes.indexOf(i.FundamentalNote)<=Math.abs(this.keyType)?AccidentalEnum.FLAT:AccidentalEnum.NONE}ToString(){return"Key: "+this.keyType+this.mode}OperatorEquals(i){const e=this;return e===i?!0:!e||!i?!1:e.Key===i.Key&&e.Mode===i.Mode}OperatorNotEqual(i){return!this.OperatorEquals(i)}};let KeyInstruction=_KeyInstruction;KeyInstruction.sharpPositionList=[NoteEnum.F,NoteEnum.C,NoteEnum.G,NoteEnum.D,NoteEnum.A,NoteEnum.E,NoteEnum.B];KeyInstruction.flatPositionList=[NoteEnum.B,NoteEnum.E,NoteEnum.A,NoteEnum.D,NoteEnum.G,NoteEnum.C,NoteEnum.F];var KeyEnum=(i=>(i[i.major=0]="major",i[i.minor=1]="minor",i[i.none=2]="none",i[i.dorian=3]="dorian",i[i.phrygian=4]="phrygian",i[i.lydian=5]="lydian",i[i.mixolydian=6]="mixolydian",i[i.aeolian=7]="aeolian",i[i.ionian=8]="ionian",i[i.locrian=9]="locrian",i))(KeyEnum||{});class SizeF2D{constructor(e=0,r=0){this.width=e,this.height=r}}class RectangleF2D{constructor(e,r,s,o){this.x=0,this.y=0,this.width=0,this.height=0,this.x=e,this.y=r,this.width=s,this.height=o}static createFromLocationAndSize(e,r){return new RectangleF2D(e.x,e.y,r.width,r.height)}get Location(){return new PointF2D(this.x,this.y)}get Size(){return new SizeF2D(this.width,this.height)}}class AClassHierarchyTrackable{isInstanceOfClass(e){let r=this.constructor.prototype;for(;r;){if(e===r.constructor.name)return!0;r=r.__proto__}return!1}}class GraphicalObject extends AClassHierarchyTrackable{get PositionAndShape(){return this.boundingBox}set PositionAndShape(e){this.boundingBox=e}}class Clickable extends GraphicalObject{}let BoundingBox$1=class{constructor(e=void 0,r=void 0,s=!1){this.isSymbol=!1,this.relativePositionHasBeenSet=!1,this.xBordersHaveBeenSet=!1,this.yBordersHaveBeenSet=!1,this.absolutePosition=new PointF2D,this.relativePosition=new PointF2D,this.size=new SizeF2D,this.marginSize=new SizeF2D,this.upperLeftCorner=new PointF2D,this.upperLeftMarginCorner=new PointF2D,this.borderLeft=0,this.borderRight=0,this.borderTop=0,this.borderBottom=0,this.borderMarginLeft=0,this.borderMarginRight=0,this.borderMarginTop=0,this.borderMarginBottom=0,this.childElements=[],this.parent=r,this.dataObject=e,this.isSymbol=s,this.xBordersHaveBeenSet=!1,this.yBordersHaveBeenSet=!1,r&&(this.Parent=r)}get RelativePositionHasBeenSet(){return this.relativePositionHasBeenSet}get XBordersHaveBeenSet(){return this.xBordersHaveBeenSet}set XBordersHaveBeenSet(e){this.xBordersHaveBeenSet=e}get YBordersHaveBeenSet(){return this.yBordersHaveBeenSet}set YBordersHaveBeenSet(e){this.yBordersHaveBeenSet=e}get AbsolutePosition(){return this.absolutePosition}set AbsolutePosition(e){this.absolutePosition=e}get RelativePosition(){return this.relativePosition}set RelativePosition(e){this.relativePosition=e,this.relativePositionHasBeenSet=!0}get Size(){return this.size}set Size(e){this.size=e}get MarginSize(){return this.marginSize}get UpperLeftCorner(){return this.upperLeftCorner}get UpperLeftMarginCorner(){return this.upperLeftMarginCorner}get BorderLeft(){return this.borderLeft}set BorderLeft(e){this.borderLeft=e,this.calculateRectangle()}get BorderRight(){return this.borderRight}set BorderRight(e){this.borderRight=e,this.calculateRectangle()}get BorderTop(){return this.borderTop}set BorderTop(e){this.borderTop=e,this.calculateRectangle()}get BorderBottom(){return this.borderBottom}set BorderBottom(e){this.borderBottom=e,this.calculateRectangle()}get BorderMarginLeft(){return this.borderMarginLeft>this.borderLeft?this.borderLeft:this.borderMarginLeft}set BorderMarginLeft(e){this.borderMarginLeft=e,this.calculateMarginRectangle()}get BorderMarginRight(){return this.borderMarginRightthis.borderTop?this.borderTop:this.borderMarginTop}set BorderMarginTop(e){this.borderMarginTop=e,this.calculateMarginRectangle()}get BorderMarginBottom(){return this.borderMarginBottom-1&&this.parent.ChildElements.splice(l,1)}this.parent=e,((s=(r=this.parent)==null?void 0:r.ChildElements)==null?void 0:s.indexOf(this))>-1?loglevelExports.error("BoundingBox of "+this.dataObject.constructor.name+" already in children list of "+this.parent.dataObject.constructor.name+"'s BoundingBox"):(a=(o=this.parent)==null?void 0:o.ChildElements)==null||a.push(this)}get DataObject(){return this.dataObject}get Center(){return new PointF2D(this.RelativePosition.x+(this.BorderMarginRight+this.BorderMarginLeft),this.RelativePosition.y+(this.BorderMarginBottom+this.BorderMarginTop))}setAbsolutePositionFromParent(){this.parent?(this.absolutePosition.x=this.parent.AbsolutePosition.x+this.relativePosition.x,this.absolutePosition.y=this.parent.AbsolutePosition.y+this.relativePosition.y):this.absolutePosition=this.relativePosition}calculateAbsolutePosition(){this.absolutePosition.x=this.relativePosition.x,this.absolutePosition.y=this.relativePosition.y;let e=this.parent;for(;e;)this.absolutePosition.x+=e.relativePosition.x,this.absolutePosition.y+=e.relativePosition.y,e=e.parent}calculateAbsolutePositionsRecursiveWithoutTopelement(){this.absolutePosition.x=0,this.absolutePosition.y=0;for(let e=0,r=this.ChildElements.length;e.001;break;case 2:case 3:o=this.relativePosition.y,e.calculateMarginPositionAlongDirection(this,r),a=Math.abs(o-this.relativePosition.y)>.001;break;default:throw new ArgumentOutOfRangeException("direction")}while(a)}collisionDetection(e){const r=Math.min(this.AbsolutePosition.x+this.borderRight,e.absolutePosition.x+e.borderRight)-Math.max(this.AbsolutePosition.x+this.borderLeft,e.absolutePosition.x+e.borderLeft),s=Math.min(this.AbsolutePosition.y+this.borderBottom,e.absolutePosition.y+e.borderBottom)-Math.max(this.AbsolutePosition.y+this.borderTop,e.absolutePosition.y+e.borderTop);return r>0&&s>0}liesInsideBorders(e){const r=this.AbsolutePosition.x+this.borderLeft<=e.absolutePosition.x+e.borderLeft&&e.absolutePosition.x+e.borderLeft<=this.AbsolutePosition.x+this.borderRight,s=this.AbsolutePosition.x+this.borderLeft<=e.absolutePosition.x+e.borderRight&&e.absolutePosition.x+e.borderRight<=this.AbsolutePosition.x+this.borderRight;if(r&&s){const o=this.AbsolutePosition.y+this.borderTop<=e.absolutePosition.y+e.borderTop&&e.absolutePosition.y+e.borderTop<=this.AbsolutePosition.y+this.borderBottom,a=this.AbsolutePosition.y+this.borderTop<=e.absolutePosition.y+e.borderBottom&&e.absolutePosition.y+e.borderBottom<=this.AbsolutePosition.y+this.borderBottom;if(o&&a)return!0}return!1}pointLiesInsideBorders(e){return this.AbsolutePosition.x+this.borderLeft<=e.x&&e.x<=this.AbsolutePosition.x+this.borderRight&&this.AbsolutePosition.y+this.borderTop<=e.y&&e.y<=this.AbsolutePosition.y+this.borderBottom}marginCollisionDetection(e){const r=Math.min(this.AbsolutePosition.x+this.borderMarginRight,e.absolutePosition.x+e.borderMarginRight)-Math.max(this.AbsolutePosition.x+this.borderMarginLeft,e.absolutePosition.x+e.borderMarginLeft),s=Math.min(this.AbsolutePosition.y+this.borderMarginBottom,e.absolutePosition.y+e.borderMarginBottom)-Math.max(this.AbsolutePosition.y+this.borderMarginTop,e.absolutePosition.y+e.borderMarginTop);return r>0&&s>0}liesInsideMargins(e){const r=this.AbsolutePosition.x+this.borderMarginLeft<=e.absolutePosition.x+e.borderMarginLeft&&e.absolutePosition.x+e.borderMarginLeft<=this.AbsolutePosition.x+this.borderMarginRight,s=this.AbsolutePosition.x+this.borderMarginLeft<=e.absolutePosition.x+e.borderMarginRight&&e.absolutePosition.x+e.borderMarginRight<=this.AbsolutePosition.x+this.borderMarginRight;if(r&&s){const o=this.AbsolutePosition.y+this.borderMarginTop<=e.absolutePosition.y+e.borderMarginTop&&e.absolutePosition.y+e.borderMarginTop<=this.AbsolutePosition.y+this.borderMarginBottom,a=this.AbsolutePosition.y+this.borderMarginTop<=e.absolutePosition.y+e.borderMarginBottom&&e.absolutePosition.y+e.borderMarginBottom<=this.AbsolutePosition.y+this.borderMarginBottom;if(o&&a)return!0}return!1}pointLiesInsideMargins(e){return this.AbsolutePosition.x+this.borderMarginLeft<=e.x&&e.x<=this.AbsolutePosition.x+this.borderMarginRight&&this.AbsolutePosition.y+this.borderMarginTop<=e.y&&e.y<=this.AbsolutePosition.y+this.borderMarginBottom}computeNonOverlappingPosition(e,r,s){this.RelativePosition=new PointF2D(s.x,s.y),this.setAbsolutePositionFromParent();let o=0,a=!1;do switch(r){case 0:case 1:o=this.relativePosition.x,e.calculatePositionAlongDirection(this,r),a=Math.abs(o-this.relativePosition.x)>1e-4;break;case 2:case 3:o=this.relativePosition.y,e.calculatePositionAlongDirection(this,r),a=Math.abs(o-this.relativePosition.y)>1e-4;break;default:throw new ArgumentOutOfRangeException("direction")}while(a)}getClickedObjectOfType(e){const r=this.dataObject;if(this.pointLiesInsideBorders(e)&&r)return r;for(let s=0,o=this.childElements.length;s(i[i.Left=0]="Left",i[i.Right=1]="Right",i[i.Up=2]="Up",i[i.Down=3]="Down",i[i.NotYetDefined=4]="NotYetDefined",i))(ColDirEnum||{});Array.prototype.last||Object.defineProperty(Array.prototype,"last",{enumerable:!1,writable:!0,value:function(){return this[this.length-1]}});Array.prototype.clear||Object.defineProperty(Array.prototype,"clear",{enumerable:!1,writable:!0,value:function(){this.length=0}});Array.prototype.contains||Object.defineProperty(Array.prototype,"contains",{enumerable:!1,writable:!0,value:function(i){return this.indexOf(i)!==-1}});class CollectionUtil{static contains2(e,r){for(let s=0;s(i[i.Down=0]="Down",i[i.Right=1]="Right",i[i.RightDown=2]="RightDown",i))(PagePlacementEnum||{}),TextAlignmentEnum=(i=>(i[i.LeftTop=0]="LeftTop",i[i.LeftCenter=1]="LeftCenter",i[i.LeftBottom=2]="LeftBottom",i[i.CenterTop=3]="CenterTop",i[i.CenterCenter=4]="CenterCenter",i[i.CenterBottom=5]="CenterBottom",i[i.RightTop=6]="RightTop",i[i.RightCenter=7]="RightCenter",i[i.RightBottom=8]="RightBottom",i))(TextAlignmentEnum||{});class TextAlignment{static IsLeft(e){return e===0||e===1||e===2}static IsCenterAligned(e){return e===3||e===4||e===5}static IsRight(e){return e===6||e===7||e===8}}var ColoringModes=(i=>(i[i.XML=0]="XML",i[i.AutoColoring=1]="AutoColoring",i[i.CustomColorSet=2]="CustomColorSet",i))(ColoringModes||{}),FontStyles=(i=>(i[i.Regular=0]="Regular",i[i.Bold=1]="Bold",i[i.Italic=2]="Italic",i[i.BoldItalic=3]="BoldItalic",i[i.Underlined=4]="Underlined",i))(FontStyles||{}),Fonts=(i=>(i[i.TimesNewRoman=0]="TimesNewRoman",i[i.Kokila=1]="Kokila",i[i.Gonville=2]="Gonville",i))(Fonts||{});const FontStringNames={0:"Times New Roman",1:"Kokila",2:"Gonville"};var TieTypes=(i=>(i.SIMPLE="",i.HAMMERON="H",i.PULLOFF="P",i.SLIDE="S",i.TAPPING="T",i))(TieTypes||{});class ChordSymbolContainer{constructor(e,r,s,o,a){this.rootPitch=e,this.chordKind=r,this.bassPitch=s,this.degrees=o,this.rules=a}get RootPitch(){return this.rootPitch}get ChordKind(){return this.chordKind}get BassPitch(){return this.bassPitch}get ChordDegrees(){return this.degrees}static calculateChordText(e,r,s){let o=e.RootPitch;if(MusicSheetCalculator.transposeCalculator&&(o=MusicSheetCalculator.transposeCalculator.transposePitch(e.RootPitch,s,r)),e.ChordKind===31)return e.getTextFromChordKindEnum(e.ChordKind);let a=Pitch.getNoteEnumString(o.FundamentalNote);o.Accidental!==AccidentalEnum.NONE&&(a+=e.getTextForAccidental(o.Accidental));const l={adds:[],alts:[],subs:[]};for(const g of e.ChordDegrees)if(g){let d="";switch(g.alteration!==AccidentalEnum.NONE&&(d+=e.getTextForAccidental(g.alteration)),d+=g.value,g.text){case 0:l.adds.push(d);break;case 1:l.alts.push(d);break;case 2:l.subs.push(d);break}}let c=e.getTextFromChordKindEnum(e.ChordKind);const u=["adds","alts","subs"],m=e.rules.CustomChords;for(const g of m){if(g.chordKind!==e.chordKind)continue;let d=!0;for(const y of u){for(const A of g.degrees[y]||[])if(l[y].indexOf(A)<0){d=!1;break}if(!d)break}if(d){for(const y of u)for(const A of g.degrees[y]||[])l[y].splice(l[y].indexOf(A),1);c=g.alternateName}}if(a+=c,l.adds.length>0&&(a+="("+l.adds.join(",")+")"),l.alts.length>0&&(a+="(alt "+l.alts.join(",")+")"),l.subs.length>0&&(a+="(omit "+l.subs.join(",")+")"),e.BassPitch){let g=e.BassPitch;MusicSheetCalculator.transposeCalculator&&(g=MusicSheetCalculator.transposeCalculator.transposePitch(e.BassPitch,s,r)),a+="/",a+=Pitch.getNoteEnumString(g.FundamentalNote),a+=e.getTextForAccidental(g.Accidental)}return a}getTextForAccidental(e){const r=this.rules.ChordAccidentalTexts.getValue(e);return r!==void 0?r:""}getTextFromChordKindEnum(e){var r;return(r=this.rules.ChordSymbolLabelTexts.getValue(e))!=null?r:""}}class Degree{constructor(e,r,s){this.value=e,this.alteration=r,this.text=s}}class CustomChord{constructor(e,r,s){this.alternateName=e,this.chordKind=r,this.degrees=s}static createCustomChord(e,r,s){return new CustomChord(e,r,s)}static renameCustomChord(e,r,s){for(const o of s)o.alternateName===e&&(o.alternateName=r)}}var ChordDegreeText=(i=>(i[i.add=0]="add",i[i.alter=1]="alter",i[i.subtract=2]="subtract",i))(ChordDegreeText||{}),ChordSymbolEnum=(i=>(i[i.major=0]="major",i[i.minor=1]="minor",i[i.augmented=2]="augmented",i[i.diminished=3]="diminished",i[i.dominant=4]="dominant",i[i.majorseventh=5]="majorseventh",i[i.minorseventh=6]="minorseventh",i[i.diminishedseventh=7]="diminishedseventh",i[i.augmentedseventh=8]="augmentedseventh",i[i.halfdiminished=9]="halfdiminished",i[i.majorminor=10]="majorminor",i[i.majorsixth=11]="majorsixth",i[i.minorsixth=12]="minorsixth",i[i.dominantninth=13]="dominantninth",i[i.majorninth=14]="majorninth",i[i.minorninth=15]="minorninth",i[i.dominant11th=16]="dominant11th",i[i.major11th=17]="major11th",i[i.minor11th=18]="minor11th",i[i.dominant13th=19]="dominant13th",i[i.major13th=20]="major13th",i[i.minor13th=21]="minor13th",i[i.suspendedsecond=22]="suspendedsecond",i[i.suspendedfourth=23]="suspendedfourth",i[i.Neapolitan=24]="Neapolitan",i[i.Italian=25]="Italian",i[i.French=26]="French",i[i.German=27]="German",i[i.pedal=28]="pedal",i[i.power=29]="power",i[i.Tristan=30]="Tristan",i[i.none=31]="none",i))(ChordSymbolEnum||{});class GraphicalNote extends GraphicalObject{constructor(e,r,s,o=void 0){super(),this.DrawnAccidental=AccidentalEnum.NONE,this.lineShift=0,this.sourceNote=e,this.parentVoiceEntry=r,this.PositionAndShape=new BoundingBox$1(this,r.PositionAndShape),o?this.graphicalNoteLength=o:this.graphicalNoteLength=e.Length,this.numberOfDots=this.calculateNumberOfNeededDots(this.graphicalNoteLength),this.rules=s,this.rules.addGraphicalNoteToNoteMap(e,this)}Transpose(e,r,s,o){let a=this.sourceNote.Pitch;return MusicSheetCalculator.transposeCalculator&&(a=MusicSheetCalculator.transposeCalculator.transposePitch(this.sourceNote.Pitch,e,s)),a}calculateNumberOfNeededDots(e){return!this.sourceNote||!this.sourceNote.NoteTuplet?e.calculateNumberOfNeededDots():0}get ParentMusicPage(){return this.parentVoiceEntry.parentStaffEntry.parentMeasure.ParentMusicSystem.Parent}static FromNote(e,r){return r.NoteToGraphicalNoteMap.getValue(e.NoteToGraphicalNoteObjectId)}ToStringShort(e=0){var r;return(r=this.sourceNote)==null?void 0:r.ToStringShort(e)}get ToStringShortGet(){return this.ToStringShort(0)}}const _EngravingRules=class{constructor(){this.DYSlursStartingAtSameStaffEntryYOffset=0,this.DYMinNoteWidth=0,this.DYWorkId=0,this.DYWorkSpecial=!1,this.DYContainerId="osmdCanvasPage",this.DYSVGContainerId="osmdSvgPage",this.DYMusicScoreType="staff",this.DYMusicScoreId="",this.DYCustomRepeatCount=0,this.DYMusicClientType="",this.NoteDistances=[1,1,1.3,1.6,2,2.5,3,4],this.NoteDistancesScalingFactors=[1,2,4,8,16,32,64,128],this.DurationDistanceDict={},this.DurationScalingDistanceDict={},this.NoteToGraphicalNoteMapObjectCount=0,this.RenderCount=0,this.PlayAlreadyStartedNotesFromCursorPosition=!1,this.PlaybackSkipNotesSafetyInterval=.02,this.UseDefaultVoiceInteractionListener=!0,this.LimitCursorPositionToCurrentMeasure=!0,this.loadDefaultValues()}loadDefaultValues(){this.SamplingUnit=_EngravingRules.unit*3,this.MpatMode=!0,this.SheetTitleHeight=4,this.SheetSubtitleHeight=2,this.SheetMinimumDistanceBetweenTitleAndSubtitle=1,this.SheetComposerHeight=2,this.SheetAuthorHeight=2,this.SheetCopyrightHeight=1.5,this.SheetCopyrightMargin=2,this.SheetComposerSubtitleUseLegacyParsing=!1,this.CompactMode=!1,this.PagePlacementEnum=PagePlacementEnum.Down,this.PageHeight=100001,this.PageTopMargin=5,this.PageTopMarginNarrow=0,this.PageBottomMargin=5,this.PageLeftMargin=5,this.PageRightMargin=5,this.TitleTopDistance=5,this.TitleBottomDistance=1,this.StaffDistance=7,this.BetweenStaffDistance=5,this.MinimumStaffLineDistance=4,this.MinSkyBottomDistBetweenStaves=1,this.StaffHeight=4,this.TabStaffInterlineHeight=1.1111,this.BetweenStaffLinesDistance=_EngravingRules.unit,this.SystemLeftMargin=0,this.SystemRightMargin=0,this.SystemLabelsRightMargin=2,this.SystemComposerDistance=2,this.SystemLyricistDistance=2,this.InstrumentLabelTextHeight=2,this.MinimumDistanceBetweenSystems=7,this.MinSkyBottomDistBetweenSystems=5,this.LastSystemMaxScalingFactor=1.4,this.AutoBeamNotes=!1,this.AutoBeamOptions={beam_middle_rests_only:!1,beam_rests:!1,maintain_stem_directions:!1},this.AutoBeamTabs=!1,this.BeamWidth=_EngravingRules.unit/2,this.BeamSpaceWidth=_EngravingRules.unit/3,this.BeamForwardLength=1.25*_EngravingRules.unit,this.FlatBeams=!1,this.FlatBeamOffset=20,this.FlatBeamOffsetPerBeam=10,this.ClefLeftMargin=.5,this.ClefRightMargin=.75,this.PercussionOneLineCutoff=3,this.PercussionForceVoicesOneLineCutoff=1,this.PercussionUseXMLDisplayStep=!0,this.PercussionXMLDisplayStepNoteValueShift=0,this.PercussionOneLineXMLDisplayStepOctaveOffset=0,this.PercussionUseCajon2NoteSystem=!1,this.BetweenKeySymbolsDistance=.2,this.KeyRightMargin=.75,this.RhythmRightMargin=1.25,this.ShowRhythmAgainAfterPartEndOrFinalBarline=!0,this.NewPartAndSystemAfterFinalBarline=!1,this.InStaffClefScalingFactor=.8,this.DistanceBetweenNaturalAndSymbolWhenCancelling=.4,this.NoteHelperLinesOffset=.25,this.MeasureLeftMargin=.7,this.MeasureRightMargin=0,this.DistanceBetweenLastInstructionAndRepetitionBarline=1,this.ArpeggioDistance=.6,this.StaccatoShorteningFactor=2,this.IdealStemLength=3,this.StemNoteHeadBorderYOffset=.2,this.StemMargin=.2,this.StemMinLength=2.5,this.StemMaxLength=4.5,this.BeamSlopeMaxAngle=10,this.StemMinAllowedDistanceBetweenNoteHeadAndBeamLine=1,this.SetWantedStemDirectionByXml=!0,this.GraceNoteScalingFactor=.6,this.GraceNoteXOffset=.2,this.GraceNoteGroupXMargin=0,this.WedgeOpeningLength=1.2,this.WedgeMeasureEndOpeningLength=.75,this.WedgeMeasureBeginOpeningLength=.75,this.WedgePlacementAboveY=-1.5,this.WedgePlacementBelowY=1.5,this.WedgeHorizontalMargin=.6,this.WedgeVerticalMargin=.5,this.DistanceOffsetBetweenTwoHorizontallyCrossedWedges=.3,this.WedgeMinLength=2,this.WedgeEndDistanceBetweenTimestampsFactor=1.75,this.SoftAccentWedgePadding=.4,this.SoftAccentSizeFactor=.6,this.DistanceBetweenAdjacentDynamics=.75,this.TempoChangeMeasureValidity=4,this.TempoContinousFactor=.7,this.StaccatoScalingFactor=.8,this.BetweenDotsDistance=.8,this.OrnamentAccidentalScalingFactor=.65,this.ChordSymbolTextHeight=2,this.ChordSymbolTextAlignment=TextAlignmentEnum.LeftBottom,this.ChordSymbolRelativeXOffset=-1,this.ChordSymbolExtraXShiftForShortChordSymbols=.3,this.ChordSymbolExtraXShiftWidthThreshold=2,this.ChordSymbolXSpacing=1,this.ChordOverlapAllowedIntoNextMeasure=0,this.ChordSymbolYOffset=.1,this.ChordSymbolYPadding=0,this.ChordSymbolYAlignment=!0,this.ChordSymbolYAlignmentScope="staffline",this.ChordSymbolWholeMeasureRestXOffset=0,this.ChordSymbolWholeMeasureRestXOffsetMeasure1=-2,this.ChordAccidentalTexts=new Dictionary,this.resetChordAccidentalTexts(this.ChordAccidentalTexts,!1),this.ChordSymbolLabelTexts=new Dictionary,this.resetChordSymbolLabelTexts(this.ChordSymbolLabelTexts),this.CustomChords=[],this.resetChordNames(),this.RepetitionSymbolsYOffset=0,this.RepetitionEndInstructionXShiftAsPercentOfStaveWidth=.4,this.RehearsalMarkXOffsetDefault=10,this.RehearsalMarkXOffset=0,this.RehearsalMarkXOffsetSystemStartMeasure=-20,this.RehearsalMarkYOffsetDefault=-15,this.RehearsalMarkYOffset=0,this.RehearsalMarkFontSize=10,this.MeasureNumberLabelHeight=1.5*_EngravingRules.unit,this.MeasureNumberLabelOffset=2,this.MeasureNumberLabelXOffset=-.5,this.TupletsRatioed=!1,this.TupletsBracketed=!1,this.TripletsBracketed=!1,this.TupletsBracketedUseXMLValue=!0,this.TupletNumberLabelHeight=1.5*_EngravingRules.unit,this.TupletNumberYOffset=.5,this.TupletNumberLimitConsecutiveRepetitions=!0,this.TupletNumberMaxConsecutiveRepetitions=2,this.TupletNumberAlwaysDisableAfterFirstMax=!0,this.TupletNumberUseShowNoneXMLValue=!0,this.LabelMarginBorderFactor=.1,this.TupletVerticalLineLength=.5,this.TupletNumbersInTabs=!0,this.TabTupletYOffsetBottom=1,this.TabTupletYOffsetTop=-3.5,this.TabTupletYOffsetEffects=1.5,this.TabTupletsBracketed=!0,this.TabBeamsRendered=!0,this.TabKeySignatureRendered=!1,this.TabKeySignatureSpacingAdded=!0,this.TabTimeSignatureRendered=!1,this.TabTimeSignatureSpacingAdded=!0,this.TabFingeringsRendered=!1,this.SlurPlacementFromXML=!0,this.SlurPlacementAtStems=!1,this.SlurPlacementUseSkyBottomLine=!1,this.BezierCurveStepSize=1e3,this.calculateCurveParametersArrays(),this.TieGhostObjectWidth=.75,this.TieYPositionOffsetFactor=.3,this.MinimumNeededXspaceForTieGhostObject=1,this.TieHeightMinimum=.28,this.TieHeightMaximum=1.2,this.TieHeightInterpolationK=.0288,this.TieHeightInterpolationD=.136,this.SlurNoteHeadYOffset=.5,this.SlurEndArticulationYOffset=.8,this.SlurStartArticulationYOffsetOfArticulation=.5,this.SlurStemXOffset=.3,this.SlurSlopeMaxAngle=15,this.SlurTangentMinAngle=30,this.SlurTangentMaxAngle=80,this.SlurHeightFactor=1,this.SlurHeightFlattenLongSlursFactorByWidth=.24,this.SlurHeightFlattenLongSlursFactorByAngle=.36,this.SlurHeightFlattenLongSlursCutoffAngle=47,this.SlurHeightFlattenLongSlursCutoffWidth=16,this.SlursStartingAtSameStaffEntryYOffset=.8,this.SlurMaximumYControlPointDistance=void 0,this.GlissandoNoteOffset=.5,this.GlissandoStafflineStartMinimumWidth=1,this.GlissandoStafflineStartYDistanceToNote=.8,this.GlissandoStafflineEndOffset=1,this.GlissandoDefaultWidth=.1,this.RepetitionAllowFirstMeasureBeginningRepeatBarline=!1,this.RepetitionEndingLabelHeight=2,this.RepetitionEndingLabelXOffset=.5,this.RepetitionEndingLabelYOffset=.3,this.RepetitionEndingLineYLowerOffset=.5,this.RepetitionEndingLineYUpperOffset=.3,this.VoltaOffset=2.5,this.LyricsAlignmentStandard=TextAlignmentEnum.LeftBottom,this.LyricsHeight=2,this.LyricsYOffsetToStaffHeight=0,this.LyricsYMarginToBottomLine=.2,this.LyricsExtraXShiftForShortLyrics=.5,this.LyricsExtraXShiftForShortLyricsWidthThreshold=1.4,this.LyricsUseXPaddingForLongLyrics=!0,this.LyricsXPaddingFactorForLongLyrics=1,this.LyricsXPaddingWidthThreshold=1.7,this.LyricsXPaddingReductionForLongNotes=.7,this.LyricsXPaddingReductionForLastNoteInMeasure=1.2,this.LyricsXPaddingForLastNoteInMeasure=!0,this.VerticalBetweenLyricsDistance=.5,this.HorizontalBetweenLyricsDistance=.2,this.BetweenSyllableMaximumDistance=10,this.BetweenSyllableMinimumDistance=.5,this.LyricOverlapAllowedIntoNextMeasure=3.4,this.MinimumDistanceBetweenDashes=10,this.MaximumLyricsElongationFactor=2.5,this.TempoYSpacing=.5,this.InstantaneousTempoTextHeight=2.3,this.ContinuousDynamicTextHeight=2.3,this.MoodTextHeight=2.3,this.UnknownTextHeight=2,this.ContinuousTempoTextHeight=2.3,this.DynamicExpressionMaxDistance=2,this.DynamicExpressionSpacer=.5,this.IgnoreRepeatedDynamics=!1,this.ExpressionsUseXMLColor=!0,this.VexFlowDefaultNotationFontScale=39,this.VexFlowDefaultTabFontScale=39,this.TremoloStrokeScale=1,this.TremoloYSpacingScale=1,this.TremoloBuzzRollThickness=.25,this.StemWidth=.15,this.StaffLineWidth=.1,this.StaffLineColor=void 0,this.LedgerLineWidth=1,this.LedgerLineStrokeStyle=void 0,this.LedgerLineColorDefault="#000000",this.WedgeLineWidth=.12,this.TupletLineWidth=.12,this.LyricUnderscoreLineWidth=.12,this.SystemThinLineWidth=.12,this.SystemBoldLineWidth=_EngravingRules.unit/2,this.SystemRepetitionEndingLineWidth=.12,this.SystemDotWidth=_EngravingRules.unit/2,this.DistanceBetweenVerticalSystemLines=.35,this.DistanceBetweenDotAndLine=.7,this.RepeatEndStartPadding=2,this.OctaveShiftLineWidth=.12,this.OctaveShiftVerticalLineLength=_EngravingRules.unit,this.OctaveShiftOnWholeMeasureNoteUntilEndOfMeasure=!1,this.GraceLineWidth=this.StaffLineWidth*this.GraceNoteScalingFactor,this.MultipleRestMeasureDefaultWidth=4,this.MultipleRestMeasureAddKeySignature=!0,this.FixedMeasureWidth=!1,this.FixedMeasureWidthFixedValue=void 0,this.FixedMeasureWidthUseForPickupMeasures=!1,this.MinimumCrossedBeamDifferenceMargin=1e-4,this.SheetMaximumWidth=32767,this.VoiceSpacingMultiplierVexflow=.85,this.VoiceSpacingAddendVexflow=3,this.PickupMeasureWidthMultiplier=1,this.PickupMeasureRepetitionSpacing=.8,this.PickupMeasureSpacingSingleNoteAddend=1.6,this.DisplacedNoteMargin=.1,this.MinNoteDistance=2,this.SubMeasureXSpacingThreshold=35,this.MeasureDynamicsMaxScalingFactor=2.5,this.WholeRestXShiftVexflow=-1.5,this.MetronomeMarksDrawn=!0,this.MetronomeMarkXShift=-6,this.MetronomeMarkYShift=-1,this.SoftmaxFactorVexFlow=15,this.StaggerSameWholeNotes=!0,this.AlignRests=AlignRestOption.Never,this.RestCollisionYPadding=0,this.FillEmptyMeasuresWithWholeRest=FillEmptyMeasuresWithWholeRests.No,this.ArpeggiosGoAcrossVoices=!1,this.RenderArpeggios=!0,this.RenderSlurs=!0,this.RenderGlissandi=!0,this.ColoringMode=ColoringModes.XML,this.ColoringEnabled=!0,this.ColorStemsLikeNoteheads=!1,this.ColorBeams=!0,this.ColorFlags=!0,this.applyDefaultColorMusic("#000000"),this.DefaultColorCursor="#33e02f",this.DefaultFontFamily="Times New Roman",this.DefaultFontStyle=FontStyles.Regular,this.DefaultVexFlowNoteFont="gonville",this.MaxMeasureToDrawIndex=Number.MAX_VALUE,this.MinMeasureToDrawIndex=0,this.MaxSystemToDrawNumber=Number.MAX_VALUE,this.MaxPageToDrawNumber=Number.MAX_VALUE,this.RenderComposer=!0,this.RenderTitle=!0,this.RenderSubtitle=!0,this.RenderLyricist=!0,this.RenderCopyright=!1,this.RenderPartNames=!0,this.RenderPartAbbreviations=!0,this.RenderSystemLabelsAfterFirstPage=!0,this.RenderFingerings=!0,this.RenderMeasureNumbers=!0,this.RenderMeasureNumbersOnlyAtSystemStart=!1,this.UseXMLMeasureNumbers=!0,this.RenderLyrics=!0,this.RenderChordSymbols=!0,this.RenderMultipleRestMeasures=!0,this.AutoGenerateMultipleRestMeasuresFromRestMeasures=!0,this.RenderRehearsalMarks=!0,this.RenderClefsAtBeginningOfStaffline=!0,this.RenderKeySignatures=!0,this.RenderTimeSignatures=!0,this.RenderPedals=!0,this.RenderWavyLines=!0,this.ArticulationPlacementFromXML=!0,this.BreathMarkDistance=.8,this.FingeringPosition=PlacementEnum.AboveOrBelow,this.FingeringPositionFromXML=!0,this.FingeringPositionGrace=PlacementEnum.Left,this.FingeringInsideStafflines=!1,this.FingeringLabelFontHeight=1.7,this.FingeringOffsetX=0,this.FingeringOffsetY=0,this.FingeringPaddingY=-.2,this.FingeringTextSize=1.5,this.RenderStringNumbersClassical=!0,this.StringNumberOffsetY=0,this.NewSystemAtXMLNewSystemAttribute=!1,this.NewPageAtXMLNewPageAttribute=!1,this.NewSystemAtXMLNewPageAttribute=!1,this.RestoreCursorAfterRerender=!0,this.StretchLastSystemLine=!1,this.IgnoreBracketsWords=!0,this.PlaceWordsInsideStafflineFromXml=!1,this.PlaceWordsInsideStafflineYOffset=.9,this.UseJustifiedBuilder=!0,this.PageFormat=PageFormat.UndefinedPageFormat,this.PageBackgroundColor=void 0,this.PerformanceMode=!1,this.RenderSingleHorizontalStaffline=!1,this.SpacingBetweenTextLines=0,this.NoteToGraphicalNoteMap=new Dictionary,this.NoteToGraphicalNoteMapObjectCount=0,this.SkyBottomLineBatchMinMeasures=5,this.SkyBottomLineWebGLMinMeasures=80,this.AlwaysSetPreferredSkyBottomLineBackendAutomatically=!0,this.DisableWebGLInFirefox=!0,this.DisableWebGLInSafariAndIOS=!0,this.setPreferredSkyBottomLineBackendAutomatically();try{this.MaxInstructionsConstValue=this.ClefLeftMargin+this.ClefRightMargin+this.KeyRightMargin+this.RhythmRightMargin+11}catch(i){loglevelExports.info("EngravingRules()",i)}this.MpatMode&&(this.NewPartAndSystemAfterFinalBarline=!0)}setPreferredSkyBottomLineBackendAutomatically(i=-1){var o,a,l,c;let e="",r="";typeof globalThis=="object"&&(e=(a=(o=globalThis.navigator)==null?void 0:o.vendor)!=null?a:"",r=(c=(l=globalThis.navigator)==null?void 0:l.userAgent)!=null?c:"");let s=!1;(this.DisableWebGLInSafariAndIOS&&/apple/i.test(e)||this.DisableWebGLInFirefox&&r.includes("Firefox"))&&(s=!0),this.PreferredSkyBottomLineBatchCalculatorBackend=SkyBottomLineBatchCalculatorBackendType.Plain,s||i>=this.SkyBottomLineWebGLMinMeasures&&(this.PreferredSkyBottomLineBatchCalculatorBackend=SkyBottomLineBatchCalculatorBackendType.WebGL)}applyDefaultColorMusic(i){this.DefaultColorMusic=i,this.DefaultColorNotehead=i,this.DefaultColorRest=i,this.DefaultColorStem=i,this.DefaultColorLabel=i,this.DefaultColorLyrics=i,this.DefaultColorTitle=i,this.LedgerLineColorDefault=i}addGraphicalNoteToNoteMap(i,e){i.NoteToGraphicalNoteObjectId=this.NoteToGraphicalNoteMapObjectCount,this.NoteToGraphicalNoteMap.setValue(i.NoteToGraphicalNoteObjectId,e),this.NoteToGraphicalNoteMapObjectCount++}GNote(i){return GraphicalNote.FromNote(i,this)}clearMusicSheetObjects(){this.NoteToGraphicalNoteMap=new Dictionary,this.NoteToGraphicalNoteMapObjectCount=0}resetChordAccidentalTexts(i,e){i.setValue(AccidentalEnum.SHARP,e?"♯":"#"),i.setValue(AccidentalEnum.FLAT,e?"♭":"b"),i.setValue(AccidentalEnum.DOUBLEFLAT,e?"𝄫":"bb"),i.setValue(AccidentalEnum.DOUBLESHARP,e?"𝄪":"x")}setChordSymbolLabelText(i,e){this.ChordSymbolLabelTexts.setValue(i,e)}resetChordSymbolLabelTexts(i){return i.setValue(ChordSymbolEnum.minor,"m"),i.setValue(ChordSymbolEnum.augmented,"aug"),i.setValue(ChordSymbolEnum.diminished,"dim"),i.setValue(ChordSymbolEnum.dominant,"7"),i.setValue(ChordSymbolEnum.majorseventh,"maj7"),i.setValue(ChordSymbolEnum.minorseventh,"m7"),i.setValue(ChordSymbolEnum.diminishedseventh,"dim7"),i.setValue(ChordSymbolEnum.augmentedseventh,"aug7"),i.setValue(ChordSymbolEnum.halfdiminished,`m7${this.ChordAccidentalTexts.getValue(AccidentalEnum.FLAT)}5`),i.setValue(ChordSymbolEnum.majorminor,"m(maj7)"),i.setValue(ChordSymbolEnum.majorsixth,"maj6"),i.setValue(ChordSymbolEnum.minorsixth,"m6"),i.setValue(ChordSymbolEnum.dominantninth,"9"),i.setValue(ChordSymbolEnum.majorninth,"maj9"),i.setValue(ChordSymbolEnum.minorninth,"m9"),i.setValue(ChordSymbolEnum.dominant11th,"11"),i.setValue(ChordSymbolEnum.major11th,"maj11"),i.setValue(ChordSymbolEnum.minor11th,"m11"),i.setValue(ChordSymbolEnum.dominant13th,"13"),i.setValue(ChordSymbolEnum.major13th,"maj13"),i.setValue(ChordSymbolEnum.minor13th,"m13"),i.setValue(ChordSymbolEnum.suspendedsecond,"sus2"),i.setValue(ChordSymbolEnum.suspendedfourth,"sus4"),i.setValue(ChordSymbolEnum.power,"5"),i.setValue(ChordSymbolEnum.none,"N.C."),i}addChordName(i,e,r,s,o){if(ChordSymbolEnum[e]!==void 0){const a={adds:r,alts:s,subs:o};this.CustomChords.push(CustomChord.createCustomChord(i,ChordSymbolEnum[e],a))}}renameChord(i,e){CustomChord.renameCustomChord(i,e,this.CustomChords)}resetChordNames(){const i=this.ChordAccidentalTexts.getValue(AccidentalEnum.SHARP),e=this.ChordAccidentalTexts.getValue(AccidentalEnum.FLAT);this.addChordName("alt","major",[`${i}5`,`${e}9`,`${i}9`],[`${e}5`],[]),this.addChordName("7alt","dominant",[`${i}5`,`${e}9`,`${i}9`],[`${e}5`],[]),this.addChordName("7sus4","dominant",["4"],[],["3"]),this.addChordName("7sus4","suspendedfourth",["7"],[],[]),this.addChordName("9sus4","dominantninth",["4"],[],["3"]),this.addChordName("9sus4","suspendedfourth",["9"],[],[]),this.addChordName("11sus4","dominant11th",["4"],[],["3"]),this.addChordName("11sus4","suspendedfourth",["11"],[],[]),this.addChordName("13sus4","dominant13th",["4"],[],["3"]),this.addChordName("13sus4","suspendedfourth",["13"],[],[]),this.addChordName("7sus2","dominant",["2"],[],["3"]),this.addChordName("7sus2","suspendedsecond",["7"],[],[]),this.addChordName(`m7${e}5`,"minorseventh",[],[`${e}5`],[]),this.addChordName("9sus2","dominantninth",["2"],[],["3"]),this.addChordName("9sus2","suspendedsecond",["9"],[],[]),this.addChordName("11sus2","dominant11th",["2"],[],["3"]),this.addChordName("11sus2","suspendedsecond",["11"],[],[]),this.addChordName("13sus2","dominant13th",["2"],[],["3"]),this.addChordName("13sus2","suspendedsecond",["13"],[],[]),this.addChordName("m(maj9)","majorminor",["9"],[],[]),this.addChordName("m(maj11)","majorminor",["11"],[],[]),this.addChordName("m(maj13)","majorminor",["13"],[],[]),this.addChordName("69","majorsixth",["9"],[],[]),this.addChordName("mi69","minorsixth",["9"],[],[])}calculateCurveParametersArrays(){this.TPower3=new Array(this.BezierCurveStepSize),this.OneMinusTPower3=new Array(this.BezierCurveStepSize),this.FactorOne=new Array(this.BezierCurveStepSize),this.FactorTwo=new Array(this.BezierCurveStepSize);for(let i=0;i{var s,o,a,l;return((o=(s=r.sourceNote.Pitch)==null?void 0:s.getHalfTone())!=null?o:0)-((l=(a=e.sourceNote.Pitch)==null?void 0:a.getHalfTone())!=null?l:0)}),this.notes}sortForVexflow(){return this.notes.sort((e,r)=>{var s,o,a;return((o=(s=e.sourceNote.Pitch)==null?void 0:s.getHalfTone())!=null?o:0)-((a=r.sourceNote.Pitch.getHalfTone())!=null?a:0)}),this.notes}color(){}}class GraphicalMusicSheet{constructor(e,r){this.musicPages=[],this.measureList=[],this.verticalGraphicalStaffEntryContainers=[],this.cursors=[],this.leadSheet=!1,this.musicSheet=e,this.numberOfStaves=this.musicSheet.Staves.length,this.calculator=r,this.calculator.initialize(this)}get ParentMusicSheet(){return this.musicSheet}get GetCalculator(){return this.calculator}get JianpuKeySignature(){return this.jianpuKeySignature}set JianpuKeySignature(e){this.jianpuKeySignature=e}get MusicPages(){return this.musicPages}set MusicPages(e){this.musicPages=e}get MeasureList(){return this.measureList}set MeasureList(e){this.measureList=e}get VerticalGraphicalStaffEntryContainers(){return this.verticalGraphicalStaffEntryContainers}set VerticalGraphicalStaffEntryContainers(e){this.verticalGraphicalStaffEntryContainers=e}get Title(){return this.title}set Title(e){this.title=e}get Subtitle(){return this.subtitle}set Subtitle(e){this.subtitle=e}get Composer(){return this.composer}set Composer(e){this.composer=e}get Lyricist(){return this.lyricist}set Lyricist(e){this.lyricist=e}get Copyright(){return this.copyright}set Copyright(e){this.copyright=e}get Cursors(){return this.cursors}get SelectionStartSymbol(){return this.selectionStartSymbol}get SelectionEndSymbol(){return this.selectionEndSymbol}get MinAllowedSystemWidth(){return this.minAllowedSystemWidth}set MinAllowedSystemWidth(e){this.minAllowedSystemWidth=e}get NumberOfStaves(){return this.numberOfStaves}get LeadSheet(){return this.leadSheet}set LeadSheet(e){this.leadSheet=e}static transformRelativeToAbsolutePosition(e){for(let r=0;r=0;o--){const a=(s=this.measureList[o])==null?void 0:s[r];if(a)return a}}findGraphicalStaffEntryFromMeasureList(e,r,s){for(let o=r;o0)return l.staffEntries[0]}}getFirstVisibleMeasuresListFromIndices(e,r){const s=[],o=this.measureList[0].length;for(let a=e;a<=r;a++)for(let l=0;l=0;r--){if(this.verticalGraphicalStaffEntryContainers[r].AbsoluteTimestamp.lt(e)){const s=new VerticalGraphicalStaffEntryContainer(this.numberOfStaves,e);return this.verticalGraphicalStaffEntryContainers.splice(r+1,0,s),s}if(this.verticalGraphicalStaffEntryContainers[r].AbsoluteTimestamp.Equals(e))return this.verticalGraphicalStaffEntryContainers[r]}}GetVerticalContainerFromTimestamp(e,r=0){const s=CollectionUtil.binarySearch(this.verticalGraphicalStaffEntryContainers,new VerticalGraphicalStaffEntryContainer(0,e),VerticalGraphicalStaffEntryContainer.compareByTimestamp,r);if(s>=0)return this.verticalGraphicalStaffEntryContainers[s]}GetInterpolatedIndexInVerticalContainers(e){const r=this.verticalGraphicalStaffEntryContainers;if(r.length===1)return 0;let s=0,o=r.length-1,a,l;if(e.lte(r[r.length-1].AbsoluteTimestamp)){for(;o-s>1;){const g=Math.floor((o+s)/2);if(r[s].AbsoluteTimestamp.Equals(e)){o=s;break}else if(r[o].AbsoluteTimestamp.Equals(e)){s=o;break}else{if(r[g].AbsoluteTimestamp.Equals(e))return this.verticalGraphicalStaffEntryContainers.indexOf(r[g]);e.lt(r[g].AbsoluteTimestamp)?o=g:s=g}}if(s===o)return this.verticalGraphicalStaffEntryContainers.indexOf(r[s]);a=r[s].AbsoluteTimestamp,l=r[o].AbsoluteTimestamp}else a=r[r.length-1].AbsoluteTimestamp,l=Fraction$1.plus(this.getLongestStaffEntryDuration(r.length-1),a),o=r.length;const c=l.RealValue-a.RealValue,u=l.RealValue-e.RealValue,m=o-u/c;return Math.min(m,this.verticalGraphicalStaffEntryContainers.length-1)}getVisibleStavesIndicesFromSourceMeasure(e){const r=[],s=[];for(let o=0,a=e.length;o=0;)o=this.measureList[--s][e];return this.measureList[s][e]}getMeasureIndex(e,r,s){for(r=0;r{var s;return((s=r.parentStaffEntry)==null?void 0:s.relInMeasureTimestamp)!==void 0})}GetNearestNote(e,r){const s=this.GetNearestVoiceEntry(e);if(!s)return;let o,a=Number.MAX_SAFE_INTEGER;for(const l of s.notes){const c=l.PositionAndShape.AbsolutePosition.y,u=Math.abs(l.PositionAndShape.AbsolutePosition.x-e.x),m=Math.abs(c-e.y);u+ml.PositionAndShape.RelativePosition.x&&(s=l):s=l)}}catch(o){loglevelExports.info("GraphicalMusicSheet.getStaffEntry",o)}return s}GetPreviousVisibleContainerIndex(e){for(let r=e-1;r>=0;r--){const s=this.verticalGraphicalStaffEntryContainers[r].StaffEntries;for(let o=0,a=s.length;o=0;a--)if(s=this.getStaffEntry(a),s)if(r){if(s.sourceStaffEntry.ParentStaff.ParentInstrument.Visible)return s}else return s}findClosestRightStaffEntry(e,r){let s;const o=Math.max(0,Math.ceil(e));for(let a=o;a1}isVisible(){return this.ParentStaff.ParentInstrument.Visible}getGraphicalMeasureDurationFromStaffEntries(){let e=new Fraction$1(0,1);const r=[];for(let s=0,o=this.staffEntries.length;s0&&l.Add(u.notes[0].graphicalNoteLength);e.lt(l)&&(e=Fraction$1.createFromFraction(l))}return e}addGraphicalStaffEntry(e){this.staffEntries.push(e)}addGraphicalStaffEntryAtTimestamp(e){if(e)if(this.staffEntries.length===0||this.staffEntries[this.staffEntries.length-1].relInMeasureTimestamp.lt(e.relInMeasureTimestamp))this.staffEntries.push(e);else for(let r=this.staffEntries.length-1;r>=0;r--){if(this.staffEntries[r].relInMeasureTimestamp.lt(e.relInMeasureTimestamp)){this.staffEntries.splice(r+1,0,e);break}r===0&&this.staffEntries.splice(r,0,e)}}isPianoRightHand(){return this.isUpperStaffOfInstrument()}isPianoLeftHand(){return this.isLowerStaffOfInstrument()}isUpperStaffOfInstrument(){return this.parentStaff.ParentInstrument.Staves.length===1?!0:this.ParentStaff===this.parentStaff.ParentInstrument.Staves[0]}isLowerStaffOfInstrument(){return this.parentStaff.ParentInstrument.Staves.length===1?!1:this.ParentStaff===this.ParentStaff.ParentInstrument.Staves.last()}beginsWithLineRepetition(){const e=this.parentSourceMeasure;return e?e.beginsWithLineRepetition():!1}endsWithLineRepetition(){const e=this.parentSourceMeasure;return e?e.endsWithLineRepetition():!1}beginsWithWordRepetition(){const e=this.parentSourceMeasure;return e?e.beginsWithWordRepetition():!1}endsWithWordRepetition(){const e=this.parentSourceMeasure;return e?e.endsWithWordRepetition():!1}getTransposedHalftones(){return this.parentStaff.ParentInstrument.GetMusicSheet.Transpose+this.parentStaff.ParentInstrument.Transpose}}const Vex=()=>{};Vex.L=(i,e)=>{if(!e)return;const r=Array.prototype.slice.call(e).join(" ");window.console.log(i+": "+r)};Vex.MakeException=i=>class extends Error{constructor(r,s){super(r),this.name=i,this.message=r,this.data=s}};class RuntimeError{constructor(e,r){this.code=e,this.message=r}toString(){return"[RuntimeError] "+this.code+":"+this.message}}Vex.RuntimeError=RuntimeError;Vex.RERR=Vex.RuntimeError;Vex.Merge=(i,e)=>{for(const r in e)i[r]=e[r];return i};Vex.Min=Math.min;Vex.Max=Math.max;Vex.forEach=(i,e)=>{for(let r=0;ri%e>=e/2?parseInt(i/e,10)*e+e:parseInt(i/e,10)*e;Vex.MidLine=(i,e)=>{let r=e+(i-e)/2;return r%2>0&&(r=Vex.RoundN(r*10,5)/10),r};Vex.SortAndUnique=(i,e,r)=>{if(i.length>1){const s=[];let o;i.sort(e);for(let a=0;a{let r=i.length;for(;r--;)if(i[r]===e)return!0;return!1};Vex.getCanvasContext=i=>{if(!i)throw new Vex.RERR("BadArgument","Invalid canvas selector: "+i);const e=document.getElementById(i);if(!(e&&e.getContext))throw new Vex.RERR("UnsupportedBrowserError","This browser does not support HTML5 Canvas");return e.getContext("2d")};Vex.drawDot=(i,e,r,s="#55")=>{i.save(),i.setFillStyle(s),i.beginPath(),i.arc(e,r,3,0,Math.PI*2,!0),i.closePath(),i.fill(),i.restore()};Vex.BM=(i,e)=>{const r=new Date().getTime();e();const s=new Date().getTime()-r;Vex.L(i+s+"ms")};Vex.StackTrace=()=>new Error().stack;Vex.W=(...i)=>{const e=i.join(" ");window.console.log("Warning: ",e,Vex.StackTrace())};Vex.Prefix=i=>Vex.Prefix.prefix+i;Vex.Prefix.prefix="vf-";class Fraction{static GCD(e,r){if(typeof e!="number"||typeof r!="number")throw new Vex.RERR("BadArgument",`Invalid numbers: ${e}, ${r}`);let s;for(;r!==0;)s=r,r=e%r,e=s;return e}static LCM(e,r){return e*r/Fraction.GCD(e,r)}static LCMM(e){if(e.length===0)return 0;if(e.length===1)return e[0];if(e.length===2)return Fraction.LCM(e[0],e[1]);{const r=e[0];return e.shift(),Fraction.LCM(r,Fraction.LCMM(e))}}constructor(e,r){this.set(e,r)}set(e,r){return this.numerator=e===void 0?1:e,this.denominator=r===void 0?1:r,this}value(){return this.numerator/this.denominator}simplify(){let e=this.numerator,r=this.denominator;const s=Fraction.GCD(e,r);return e/=s,r/=s,r<0&&(r=-r,e=-e),this.set(e,r)}add(e,r){let s,o;e instanceof Fraction?(s=e.numerator,o=e.denominator):(e!==void 0?s=e:s=0,r!==void 0?o=r:o=1);const a=Fraction.LCM(this.denominator,o),l=a/this.denominator,c=a/o,u=this.numerator*l+s*c;return this.set(u,a)}subtract(e,r){let s,o;e instanceof Fraction?(s=e.numerator,o=e.denominator):(e!==void 0?s=e:s=0,r!==void 0?o=r:o=1);const a=Fraction.LCM(this.denominator,o),l=a/this.denominator,c=a/o,u=this.numerator*l-s*c;return this.set(u,a)}multiply(e,r){let s,o;return e instanceof Fraction?(s=e.numerator,o=e.denominator):(e!==void 0?s=e:s=1,r!==void 0?o=r:o=1),this.set(this.numerator*s,this.denominator*o)}divide(e,r){let s,o;return e instanceof Fraction?(s=e.numerator,o=e.denominator):(e!==void 0?s=e:s=1,r!==void 0?o=r:o=1),this.set(this.numerator*o,this.denominator*s)}equals(e){const r=Fraction.__compareA.copy(e).simplify(),s=Fraction.__compareB.copy(this).simplify();return r.numerator===s.numerator&&r.denominator===s.denominator}greaterThan(e){const r=Fraction.__compareB.copy(this);return r.subtract(e),r.numerator>0}greaterThanEquals(e){const r=Fraction.__compareB.copy(this);return r.subtract(e),r.numerator>=0}lessThan(e){return!this.greaterThanEquals(e)}lessThanEquals(e){return!this.greaterThan(e)}clone(){return new Fraction(this.numerator,this.denominator)}copy(e){return typeof e=="number"?this.set(e||0,1):this.set(e.numerator,e.denominator)}quotient(){return Math.floor(this.numerator/this.denominator)}fraction(){return this.numerator%this.denominator}abs(){return this.denominator=Math.abs(this.denominator),this.numerator=Math.abs(this.numerator),this}toString(){return this.numerator+"/"+this.denominator}toSimplifiedString(){return Fraction.__tmp.copy(this).simplify().toString()}toMixedString(){let e="";const r=this.quotient(),s=Fraction.__tmp.copy(this);return r<0?s.abs().fraction():s.fraction(),r!==0?(e+=r,s.numerator!==0&&(e+=" "+s.toSimplifiedString())):s.numerator===0?e="0":e=s.toSimplifiedString(),e}parse(e){const r=e.split("/"),s=parseInt(r[0],10),o=r[1]?parseInt(r[1],10):1;return this.set(s,o)}}Fraction.__compareA=new Fraction;Fraction.__compareB=new Fraction;Fraction.__tmp=new Fraction;const X$3=Vex.MakeException("RegistryError");function setIndexValue(i,e,r,s,o){i[e][r]||(i[e][r]={}),i[e][r][s]=o}class Registry{static get INDEXES(){return["type"]}constructor(){this.clear()}static enableDefaultRegistry(e){Registry.defaultRegistry=e}static getDefaultRegistry(){return Registry.defaultRegistry}static disableDefaultRegistry(){Registry.defaultRegistry=null}clear(){return this.index={id:{},type:{},class:{}},this}updateIndex({id:e,name:r,value:s,oldValue:o}){const a=this.getElementById(e);o!==null&&this.index[r][o]&&delete this.index[r][o][e],s!==null&&setIndexValue(this.index,r,s,a.getAttribute("id"),a)}register(e,r){if(r=r||e.getAttribute("id"),!r)throw new X$3("Can't add element without `id` attribute to registry",e);return e.setAttribute("id",r),setIndexValue(this.index,"id",r,r,e),Registry.INDEXES.forEach(s=>{this.updateIndex({id:r,name:s,value:e.getAttribute(s),oldValue:null})}),e.onRegister(this),this}getElementById(e){return this.index.id[e]?this.index.id[e][e]:null}getElementsByAttribute(e,r){const s=this.index[e];return s&&s[r]?Object.keys(s[r]).map(o=>s[r][o]):[]}getElementsByType(e){return this.getElementsByAttribute("type",e)}getElementsByClass(e){return this.getElementsByAttribute("class",e)}onUpdate({id:e,name:r,value:s,oldValue:o}){function a(l,c){return l.filter(u=>u===c).length>0}return a(Registry.INDEXES.concat(["id","class"]),r)?(this.updateIndex({id:e,name:r,value:s,oldValue:o}),this):this}}Registry.defaultRegistry=null;let Element$1=class Mi{static newID(){return"auto"+Mi.ID++}constructor({type:e}={}){this.attrs={id:Mi.newID(),el:null,type:e||"Base",classes:{}},this.boundingBox=null,this.context=null,this.rendered=!1,Registry.getDefaultRegistry()&&Registry.getDefaultRegistry().register(this)}setStyle(e){return this.style=e,this}getStyle(){return this.style}applyStyle(e=this.context,r=this.getStyle()){return r?(e.save(),r.shadowColor&&e.setShadowColor(r.shadowColor),r.shadowBlur&&e.setShadowBlur(r.shadowBlur),r.fillStyle&&e.setFillStyle(r.fillStyle),r.strokeStyle&&e.setStrokeStyle(r.strokeStyle),r.lineWidth&&e.setLineWidth(r.lineWidth),this):this}restoreStyle(e=this.context,r=this.getStyle()){return r?(e.restore(),this):this}drawWithStyle(){this.checkContext(),this.applyStyle(),this.draw(),this.restoreStyle()}hasClass(e){return this.attrs.classes[e]===!0}addClass(e){return this.attrs.classes[e]=!0,this.registry&&this.registry.onUpdate({id:this.getAttribute("id"),name:"class",value:e,oldValue:null}),this}removeClass(e){return delete this.attrs.classes[e],this.registry&&this.registry.onUpdate({id:this.getAttribute("id"),name:"class",value:null,oldValue:e}),this}onRegister(e){return this.registry=e,this}isRendered(){return this.rendered}setRendered(e=!0){return this.rendered=e,this}getAttributes(){return this.attrs}getAttribute(e){return this.attrs[e]}setAttribute(e,r){const s=this.attrs.id,o=this.attrs[e];return this.attrs[e]=r,this.registry&&this.registry.onUpdate({id:s,name:e,value:r,oldValue:o}),this}getContext(){return this.context}setContext(e){return this.context=e,this}getBoundingBox(){return this.boundingBox}checkContext(){if(!this.context)throw new Vex.RERR("NoContext","No rendering context attached to instance");return this.context}};Element$1.ID=1e3;class BoundingBoxComputation{constructor(e,r,s,o){this.x1=Number.NaN,this.y1=Number.NaN,this.x2=Number.NaN,this.y2=Number.NaN,this.addPoint(e,r),this.addPoint(s,o)}width(){return this.x2-this.x1}height(){return this.y2-this.y1}addPoint(e,r){e!=null&&((isNaN(this.x1)||isNaN(this.x2))&&(this.x1=e,this.x2=e),ethis.x2&&(this.x2=e)),r!=null&&((isNaN(this.y1)||isNaN(this.y2))&&(this.y1=r,this.y2=r),rthis.y2&&(this.y2=r))}addX(e){this.addPoint(e,null)}addY(e){this.addPoint(null,e)}addQuadraticCurve(e,r,s,o,a,l){const c=e+.6666666666666666*(s-e),u=r+2/3*(o-r),m=c+1/3*(a-e),g=u+1/3*(l-r);this.addBezierCurve(e,r,c,u,m,g,a,l)}addBezierCurve(e,r,s,o,a,l,c,u){const m=[e,r],g=[s,o],d=[a,l],y=[c,u];let A;this.addPoint(m[0],m[1]),this.addPoint(y[0],y[1]);const b=(S,E)=>Math.pow(1-S,3)*m[E]+3*Math.pow(1-S,2)*S*g[E]+3*(1-S)*Math.pow(S,2)*d[E]+Math.pow(S,3)*y[E];for(A=0;A<=1;A++){const S=6*m[A]-12*g[A]+6*d[A],E=-3*m[A]+9*g[A]-9*d[A]+3*y[A],x=3*g[A]-3*m[A];if(E===0){if(S===0)continue;const I=-x/S;0{if(!i)throw new Vex.RERR("BadArgument","Invalid clef: "+i);const e=Flow.clefProperties.values[i];if(!e)throw new Vex.RERR("BadArgument","Invalid clef: "+i);return e};Flow.clefProperties.values={treble:{line_shift:0},bass:{line_shift:6},tenor:{line_shift:4},alto:{line_shift:3},soprano:{line_shift:1},percussion:{line_shift:0},"mezzo-soprano":{line_shift:2},"baritone-c":{line_shift:5},"baritone-f":{line_shift:5},subbass:{line_shift:7},french:{line_shift:-1}};Flow.keyProperties=(i,e,r)=>{e===void 0&&(e="treble");const s={octave_shift:0};typeof r=="object"&&Vex.Merge(s,r);const o=i.split("/");if(o.length<2)throw new Vex.RERR("BadArguments",`Key must have note + octave and an optional glyph: ${i}`);const a=o[0].toUpperCase(),l=Flow.keyProperties.note_values[a];if(!l)throw new Vex.RERR("BadArguments","Invalid key name: "+a);l.octave&&(o[1]=l.octave);let c=parseInt(o[1],10);c-=s.octave_shift;let m=(c*7-4*7+l.index)/2;m+=Flow.clefProperties(e).line_shift;let g=0;m<=0&&m*2%2===0&&(g=1),m>=6&&m*2%2===0&&(g=-1);const d=typeof l.int_val<"u"?c*12+l.int_val:null,y=l.code,A=l.shift_right;let b={};if(o.length>2&&o[2]){const S=o[2].toUpperCase();b=Flow.keyProperties.customNoteHeads[S]||{}}return{key:a,octave:c,line:m,int_value:d,accidental:l.accidental,code:y,stroke:g,shift_right:A,displaced:!1,...b}};Flow.keyProperties.note_values={C:{index:0,int_val:0,accidental:null},CN:{index:0,int_val:0,accidental:"n"},"C#":{index:0,int_val:1,accidental:"#"},"C##":{index:0,int_val:2,accidental:"##"},CB:{index:0,int_val:-1,accidental:"b"},CBB:{index:0,int_val:-2,accidental:"bb"},D:{index:1,int_val:2,accidental:null},DN:{index:1,int_val:2,accidental:"n"},"D#":{index:1,int_val:3,accidental:"#"},"D##":{index:1,int_val:4,accidental:"##"},DB:{index:1,int_val:1,accidental:"b"},DBB:{index:1,int_val:0,accidental:"bb"},E:{index:2,int_val:4,accidental:null},EN:{index:2,int_val:4,accidental:"n"},"E#":{index:2,int_val:5,accidental:"#"},"E##":{index:2,int_val:6,accidental:"##"},EB:{index:2,int_val:3,accidental:"b"},EBB:{index:2,int_val:2,accidental:"bb"},F:{index:3,int_val:5,accidental:null},FN:{index:3,int_val:5,accidental:"n"},"F#":{index:3,int_val:6,accidental:"#"},"F##":{index:3,int_val:7,accidental:"##"},FB:{index:3,int_val:4,accidental:"b"},FBB:{index:3,int_val:3,accidental:"bb"},G:{index:4,int_val:7,accidental:null},GN:{index:4,int_val:7,accidental:"n"},"G#":{index:4,int_val:8,accidental:"#"},"G##":{index:4,int_val:9,accidental:"##"},GB:{index:4,int_val:6,accidental:"b"},GBB:{index:4,int_val:5,accidental:"bb"},A:{index:5,int_val:9,accidental:null},AN:{index:5,int_val:9,accidental:"n"},"A#":{index:5,int_val:10,accidental:"#"},"A##":{index:5,int_val:11,accidental:"##"},AB:{index:5,int_val:8,accidental:"b"},ABB:{index:5,int_val:7,accidental:"bb"},B:{index:6,int_val:11,accidental:null},BN:{index:6,int_val:11,accidental:"n"},"B#":{index:6,int_val:12,accidental:"#"},"B##":{index:6,int_val:13,accidental:"##"},BB:{index:6,int_val:10,accidental:"b"},BBB:{index:6,int_val:9,accidental:"bb"},R:{index:6,int_val:9,rest:!0},X:{index:6,accidental:"",octave:4,code:"v3e",shift_right:5.5}};Flow.keyProperties.customNoteHeads={D0:{code:"v27",shift_right:0,stem_up_x_offset:0,stem_down_x_offset:0,stem_up_y_offset:-1,stem_down_y_offset:0},D1:{code:"v2d",shift_right:-.5},D2:{code:"v22",shift_right:-.5},D3:{code:"v70",shift_right:-.5},T0:{code:"v49",shift_right:-2,stem_up_y_offset:-4,stem_down_y_offset:4},T1:{code:"v93",shift_right:.5,stem_up_y_offset:-4,stem_down_y_offset:4},T2:{code:"v40",shift_right:.5,stem_up_y_offset:-4,stem_down_y_offset:4},T3:{code:"v7d",shift_right:.5,stem_up_y_offset:-4,stem_down_y_offset:4},TI:{code:"v11",shift_right:0,stem_up_y_shift:5,stem_down_y_shift:5,stem_up_x_offset:6,stem_down_x_offset:4},X0:{code:"v92",stem_up_x_offset:-2,stem_down_x_offset:0,stem_up_y_offset:4,stem_down_y_offset:4},X1:{code:"v95",shift_right:-.5,stem_up_y_offset:4,stem_down_y_offset:4},X2:{code:"v3e",shift_right:.5,stem_up_y_offset:4,stem_down_y_offset:4},X3:{code:"v3b",shift_right:0,stem_up_x_offset:-1.2,stem_down_x_offset:0,stem_up_y_offset:-1,stem_down_y_offset:2},S1:{code:"vd3",shift_right:0},S2:{code:"vd2",shift_right:0},R1:{code:"vd5",shift_right:0},R2:{code:"vd4",shift_right:0},rwl:{code:"rwl",shift_right:0},rhl:{code:"rhl",shift_right:0}};Flow.integerToNote=i=>{if(typeof i>"u")throw new Vex.RERR("BadArguments","Undefined integer for integerToNote");if(i<-2)throw new Vex.RERR("BadArguments",`integerToNote requires integer > -2: ${i}`);const e=Flow.integerToNote.table[i];if(!e)throw new Vex.RERR("BadArguments",`Unknown note value for integer: ${i}`);return e};Flow.integerToNote.table={0:"C",1:"C#",2:"D",3:"D#",4:"E",5:"F",6:"F#",7:"G",8:"G#",9:"A",10:"A#",11:"B"};Flow.tabToGlyph=(i,e=1)=>{let r=null,s=0,o=0;if(i.toString().toUpperCase()==="X"){const a=new Glyph("v7f",Flow.DEFAULT_TABLATURE_FONT_SCALE).getMetrics();r="v7f",s=a.width,o=-a.height/2}else s=Flow.textWidth(i.toString());return{text:i,code:r,getWidth:()=>s*e,shift_y:o}};Flow.textWidth=i=>7*i.toString().length;Flow.articulationCodes=i=>Flow.articulationCodes.articulations[i];Flow.articulationCodes.articulations={"a.":{code:"v23",between_lines:!0},av:{code:"v28",between_lines:!0},"a>":{code:"v42",between_lines:!0},"a-":{code:"v25",between_lines:!0},"a^":{code:"va",between_lines:!1},"a+":{code:"v8b",between_lines:!1},ao:{code:"v94",between_lines:!1},ah:{code:"vb9",between_lines:!1},"a@a":{code:"v43",between_lines:!1},"a@u":{code:"v5b",between_lines:!1},"a|":{code:"v75",between_lines:!1},am:{code:"v97",between_lines:!1},"a,":{code:"vb3",between_lines:!1}};Flow.accidentalCodes=i=>Flow.accidentalCodes.accidentals[i];Flow.accidentalCodes.accidentals={"#":{code:"v18",parenRightPaddingAdjustment:-1},"##":{code:"v7f",parenRightPaddingAdjustment:-1},b:{code:"v44",parenRightPaddingAdjustment:-2},bb:{code:"v26",parenRightPaddingAdjustment:-2},n:{code:"v4e",parenRightPaddingAdjustment:-1},"{":{code:"v9c",parenRightPaddingAdjustment:-1},"}":{code:"v84",parenRightPaddingAdjustment:-1},db:{code:"v9e",parenRightPaddingAdjustment:-1},d:{code:"vab",parenRightPaddingAdjustment:0},bbs:{code:"v90",parenRightPaddingAdjustment:-1},"++":{code:"v51",parenRightPaddingAdjustment:-1},"+":{code:"v78",parenRightPaddingAdjustment:-1},"+-":{code:"v8d",parenRightPaddingAdjustment:-1},"++-":{code:"v7a",parenRightPaddingAdjustment:-1},bs:{code:"vb7",parenRightPaddingAdjustment:-1},bss:{code:"v39",parenRightPaddingAdjustment:-1},o:{code:"vd0",parenRightPaddingAdjustment:-1},k:{code:"vd1",parenRightPaddingAdjustment:-1},ashs:{code:"vd6",parenRightPaddingAdjustment:-1},afhf:{code:"vd7",parenRightPaddingAdjustment:-1}};Flow.accidentalColumnsTable={1:{a:[1],b:[1]},2:{a:[1,2]},3:{a:[1,3,2],b:[1,2,1],second_on_bottom:[1,2,3]},4:{a:[1,3,4,2],b:[1,2,3,1],spaced_out_tetrachord:[1,2,1,2]},5:{a:[1,3,5,4,2],b:[1,2,4,3,1],spaced_out_pentachord:[1,2,3,2,1],very_spaced_out_pentachord:[1,2,1,2,1]},6:{a:[1,3,5,6,4,2],b:[1,2,4,5,3,1],spaced_out_hexachord:[1,3,2,1,3,2],very_spaced_out_hexachord:[1,2,1,2,1,2]}};Flow.ornamentCodes=i=>Flow.ornamentCodes.ornaments[i];Flow.ornamentCodes.ornaments={mordent:{code:"v1e"},mordent_inverted:{code:"v45"},turn:{code:"v72"},turn_inverted:{code:"v33"},tr:{code:"v1f"},upprall:{code:"v60"},downprall:{code:"vb4"},prallup:{code:"v6d"},pralldown:{code:"v2c"},upmordent:{code:"v29"},downmordent:{code:"v68"},lineprall:{code:"v20"},prallprall:{code:"v86"}};Flow.keySignature=i=>{const e=Flow.keySignature.keySpecs[i];if(!e)throw new Vex.RERR("BadKeySignature",`Bad key signature spec: '${i}'`);if(!e.acc)return[];const r=Flow.keySignature.accidentalList(e.acc),s=[];for(let o=0;o({b:[2,.5,2.5,1,3,1.5,3.5],"#":[0,1.5,-.5,1,2.5,.5,2]})[i];Flow.parseNoteDurationString=i=>{if(typeof i!="string")return null;const r=/(\d*\/?\d+|[a-z])(d*)([nrhms]|$)/.exec(i);if(!r)return null;const s=r[1],o=r[2].length;let a=r[3];return a.length===0&&(a="n"),{duration:s,dots:o,type:a}};Flow.parseNoteStruct=i=>{const e=i.duration,r=Flow.parseNoteDurationString(e);if(!r)return null;let s=Flow.durationToTicks(r.duration);if(s==null)return null;let o=i.type;const a=[];if(o){if(!Flow.getGlyphProps.validTypes[o])return null}else o=r.type||"n",i.keys!==void 0&&i.keys.forEach((u,m)=>{const g=u.split("/");g&&g.length===3&&(a[m]=g[2])});const l=i.dots?i.dots:r.dots;if(typeof l!="number")return null;let c=s;for(let u=0;u{const e=Flow.durationAliases[i];if(e!==void 0&&(i=e),Flow.durationToTicks.durations[i]===void 0)throw new Vex.RERR("BadArguments",`The provided duration is not valid: ${i}`);return i};Flow.durationToFraction=i=>new Fraction().parse(Flow.sanitizeDuration(i));Flow.durationToNumber=i=>Flow.durationToFraction(i).value();Flow.durationToTicks=i=>{i=Flow.sanitizeDuration(i);const e=Flow.durationToTicks.durations[i];return e===void 0?null:e};Flow.durationToTicks.durations={"1/2":Flow.RESOLUTION*2,1:Flow.RESOLUTION/1,2:Flow.RESOLUTION/2,4:Flow.RESOLUTION/4,8:Flow.RESOLUTION/8,16:Flow.RESOLUTION/16,32:Flow.RESOLUTION/32,64:Flow.RESOLUTION/64,128:Flow.RESOLUTION/128,256:Flow.RESOLUTION/256};Flow.durationAliases={w:"1",h:"2",q:"4",b:"256"};Flow.getGlyphProps=(i,e)=>{i=Flow.sanitizeDuration(i);const r=Flow.getGlyphProps.duration_codes[i];if(r===void 0)return null;e||(e="n");let s=r.type[e];if(s===void 0){const o=Flow.keyProperties.customNoteHeads[e.toUpperCase()];if(o===void 0)return null;s={code_head:o.code,...o}}return{...r.common,...s}};Flow.getGlyphProps.validTypes={n:{name:"note"},r:{name:"rest"},h:{name:"harmonic"},m:{name:"muted"},s:{name:"slash"}};Flow.getGlyphProps.duration_codes={"1/2":{common:{getWidth(i=Flow.DEFAULT_NOTATION_FONT_SCALE){return new Glyph(this.code_head||"v53",i).getMetrics().width},stem:!1,stem_offset:0,flag:!1,stem_up_extension:-Flow.STEM_HEIGHT,stem_down_extension:-Flow.STEM_HEIGHT,tabnote_stem_up_extension:-Flow.STEM_HEIGHT,tabnote_stem_down_extension:-Flow.STEM_HEIGHT,dot_shiftY:0,line_above:0,line_below:0},type:{n:{code_head:"v53"},h:{code_head:"v59"},m:{code_head:"vf",stem_offset:0},r:{code_head:"v31",rest:!0,position:"B/5",dot_shiftY:.5},s:{getWidth:()=>Flow.SLASH_NOTEHEAD_WIDTH,position:"B/4"}}},1:{common:{getWidth(i=Flow.DEFAULT_NOTATION_FONT_SCALE){return new Glyph(this.code_head||"v1d",i).getMetrics().width},stem:!1,stem_offset:0,flag:!1,stem_up_extension:-Flow.STEM_HEIGHT,stem_down_extension:-Flow.STEM_HEIGHT,tabnote_stem_up_extension:-Flow.STEM_HEIGHT,tabnote_stem_down_extension:-Flow.STEM_HEIGHT,dot_shiftY:0,line_above:0,line_below:0},type:{n:{code_head:"v1d"},h:{code_head:"v46"},m:{code_head:"v92",stem_offset:-3},r:{code_head:"v5c",rest:!0,position:"D/5",dot_shiftY:.5},s:{getWidth:()=>Flow.SLASH_NOTEHEAD_WIDTH,position:"B/4"}}},2:{common:{getWidth(i=Flow.DEFAULT_NOTATION_FONT_SCALE){return new Glyph(this.code_head||"v81",i).getMetrics().width},stem:!0,stem_offset:0,flag:!1,stem_up_extension:0,stem_down_extension:0,tabnote_stem_up_extension:0,tabnote_stem_down_extension:0,dot_shiftY:0,line_above:0,line_below:0},type:{n:{code_head:"v81"},h:{code_head:"v2d"},m:{code_head:"v95",stem_offset:-3},r:{code_head:"vc",stem:!1,rest:!0,position:"B/4",dot_shiftY:-.5},s:{getWidth:()=>Flow.SLASH_NOTEHEAD_WIDTH,position:"B/4"}}},4:{common:{getWidth(i=Flow.DEFAULT_NOTATION_FONT_SCALE){return new Glyph(this.code_head||"vb",i).getMetrics().width},stem:!0,stem_offset:0,flag:!1,stem_up_extension:0,stem_down_extension:0,tabnote_stem_up_extension:0,tabnote_stem_down_extension:0,dot_shiftY:0,line_above:0,line_below:0},type:{n:{code_head:"vb"},h:{code_head:"v22"},m:{code_head:"v3e",stem_offset:-3},r:{code_head:"v7c",stem:!1,rest:!0,position:"B/4",dot_shiftY:-.5,line_above:1.5,line_below:1.5},s:{getWidth:()=>Flow.SLASH_NOTEHEAD_WIDTH,position:"B/4"}}},8:{common:{getWidth(i=Flow.DEFAULT_NOTATION_FONT_SCALE){return new Glyph(this.code_head||"vb",i).getMetrics().width},stem:!0,stem_offset:0,flag:!0,beam_count:1,code_flag_upstem:"v54",code_flag_downstem:"v9a",stem_up_extension:0,stem_down_extension:0,tabnote_stem_up_extension:0,tabnote_stem_down_extension:0,dot_shiftY:0,line_above:0,line_below:0},type:{n:{code_head:"vb"},h:{code_head:"v22"},m:{code_head:"v3e"},r:{code_head:"va5",stem:!1,flag:!1,rest:!0,position:"B/4",dot_shiftY:-.5,line_above:1,line_below:1},s:{getWidth:()=>Flow.SLASH_NOTEHEAD_WIDTH,position:"B/4"}}},16:{common:{beam_count:2,getWidth(i=Flow.DEFAULT_NOTATION_FONT_SCALE){return new Glyph(this.code_head||"vb",i).getMetrics().width},stem:!0,stem_offset:0,flag:!0,code_flag_upstem:"v3f",code_flag_downstem:"v8f",stem_up_extension:0,stem_down_extension:0,tabnote_stem_up_extension:0,tabnote_stem_down_extension:0,dot_shiftY:0,line_above:0,line_below:0},type:{n:{code_head:"vb"},h:{code_head:"v22"},m:{code_head:"v3e"},r:{code_head:"v3c",stem:!1,flag:!1,rest:!0,position:"B/4",dot_shiftY:-.5,line_above:1,line_below:2},s:{getWidth:()=>Flow.SLASH_NOTEHEAD_WIDTH,position:"B/4"}}},32:{common:{beam_count:3,getWidth(i=Flow.DEFAULT_NOTATION_FONT_SCALE){return new Glyph(this.code_head||"vb",i).getMetrics().width},stem:!0,stem_offset:0,flag:!0,code_flag_upstem:"v47",code_flag_downstem:"v2a",stem_up_extension:9,stem_down_extension:9,tabnote_stem_up_extension:8,tabnote_stem_down_extension:5,dot_shiftY:0,line_above:0,line_below:0},type:{n:{code_head:"vb"},h:{code_head:"v22"},m:{code_head:"v3e"},r:{code_head:"v55",stem:!1,flag:!1,rest:!0,position:"B/4",dot_shiftY:-1.5,line_above:2,line_below:2},s:{getWidth:()=>Flow.SLASH_NOTEHEAD_WIDTH,position:"B/4"}}},64:{common:{beam_count:4,getWidth(i=Flow.DEFAULT_NOTATION_FONT_SCALE){return new Glyph(this.code_head||"vb",i).getMetrics().width},stem:!0,stem_offset:0,flag:!0,code_flag_upstem:"va9",code_flag_downstem:"v58",stem_up_extension:13,stem_down_extension:13,tabnote_stem_up_extension:12,tabnote_stem_down_extension:9,dot_shiftY:0,line_above:0,line_below:0},type:{n:{code_head:"vb"},h:{code_head:"v22"},m:{code_head:"v3e"},r:{code_head:"v38",stem:!1,flag:!1,rest:!0,position:"B/4",dot_shiftY:-1.5,line_above:2,line_below:3},s:{getWidth:()=>Flow.SLASH_NOTEHEAD_WIDTH,position:"B/4"}}},128:{common:{beam_count:5,getWidth(i=Flow.DEFAULT_NOTATION_FONT_SCALE){return new Glyph(this.code_head||"vb",i).getMetrics().width},stem:!0,stem_offset:0,flag:!0,code_flag_upstem:"v9b",code_flag_downstem:"v30",stem_up_extension:22,stem_down_extension:22,tabnote_stem_up_extension:21,tabnote_stem_down_extension:18,dot_shiftY:0,line_above:0,line_below:0},type:{n:{code_head:"vb"},h:{code_head:"v22"},m:{code_head:"v3e"},r:{code_head:"vaa",stem:!1,flag:!1,rest:!0,position:"B/4",dot_shiftY:1.5,line_above:3,line_below:3},s:{getWidth:()=>Flow.SLASH_NOTEHEAD_WIDTH,position:"B/4"}}}};Flow.smufl={};Flow.smufl.to_code_points={bracketTop:"v1b",bracketBottom:"v10",barlineTick:"v6f",segno:"v8c",coda:"v4d",gClef:"v83",cClef:"vad",fClef:"v79",unpitchedPercussionClef1:"v59","6stringTabClef":"v2f",timeSig0:"v0",timeSig1:"v1",timeSig2:"v2",timeSig3:"v3",timeSig4:"v4",timeSig5:"v5",timeSig6:"v6",timeSig7:"v7",timeSig8:"v8",timeSig9:"v9",timeSigCommon:"v41",timeSigCutCommon:"vb6",noteheadDoubleWhole:"v53",noteheadWhole:"v1d",noteheadHalf:"v81",noteheadBlack:"vb",noteheadXWhole:"v92",noteheadXHalf:"v95",noteheadXBlack:"v3e",noteheadCircleX:"v3b",noteheadTriangleUpWhole:"v49",noteheadTriangleUpHalf:"v93",noteheadTriangleUpBlack:"v40",noteheadDiamondWhole:"v46",noteheadDiamondHalf:"v2d",noteheadDiamondBlack:"v22",augmentationDot:"v23",tremolo1:"v74",flag8thUp:"v54",flag8thDown:"v9a",flag16thUp:"v3f",flag16thDown:"v8f",flag32ndUp:"v47",flag32ndDown:"v2a",flag64thUp:"va9",flag64thDown:"v58",flag128thUp:"v9b",flag128thDown:"v30",accidentalFlat:"v44",accidentalNatural:"v4e",accidentalSharp:"v18",accidentalDoubleSharp:"v7f",accidentalDoubleFlat:"v26",accidentalParensLeft:"v9c",accidentalParensRight:"v84",accidentalQuarterToneFlatStein:"vab",accidentalThreeQuarterTonesFlatZimmermann:"v9e",accidentalQuarterToneSharpStein:"v78",accidentalThreeQuarterTonesSharpStein:"v51",accidentalBuyukMucennebFlat:"v39",accidentalBakiyeFlat:"vb7",accidentalKomaSharp:"v51",accidentalKucukMucennebSharp:"v8d",accidentalKoron:"vd1",accidentalSori:"vd0",articAccentAbove:"v42",articAccentBelow:"v42",articTenutoAbove:"v25",articTenutoBelow:"v25",articStaccatoAbove:"v23",articStaccatoBelow:"v23",articStaccatissimoAbove:"v28",articMarcatoAbove:"va",fermataAbove:"v43",fermataBelow:"v5b",breathMarkComma:"v6c",breathMarkUpbow:"v8a",caesura:"v34",caesuraCurved:"v4b",restMaxima:"v59",restDoubleWhole:"v31",restWhole:"v5c",restHalf:"vc",restQuarter:"v7c",rest8th:"va5",rest16th:"v3c",rest32nd:"v55",rest64th:"v38",rest128th:"vaa",dynamicPiano:"vbf",dynamicMezzo:"v62",dynamicForte:"vba",dynamicRinforzando:"vba",dynamicSforzando:"v4a",dynamicZ:"v80",ornamentTrill:"v1f",ornamentTurn:"v72",ornamentTurnSlash:"v33",ornamentMordent:"v45",ornamentMordentInverted:"v1e",ornamentTremblement:"v86",ornamentPrecompAppoggTrill:"v20",ornamentPrecompSlideTrillDAnglebert:"v60",ornamentPrecompSlideTrillBach:"v29",ornamentPrecompTrillSuffixDandrieu:"v6d",ornamentPrecompDoubleCadenceUpperPrefix:"vb4",ornamentPrecompDoubleCadenceUpperPrefixTurn:"v68",ornamentPrecompTrillLowerSuffix:"v2c",stringsDownBow:"v94",stringsUpBow:"v75",stringsHarmonic:"vb9",pluckedSnapPizzicatoAbove:"v94",pluckedLeftHandPizzicato:"v8b",keyboardPedalPed:"v36",keyboardPedalUp:"v5d",pictChokeCymbal:"vb3",wiggleArpeggiatoUp:"va3",arrowheadBlackUp:"vc3",arrowheadBlackDown:"v52"};Flow.TIME4_4={num_beats:4,beat_value:4,resolution:Flow.RESOLUTION};class CanvasContext{static get WIDTH(){return 600}static get HEIGHT(){return 400}static get CANVAS_BROWSER_SIZE_LIMIT(){return 32767}static SanitizeCanvasDims(e,r){return Math.max(e,r)>this.CANVAS_BROWSER_SIZE_LIMIT&&(Vex.W("Canvas dimensions exceed browser limit. Cropping to "+this.CANVAS_BROWSER_SIZE_LIMIT),e>this.CANVAS_BROWSER_SIZE_LIMIT&&(e=this.CANVAS_BROWSER_SIZE_LIMIT),r>this.CANVAS_BROWSER_SIZE_LIMIT&&(r=this.CANVAS_BROWSER_SIZE_LIMIT)),[e,r]}constructor(e){this.vexFlowCanvasContext=e,e.canvas?this.canvas=e.canvas:this.canvas={width:CanvasContext.WIDTH,height:CanvasContext.HEIGHT}}clear(){this.vexFlowCanvasContext.clearRect(0,0,this.canvas.width,this.canvas.height)}openGroup(){}closeGroup(){}add(){}setFont(e,r,s){return this.vexFlowCanvasContext.font=(s||"")+" "+r+"pt "+e,this}setRawFont(e){return this.vexFlowCanvasContext.font=e,this}setFillStyle(e){return this.vexFlowCanvasContext.fillStyle=e,this}setBackgroundFillStyle(e){return this.background_fillStyle=e,this}setStrokeStyle(e){return this.vexFlowCanvasContext.strokeStyle=e,this}setShadowColor(e){return this.vexFlowCanvasContext.shadowColor=e,this}setShadowBlur(e){return this.vexFlowCanvasContext.shadowBlur=e,this}setLineWidth(e){return this.vexFlowCanvasContext.lineWidth=e,this}setLineCap(e){return this.vexFlowCanvasContext.lineCap=e,this}setLineDash(e){return this.vexFlowCanvasContext.lineDash=e,this}scale(e,r){return this.vexFlowCanvasContext.scale(parseFloat(e),parseFloat(r))}resize(e,r){return[e,r]=this.SanitizeCanvasDims(parseInt(e,10),parseInt(r,10)),this.vexFlowCanvasContext.resize(e,r)}rect(e,r,s,o){return this.vexFlowCanvasContext.rect(e,r,s,o)}fillRect(e,r,s,o){return this.vexFlowCanvasContext.fillRect(e,r,s,o)}clearRect(e,r,s,o){return this.vexFlowCanvasContext.clearRect(e,r,s,o)}beginPath(){return this.vexFlowCanvasContext.beginPath()}moveTo(e,r){return this.vexFlowCanvasContext.moveTo(e,r)}lineTo(e,r){return this.vexFlowCanvasContext.lineTo(e,r)}bezierCurveTo(e,r,s,o,a,l){return this.vexFlowCanvasContext.bezierCurveTo(e,r,s,o,a,l)}quadraticCurveTo(e,r,s,o){return this.vexFlowCanvasContext.quadraticCurveTo(e,r,s,o)}arc(e,r,s,o,a,l){return this.vexFlowCanvasContext.arc(e,r,s,o,a,l)}glow(){return this.vexFlowCanvasContext.glow()}fill(){return this.vexFlowCanvasContext.fill()}stroke(){return this.vexFlowCanvasContext.stroke()}closePath(){return this.vexFlowCanvasContext.closePath()}measureText(e){return this.vexFlowCanvasContext.measureText(e)}fillText(e,r,s){return this.vexFlowCanvasContext.fillText(e,r,s)}save(){return this.vexFlowCanvasContext.save()}restore(){return this.vexFlowCanvasContext.restore()}}class RaphaelContext{constructor(e){this.element=e,this.paper=Raphael(e),this.path="",this.pen={x:0,y:0},this.lineWidth=1,this.state={scale:{x:1,y:1},font_family:"Arial",font_size:8,font_weight:800},this.attributes={"stroke-width":.3,fill:"black",stroke:"black",font:"10pt Arial"},this.background_attributes={"stroke-width":0,fill:"white",stroke:"white",font:"10pt Arial"},this.shadow_attributes={width:0,color:"black"},this.state_stack=[]}openGroup(){}closeGroup(){}add(){}setFont(e,r,s){return this.state.font_family=e,this.state.font_size=r,this.state.font_weight=s,this.attributes.font=(this.state.font_weight||"")+" "+this.state.font_size*this.state.scale.x+"pt "+this.state.font_family,this}setRawFont(e){return this.attributes.font=e,this}setFillStyle(e){return this.attributes.fill=e,this}setBackgroundFillStyle(e){return this.background_attributes.fill=e,this.background_attributes.stroke=e,this}setStrokeStyle(e){return this.attributes.stroke=e,this}setShadowColor(e){return this.shadow_attributes.color=e,this}setShadowBlur(e){return this.shadow_attributes.width=e,this}setLineWidth(e){this.attributes["stroke-width"]=e,this.lineWidth=e}setLineDash(){return this}setLineCap(){return this}scale(e,r){return this.state.scale={x:e,y:r},this.attributes.transform="S"+e+","+r+",0,0",this.attributes.scale=e+","+r+",0,0",this.attributes.font=this.state.font_size*this.state.scale.x+"pt "+this.state.font_family,this.background_attributes.transform="S"+e+","+r+",0,0",this.background_attributes.font=this.state.font_size*this.state.scale.x+"pt "+this.state.font_family,this}clear(){this.paper.clear()}resize(e,r){return this.element.style.width=e,this.paper.setSize(e,r),this}setViewBox(e){this.paper.canvas.setAttribute("viewBox",e)}rect(e,r,s,o){return o<0&&(r+=o,o=-o),this.paper.rect(e,r,s-.5,o-.5).attr(this.attributes).attr("fill","none").attr("stroke-width",this.lineWidth),this}fillRect(e,r,s,o){return o<0&&(r+=o,o=-o),this.paper.rect(e,r,s-.5,o-.5).attr(this.attributes),this}clearRect(e,r,s,o){return o<0&&(r+=o,o=-o),this.paper.rect(e,r,s-.5,o-.5).attr(this.background_attributes),this}beginPath(){return this.path="",this.pen.x=0,this.pen.y=0,this}moveTo(e,r){return this.path+="M"+e+","+r,this.pen.x=e,this.pen.y=r,this}lineTo(e,r){return this.path+="L"+e+","+r,this.pen.x=e,this.pen.y=r,this}bezierCurveTo(e,r,s,o,a,l){return this.path+="C"+e+","+r+","+s+","+o+","+a+","+l,this.pen.x=a,this.pen.y=l,this}quadraticCurveTo(e,r,s,o){return this.path+="Q"+e+","+r+","+s+","+o,this.pen.x=s,this.pen.y=o,this}arc(e,r,s,o,a,l){function c(m){for(;m<0;)m+=Math.PI*2;for(;m>Math.PI*2;)m-=Math.PI*2;return m}if(o=c(o),a=c(a),o>a){const m=o;o=a,a=m,l=!l}const u=a-o;return u>Math.PI?(this.arcHelper(e,r,s,o,o+u/2,l),this.arcHelper(e,r,s,o+u/2,a,l)):this.arcHelper(e,r,s,o,a,l),this}arcHelper(e,r,s,o,a,l){const c=e+s*Math.cos(o),u=r+s*Math.sin(o),m=e+s*Math.cos(a),g=r+s*Math.sin(a);let d=0,y=0;l?(y=1,a-oMath.PI&&(d=1),this.path+="M"+c+","+u+",A"+s+","+s+",0,"+d+","+y+","+m+","+g+"M"+this.pen.x+","+this.pen.y}glow(){const e=this.paper.set();if(this.shadow_attributes.width>0){const r=this.shadow_attributes,s=r.width/2;for(let o=1;o<=s;o++)e.push(this.paper.path(this.path).attr({stroke:r.color,"stroke-linejoin":"round","stroke-linecap":"round","stroke-width":+(r.width/s*o).toFixed(3),opacity:+((r.opacity||.3)/s).toFixed(3),transform:this.attributes.transform,scale:this.attributes.scale}))}return e}fill(){const e=this.paper.path(this.path).attr(this.attributes).attr("stroke-width",0);return this.glow(e),this}stroke(){const e=this.lineWidth*(this.state.scale.x+this.state.scale.y)/2,r=this.paper.path(this.path).attr(this.attributes).attr("fill","none").attr("stroke-width",e);return this.glow(r),this}closePath(){return this.path+="Z",this}measureText(e){const r=this.paper.text(0,0,e).attr(this.attributes).attr("fill","none").attr("stroke","none"),s=r.getBBox();return r.remove(),{width:s.width,height:s.height}}fillText(e,r,s){return this.paper.text(r+this.measureText(e).width/2,s-this.state.font_size/(2.25*this.state.scale.y),e).attr(this.attributes),this}save(){return this.state_stack.push({state:{font_family:this.state.font_family},attributes:{font:this.attributes.font,fill:this.attributes.fill,stroke:this.attributes.stroke,"stroke-width":this.attributes["stroke-width"]},shadow_attributes:{width:this.shadow_attributes.width,color:this.shadow_attributes.color}}),this}restore(){const e=this.state_stack.pop();return this.state.font_family=e.state.font_family,this.attributes.font=e.attributes.font,this.attributes.fill=e.attributes.fill,this.attributes.stroke=e.attributes.stroke,this.attributes["stroke-width"]=e.attributes["stroke-width"],this.shadow_attributes.width=e.shadow_attributes.width,this.shadow_attributes.color=e.shadow_attributes.color,this}}const attrNamesToIgnoreMap={path:{x:!0,y:!0,width:!0,height:!0},rect:{},text:{width:!0,height:!0}};{const i={"font-family":!0,"font-weight":!0,"font-style":!0,"font-size":!0};Vex.Merge(attrNamesToIgnoreMap.rect,i),Vex.Merge(attrNamesToIgnoreMap.path,i)}class SVGContext{constructor(e){this.element=e,this.svgNS="http://www.w3.org/2000/svg";const r=this.create("svg");this.element.appendChild(r),this.svg=r,this.groups=[this.svg],this.parent=this.svg,this.path="",this.pen={x:NaN,y:NaN},this.lineWidth=1,this.state={scale:{x:1,y:1},"font-family":"Arial","font-size":"8pt","font-weight":"normal"},this.attributes={"stroke-width":.3,fill:"black",stroke:"black","stroke-dasharray":"none","font-family":"Arial","font-size":"10pt","font-weight":"normal","font-style":"normal"},this.background_attributes={"stroke-width":0,fill:"white",stroke:"white","stroke-dasharray":"none","font-family":"Arial","font-size":"10pt","font-weight":"normal","font-style":"normal"},this.shadow_attributes={width:0,color:"black"},this.state_stack=[],this.iePolyfill()}create(e){return document.createElementNS(this.svgNS,e)}openGroup(e,r,s,o){const a=this.create("g");return this.groups.push(a),this.parent.appendChild(a),this.parent=a,e&&a.setAttribute("class",Vex.Prefix(e)),r&&a.setAttribute("id",Vex.Prefix(r)),s&&s.pointerBBox&&a.setAttribute("pointer-events","bounding-box"),o&&o==="isX"&&(a.style.transformOrigin="center",a.style.transformBox="content-box",a.style.transform="scale(1.5) translateY(-5px)"),a}closeGroup(e){if(e&&e==="transform"){const r=this.groups.pop();let s=r.getAttribute("class");s=s+" vf-stopDot",r.setAttribute("class",s)}else this.groups.pop();this.parent=this.groups[this.groups.length-1]}add(e){this.parent.appendChild(e)}iePolyfill(){typeof navigator<"u"&&(this.ie=/MSIE 9/i.test(navigator.userAgent)||/MSIE 10/i.test(navigator.userAgent)||/rv:11\.0/i.test(navigator.userAgent)||/Trident/i.test(navigator.userAgent))}setFont(e,r,s){let o=!1,a=!1,l="normal";typeof s=="string"&&(s.indexOf("italic")!==-1&&(s=s.replace(/italic/g,""),a=!0),s.indexOf("bold")!==-1&&(s=s.replace(/bold/g,""),o=!0),s=s.replace(/ /g,"")),s=o?"bold":s,s=typeof s>"u"||s===""?"normal":s,l=a?"italic":l;const c={"font-family":e,"font-size":r+"pt","font-weight":s,"font-style":l};return this.fontSize=Number(r),Vex.Merge(this.attributes,c),Vex.Merge(this.state,c),this}setRawFont(e){e=e.trim();const r=e.split(" ");return this.attributes["font-family"]=r[1],this.state["font-family"]=r[1],this.attributes["font-size"]=r[0],this.state["font-size"]=r[0],this.fontSize=Number(r[0].match(/\d+/)),this}setFillStyle(e){return this.attributes.fill=e,this}setBackgroundFillStyle(e){return this.background_attributes.fill=e,this.background_attributes.stroke=e,this}setStrokeStyle(e){return this.attributes.stroke=e,this}setShadowColor(e){return this.shadow_attributes.color=e,this}setShadowBlur(e){return this.shadow_attributes.width=e,this}setLineWidth(e){this.attributes["stroke-width"]=e,this.lineWidth=e}setLineDash(e){if(Object.prototype.toString.call(e)==="[object Array]")return e=e.join(", "),this.attributes["stroke-dasharray"]=e,this;throw new Vex.RERR("ArgumentError","lineDash must be an array of integers.")}setLineCap(e){return this.attributes["stroke-linecap"]=e,this}resize(e,r){this.width=e,this.height=r,this.element.style.width=e;const s={width:e,height:r};return this.applyAttributes(this.svg,s),this.scale(this.state.scale.x,this.state.scale.y),this}scale(e,r){this.state.scale={x:e,y:r};const s=this.width/e,o=this.height/r;return this.setViewBox(0,0,s,o),this}setViewBox(...e){if(e.length===1){const[r]=e;this.svg.setAttribute("viewBox",r)}else{const[r,s,o,a]=e,l=r+" "+s+" "+o+" "+a;this.svg.setAttribute("viewBox",l)}}applyAttributes(e,r){const s=attrNamesToIgnoreMap[e.nodeName];return Object.keys(r).forEach(o=>{var a;s&&s[o]||!o||!r[o]||o==="d"&&((a=r[o])==null?void 0:a.indexOf("NaN"))>-1||e.setAttributeNS(null,o,r[o])}),e}clear(){for(;this.svg.lastChild;)this.svg.removeChild(this.svg.lastChild);this.scale(this.state.scale.x,this.state.scale.y)}rect(e,r,s,o,a){o<0&&(r+=o,o*=-1);const l=this.create("rect");return typeof a>"u"&&(a={fill:"none","stroke-width":this.lineWidth,stroke:this.attributes.stroke}),Vex.Merge(a,{x:e,y:r,width:s,height:o}),this.applyAttributes(l,a),this.add(l),this}fillRect(e,r,s,o){return o<0&&(r+=o,o*=-1),this.rect(e,r,s,o,this.attributes),this}clearRect(e,r,s,o){return this.rect(e,r,s,o,this.background_attributes),this}beginPath(){return this.path="",this.pen.x=NaN,this.pen.y=NaN,this}moveTo(e,r){return this.path+="M"+e+" "+r,this.pen.x=e,this.pen.y=r,this}lineTo(e,r){return this.path+="L"+e+" "+r,this.pen.x=e,this.pen.y=r,this}bezierCurveTo(e,r,s,o,a,l){return this.path+="C"+e+" "+r+","+s+" "+o+","+a+" "+l,this.pen.x=a,this.pen.y=l,this}quadraticCurveTo(e,r,s,o){return this.path+="Q"+e+" "+r+","+s+" "+o,this.pen.x=s,this.pen.y=o,this}arc(e,r,s,o,a,l){function c(m){for(;m<0;)m+=Math.PI*2;for(;m>Math.PI*2;)m-=Math.PI*2;return m}if(o=c(o),a=c(a),o>a){const m=o;o=a,a=m,l=!l}const u=a-o;return u>Math.PI?(this.arcHelper(e,r,s,o,o+u/2,l),this.arcHelper(e,r,s,o+u/2,a,l)):this.arcHelper(e,r,s,o,a,l),this}arcHelper(e,r,s,o,a,l){const c=e+s*Math.cos(o),u=r+s*Math.sin(o),m=e+s*Math.cos(a),g=r+s*Math.sin(a);let d=0,y=0;l?(y=1,a-oMath.PI&&(d=1),this.path+="M"+c+" "+u+" A"+s+" "+s+" 0 "+d+" "+y+" "+m+" "+g,!isNaN(this.pen.x)&&!isNaN(this.pen.y)&&(this.peth+="M"+this.pen.x+" "+this.pen.y)}closePath(){return this.path+="Z",this}glow(){if(this.shadow_attributes.width>0){const e=this.shadow_attributes,r=e.width/2;for(let s=1;s<=r;s++){const o={stroke:e.color,"stroke-linejoin":"round","stroke-linecap":"round","stroke-width":+(e.width*.4/r*s).toFixed(3),opacity:+((e.opacity||.3)/r).toFixed(3)},a=this.create("path");o.d=this.path,this.applyAttributes(a,o),this.add(a)}}return this}fill(e){this.glow();const r=this.create("path");let s=e;return typeof e>"u"?(e={},Vex.Merge(e,this.attributes),e.stroke="none",s=e):(s=e,Vex.Merge(s,this.attributes),e.class&&(s.class=e.class),e.id&&(s.id=e.id)),e.d=this.path,this.applyAttributes(r,e),this.add(r),this}stroke(e=void 0){this.glow();const r=this.create("path"),s={};return Vex.Merge(s,this.attributes),e&&Vex.Merge(s,e),s.fill="none",s["stroke-width"]=this.lineWidth,s.d=this.path,this.applyAttributes(r,s),this.add(r),this}measureText(e){const r=this.create("text");if(typeof r.getBBox!="function")return{x:0,y:0,width:0,height:0};r.textContent=e,this.applyAttributes(r,this.attributes),this.svg.appendChild(r);let s=r.getBBox();return this.ie&&e!==""&&this.attributes["font-style"]==="italic"&&(s=this.ieMeasureTextFix(s,e)),this.svg.removeChild(r),s}ieMeasureTextFix(e){const r=Number(this.fontSize),s=1.196,o=1.9598,a=s*r+o,l=e.width-a,c=e.height-1.5;return{x:e.x,y:e.y,width:l,height:c}}fillText(e,r,s){if(!e||e.length<=0)return;const o={};Vex.Merge(o,this.attributes),o.stroke="none",o.x=r,o.y=s;const a=this.create("text");a.textContent=e,this.applyAttributes(a,o),this.add(a)}save(){return this.state_stack.push({state:{"font-family":this.state["font-family"],"font-weight":this.state["font-weight"],"font-style":this.state["font-style"],"font-size":this.state["font-size"],scale:this.state.scale},attributes:{"font-family":this.attributes["font-family"],"font-weight":this.attributes["font-weight"],"font-style":this.attributes["font-style"],"font-size":this.attributes["font-size"],fill:this.attributes.fill,stroke:this.attributes.stroke,"stroke-width":this.attributes["stroke-width"],"stroke-dasharray":this.attributes["stroke-dasharray"]},shadow_attributes:{width:this.shadow_attributes.width,color:this.shadow_attributes.color},lineWidth:this.lineWidth}),this}restore(){const e=this.state_stack.pop();return this.state["font-family"]=e.state["font-family"],this.state["font-weight"]=e.state["font-weight"],this.state["font-style"]=e.state["font-style"],this.state["font-size"]=e.state["font-size"],this.state.scale=e.state.scale,this.attributes["font-family"]=e.attributes["font-family"],this.attributes["font-weight"]=e.attributes["font-weight"],this.attributes["font-style"]=e.attributes["font-style"],this.attributes["font-size"]=e.attributes["font-size"],this.attributes.fill=e.attributes.fill,this.attributes.stroke=e.attributes.stroke,this.attributes["stroke-width"]=e.attributes["stroke-width"],this.attributes["stroke-dasharray"]=e.attributes["stroke-dasharray"],this.shadow_attributes.width=e.shadow_attributes.width,this.shadow_attributes.color=e.shadow_attributes.color,this.lineWidth=e.lineWidth,this}}let lastContext=null;class Renderer{static get Backends(){return{CANVAS:1,RAPHAEL:2,SVG:3,VML:4}}static get LineEndType(){return{NONE:1,UP:2,DOWN:3}}static get USE_CANVAS_PROXY(){return!1}static get lastContext(){return lastContext}static set lastContext(e){lastContext=e}static buildContext(e,r,s,o,a){const l=new Renderer(e,r);s&&o&&l.resize(s,o),a||(a="#FFF");const c=l.getContext();return c.setBackgroundFillStyle(a),Renderer.lastContext=c,c}static getCanvasContext(e,r,s,o){return Renderer.buildContext(e,Renderer.Backends.CANVAS,r,s,o)}static getRaphaelContext(e,r,s,o){return Renderer.buildContext(e,Renderer.Backends.RAPHAEL,r,s,o)}static getSVGContext(e,r,s,o){return Renderer.buildContext(e,Renderer.Backends.SVG,r,s,o)}static bolsterCanvasContext(e){if(Renderer.USE_CANVAS_PROXY)return new CanvasContext(e);const r=["clear","setFont","setRawFont","setFillStyle","setBackgroundFillStyle","setStrokeStyle","setShadowColor","setShadowBlur","setLineWidth","setLineCap","setLineDash","openGroup","closeGroup","getGroup"];return e.vexFlowCanvasContext=e,r.forEach(s=>{e[s]=e[s]||CanvasContext.prototype[s]}),e}static drawDashedLine(e,r,s,o,a,l){e.beginPath();const c=o-r,u=a-s,m=Math.atan2(u,c);let g=r,d=s;e.moveTo(r,s);let y=0,A=!0;for(;!((c<0?g<=o:g>=o)&&(u<0?d<=a:d>=a));){const b=l[y++%l.length],S=g+Math.cos(m)*b;g=c<0?Math.max(o,S):Math.min(o,S);const E=d+Math.sin(m)*b;d=u<0?Math.max(a,E):Math.min(a,E),A?e.lineTo(g,d):e.moveTo(g,d),A=!A}e.closePath(),e.stroke()}constructor(e,r){if(this.elementId=e,!this.elementId)throw new Vex.RERR("BadArgument","Invalid id for renderer.");if(this.element=document.getElementById(e),this.element||(this.element=e),this.ctx=null,this.paper=null,this.backend=r,this.backend===Renderer.Backends.CANVAS){if(!this.element.getContext)throw new Vex.RERR("BadElement",`Can't get canvas context from element: ${e}`);this.ctx=Renderer.bolsterCanvasContext(this.element.getContext("2d",{willReadFrequently:!0}))}else if(this.backend===Renderer.Backends.RAPHAEL)this.ctx=new RaphaelContext(this.element);else if(this.backend===Renderer.Backends.SVG)this.ctx=new SVGContext(this.element);else throw new Vex.RERR("InvalidBackend",`No support for backend: ${this.backend}`)}resize(e,r){if(this.backend===Renderer.Backends.CANVAS){if(!this.element.getContext)throw new Vex.RERR("BadElement",`Can't get canvas context from element: ${this.elementId}`);[e,r]=CanvasContext.SanitizeCanvasDims(e,r);const s=window.devicePixelRatio||1;this.element.width=e*s,this.element.height=r*s,this.element.style.width=e+"px",this.element.style.height=r+"px",this.ctx=Renderer.bolsterCanvasContext(this.element.getContext("2d",{willReadFrequently:!0})),this.ctx.scale(s,s)}else this.ctx.resize(e,r);return this}getContext(){return this.ctx}}function L$j(...i){Stem.DEBUG&&Vex.L("Vex.Flow.Stem",i)}class Stem extends Element$1{static get CATEGORY(){return"stem"}static get UP(){return 1}static get DOWN(){return-1}static get WIDTH(){return Flow.STEM_WIDTH}static get HEIGHT(){return Flow.STEM_HEIGHT}constructor(e={}){super(),this.setAttribute("type","Stem"),this.x_begin=e.x_begin||0,this.x_end=e.x_end||0,this.y_top=e.y_top||0,this.y_bottom=e.y_bottom||0,this.stem_extension=e.stem_extension||0,this.stem_direction=e.stem_direction||0,this.hide=e.hide||!1,this.isStemlet=e.isStemlet||!1,this.stemletHeight=e.stemletHeight||0,this.renderHeightAdjustment=0,this.setOptions(e)}setResetHeight(e){this.resetHeight=e}setOptions(e){this.stem_up_y_offset=e.stem_up_y_offset||0,this.stem_down_y_offset=e.stem_down_y_offset||0}setNoteHeadXBounds(e,r){return this.x_begin=e,this.x_end=r,this}setDirection(e){this.stem_direction=e}setExtension(e){this.stem_extension=e}getExtension(){return this.stem_extension}setYBounds(e,r){this.y_top=e,this.y_bottom=r}getCategory(){return Stem.CATEGORY}getHeight(){const e=this.stem_direction===Stem.UP?this.stem_up_y_offset:this.stem_down_y_offset;return(this.y_bottom-this.y_top)*this.stem_direction+(Stem.HEIGHT-e+this.stem_extension)*this.stem_direction}getBoundingBox(){throw new Vex.RERR("NotImplemented","getBoundingBox() not implemented.")}getExtents(){const e=this.stem_direction===Stem.UP,r=[this.y_top,this.y_bottom],s=Stem.HEIGHT+this.stem_extension,o=(e?Math.min:Math.max)(...r),a=(e?Math.max:Math.min)(...r);return{topY:o+s*-this.stem_direction,baseY:a}}setVisibility(e){return this.hide=!e,this}setStemlet(e,r){return this.isStemlet=e,this.stemletHeight=r,this}draw(){if(this.setRendered(),this.hide)return;const e=this.checkContext();let r,s;const o=this.stem_direction;o===Stem.DOWN?(r=this.x_begin,s=this.y_top+this.stem_down_y_offset):(r=this.x_end,s=this.y_bottom-this.stem_up_y_offset);const a=this.getHeight();L$j("Rendering stem - ","Top Y: ",this.y_top,"Bottom Y: ",this.y_bottom);const l=this.isStemlet?a-this.stemletHeight*this.stem_direction:0;if(e.save(),this.applyStyle(e),e.beginPath(),e.setLineWidth(Stem.WIDTH),e.moveTo(r,s-l),e.lineTo(r,s-a-this.renderHeightAdjustment*o),e.svg){const c={class:Vex.Prefix("stem")};this.id&&(c.id=this.id),e.stroke(c)}else e.stroke();this.restoreStyle(e),e.restore()}}let Tuplet$1=class ai extends Element$1{static get LOCATION_TOP(){return 1}static get LOCATION_BOTTOM(){return-1}static get NESTING_OFFSET(){return 15}constructor(e,r){if(super(),this.setAttribute("type","Tuplet"),!e||!e.length)throw new Vex.RuntimeError("BadArguments","No notes provided for tuplet.");this.options=Vex.Merge({},r),this.notes=e,this.num_notes="num_notes"in this.options?this.options.num_notes:e.length,this.options.beats_occupied&&this.beatsOccupiedDeprecationWarning(),this.notes_occupied=this.options.notes_occupied||this.options.beats_occupied||2,"bracketed"in this.options?this.bracketed=this.options.bracketed:this.bracketed=e.some(s=>s.beam===null),this.ratioed="ratioed"in this.options?this.options.ratioed:Math.abs(this.notes_occupied-this.num_notes)>1,this.point=28,this.y_pos=16,this.x_pos=100,this.width=200,this.location=this.options.location||ai.LOCATION_TOP,Formatter.AlignRestsToNotes(e,!0,!0),this.resolveGlyphs(),this.attach()}attach(){for(let e=0;e=1;)this.numerator_glyphs.unshift(new Glyph("v"+e%10,this.point)),e=parseInt(e/10,10);for(this.denom_glyphs=[],e=this.notes_occupied;e>=1;)this.denom_glyphs.unshift(new Glyph("v"+e%10,this.point)),e=parseInt(e/10,10)}getNestedTupletCount(){const e=this.location,r=this.notes[0];let s=a(r,e),o=a(r,e);function a(l,c){return l.tupletStack.filter(u=>u.location===c).length}return this.notes.forEach(l=>{const c=a(l,e);s=c>s?c:s,o=co&&(o=l)}}return o+e+r}draw(){this.checkContext(),this.setRendered();const e=this.notes[0],r=this.notes[this.notes.length-1];this.bracketed?(this.x_pos=e.getTieLeftX()-5,this.width=r.getTieRightX()-this.x_pos+5):(this.x_pos=e.getStemX(),this.width=r.getStemX()-this.x_pos),this.y_pos=this.getYPosition();const s=(c,u)=>c+u.getMetrics().width;let o=this.numerator_glyphs.reduce(s,0);this.ratioed&&(o=this.denom_glyphs.reduce(s,o),o+=this.point*.32);const l=this.x_pos+this.width/2-o/2;if(this.bracketed){const c=this.width/2-o/2-5;c>0&&(this.context.fillRect(this.x_pos,this.y_pos,c,1),this.context.fillRect(this.x_pos+this.width/2+o/2+5,this.y_pos,c,1),this.context.fillRect(this.x_pos,this.y_pos+(this.location===ai.LOCATION_BOTTOM),1,this.location*10),this.context.fillRect(this.x_pos+this.width,this.y_pos+(this.location===ai.LOCATION_BOTTOM),1,this.location*10))}if(this.RenderTupletNumber!==!1){let c=0;this.numerator_glyphs.forEach(u=>{u.render(this.context,l+c,this.y_pos+this.point/3-2),c+=u.getMetrics().width})}if(this.ratioed){const c=l+x_offset+this.point*.16,u=this.point*.06;this.context.beginPath(),this.context.arc(c,this.y_pos-this.point*.08,u,0,Math.PI*2,!0),this.context.closePath(),this.context.fill(),this.context.beginPath(),this.context.arc(c,this.y_pos+this.point*.12,u,0,Math.PI*2,!0),this.context.closePath(),this.context.fill(),x_offset+=this.point*.32,this.denom_glyphs.forEach(m=>{m.render(this.context,l+x_offset,this.y_pos+this.point/3-2),x_offset+=m.getMetrics().width})}}};function calculateStemDirection(i){let e=0;return i.forEach(r=>{r.keyProps&&r.keyProps.forEach(s=>{e+=s.line-3})}),e>=0?Stem.DOWN:Stem.UP}const getStemSlope=(i,e)=>{const r=i.getStemExtents().topY,s=i.getStemX(),o=e.getStemExtents().topY,a=e.getStemX();return(o-r)/(a-s)},BEAM_LEFT="L",BEAM_RIGHT="R",BEAM_BOTH="B";let Beam$1=class Bi extends Element$1{static getDefaultBeamGroups(e){(!e||e==="c")&&(e="4/4");const s={"1/2":["1/2"],"2/2":["1/2"],"3/2":["1/2"],"4/2":["1/2"],"1/4":["1/4"],"2/4":["1/4"],"3/4":["1/4"],"4/4":["1/4"],"1/8":["1/8"],"2/8":["2/8"],"3/8":["3/8"],"4/8":["2/8"],"1/16":["1/16"],"2/16":["2/16"],"3/16":["3/16"],"4/16":["2/16"]}[e];if(s===void 0){const o=parseInt(e.split("/")[0],10),a=parseInt(e.split("/")[1],10);if(o%3===0)return[new Fraction(3,a)];if(a>4)return[new Fraction(2,a)];if(a<=4)return[new Fraction(1,a)]}else return s.map(o=>new Fraction().parse(o));return[new Fraction(1,4)]}static applyAndGetBeams(e,r,s){return Bi.generateBeams(e.getTickables(),{groups:s,stem_direction:r})}static generateBeams(e,r){r||(r={}),(!r.groups||!r.groups.length)&&(r.groups=[new Fraction(2,8)]);const s=r.groups.map(k=>{if(!k.multiply)throw new Vex.RuntimeError("InvalidBeamGroups","The beam groups must be an array of Vex.Flow.Fractions");return k.clone().multiply(Flow.RESOLUTION,1)}),o=e;let a=0,l=[],c=[];function u(k){return k.reduce((I,M)=>M.getTicks().clone().add(I),new Fraction(0,1))}function m(){s.length-1>a?a+=1:a=0}function g(){let k=[];o.forEach(I=>{if(k=[],I.shouldIgnoreTicks()){l.push(c),c=k;return}c.push(I);const M=s[a].clone(),T=u(c),F=Flow.durationToNumber(I.duration)<8;F&&I.tuplet&&(M.numerator*=2),T.greaterThan(M)?(F||k.push(c.pop()),l.push(c),c=k,m()):T.equals(M)&&(l.push(c),c=k,m())}),c.length>0&&l.push(c)}function d(){return l.filter(k=>{if(k.length>1){let I=!0;return k.forEach(M=>{M.getIntrinsicTicks()>=Flow.durationToTicks("4")&&(I=!1)}),I}return!1})}function y(){const k=[];l.forEach(I=>{let M=[];I.forEach((T,F,D)=>{const N=F===0||F===D.length-1,O=D[F-1],B=!r.beam_rests&&T.isRest(),V=r.beam_rests&&r.beam_middle_only&&T.isRest()&&N;let R=!1;if(r.maintain_stem_directions&&O&&!T.isRest()&&!O.isRest()){const K=O.getStemDirection();R=T.getStemDirection()!==K}const Q=parseInt(T.duration,10)<8;B||V||R||Q?(M.length>0&&k.push(M),M=R?[T]:[]):M.push(T)}),M.length>0&&k.push(M)}),l=k}function A(){l.forEach(k=>{let I;if(r.maintain_stem_directions){const M=b(k);I=M?M.getStemDirection():Stem.UP}else r.stem_direction?I=r.stem_direction:I=calculateStemDirection(k);S(k,I)})}function b(k){for(let I=0;I{M.setStemDirection(I)})}function E(){const k=[];return l.forEach(I=>{let M=null;I.forEach(T=>{T.tuplet&&M!==T.tuplet&&(M=T.tuplet,k.push(M))})}),k}g(),y(),A();const x=d(),C=E(),P=[];return x.forEach(k=>{const I=new Bi(k);r.show_stemlets&&(I.render_options.show_stemlets=!0),r.secondary_breaks&&(I.render_options.secondary_break_ticks=Flow.durationToTicks(r.secondary_breaks)),r.flat_beams===!0&&(I.render_options.flat_beams=!0,I.render_options.flat_beam_offset=r.flat_beam_offset),P.push(I)}),C.forEach(k=>{const I=k.notes[0].stem_direction===Stem.DOWN?Tuplet$1.LOCATION_BOTTOM:Tuplet$1.LOCATION_TOP;k.setTupletLocation(I);let M=!1;for(let T=0;T=Flow.durationToTicks("4"))throw new Vex.RuntimeError("BadArguments","Beams can only be applied to notes shorter than a quarter note.");let s,o;for(this.stem_direction=Stem.UP,s=0;sc+u.stem_direction,0)>-1?Stem.UP:Stem.DOWN),s=0;ss.getGlyph().beam_count).reduce((s,o)=>o>s?o:s)}breakSecondaryAt(e){return this.break_on_indices=e,this}getSlopeY(e,r,s,o){return s+(e-r)*o}calculateSlope(){const{notes:e,stem_direction:r,render_options:{max_slope:s,min_slope:o,slope_iterations:a,slope_cost:l}}=this,c=e[0],u=getStemSlope(c,e[e.length-1]),m=(s-o)/a;let g=Number.MAX_VALUE,d=0,y=0;for(let A=o;A<=s;A+=m){let b=0,S=0;for(let P=1;PE)&&(m=E,c=Math.min(...S.getYs()),u=S.getBeamCount())}let g=l/e.length;const d=s*1.5,y=o+u*d,A=c+y*-r;r===Stem.DOWN&&gA&&(g=c-y),a+this.render_options.flat_beam_offset_per_beam>0?r===Stem.DOWN&&g>a&&!this.render_options.flat_beams?this.render_options.flat_beam_offset=g:r===Stem.UP&&g0){let o=this.render_options.flat_beam_offset;this.render_options.flat_beam_offset_per_beam&&(o+=this.render_options.flat_beam_offset_per_beam*this.getBeamCount());let a=this.notes[0].note_heads[0].y;const l=this.stem_direction>0?Math.min:Math.max;for(const c of this.notes)for(const u of c.note_heads)a=l(a,u.y);s=a+o*-this.stem_direction}return s}applyStemExtensions(){const{notes:e,slope:r,y_shift:s,stem_direction:o,beam_count:a,render_options:{show_stemlets:l,stemlet_extension:c,beam_width:u}}=this,m=e[0],g=this.getBeamYToDraw(),d=m.getStemX();for(let y=0;y=8&&(A=this.break_on_indices.indexOf(g)!==-1,this.render_options.secondary_break_ticks&&u>=this.render_options.secondary_break_ticks&&(u=0,A=!0));const b=d.getIntrinsicTicks(){e.getStem()&&(this.context.openGroup("stem",e.getAttribute("id")+"-stem"),e.getStem().setContext(this.context).draw(),this.context.closeGroup())},this)}drawBeamLines(){this.checkContext();const e=["4","8","16","32","64"],r=this.notes[0];let s=this.getBeamYToDraw();const o=r.getStemX(),a=this.render_options.beam_width*this.stem_direction,l={};for(const c of this.notes)l[c.getAttribute("id")]=0;for(let c=0;c{e.getStave()||e.setStave(this.stave)}),this.preFormatted=!0,this)}draw(e=this.context,r=this.stave){this.setRendered();let s=null;for(let o=0;o0&&s){const l=a.getBoundingBox();l&&s.mergeWith(l)}a.setContext(e),a.drawWithStyle()}this.boundingBox=s}};function drawBoldDoubleLine(i,e,r,s,o){if(e!==StaveConnector.type.BOLD_DOUBLE_LEFT&&e!==StaveConnector.type.BOLD_DOUBLE_RIGHT)throw new Vex.RERR("InvalidConnector","A REPEAT_BEGIN or REPEAT_END type must be provided.");let a=3,l=3.5;const c=2;e===StaveConnector.type.BOLD_DOUBLE_RIGHT&&(a=-5,l=3),i.fillRect(r+a,s,1,o-s),i.fillRect(r-c,s,l,o-s)}class StaveConnector extends Element$1{static get type(){return{SINGLE_RIGHT:0,SINGLE_LEFT:1,SINGLE:1,DOUBLE:2,BRACE:3,BRACKET:4,BOLD_DOUBLE_LEFT:5,BOLD_DOUBLE_RIGHT:6,THIN_DOUBLE:7,NONE:8}}static get typeString(){return{singleRight:StaveConnector.type.SINGLE_RIGHT,singleLeft:StaveConnector.type.SINGLE_LEFT,single:StaveConnector.type.SINGLE,double:StaveConnector.type.DOUBLE,brace:StaveConnector.type.BRACE,bracket:StaveConnector.type.BRACKET,boldDoubleLeft:StaveConnector.type.BOLD_DOUBLE_LEFT,boldDoubleRight:StaveConnector.type.BOLD_DOUBLE_RIGHT,thinDouble:StaveConnector.type.THIN_DOUBLE,none:StaveConnector.type.NONE}}constructor(e,r){super(),this.setAttribute("type","StaveConnector"),this.thickness=Flow.STAVE_LINE_THICKNESS,this.width=3,this.top_stave=e,this.bottom_stave=r,this.type=StaveConnector.type.DOUBLE,this.font={family:"times",size:16,weight:"normal"},this.x_shift=0,this.texts=[]}setType(e){return e=typeof e=="string"?StaveConnector.typeString[e]:e,e>=StaveConnector.type.SINGLE_RIGHT&&e<=StaveConnector.type.NONE&&(this.type=e),this}setText(e,r){return this.texts.push({content:e,options:Vex.Merge({shift_x:0,shift_y:0},r)}),this}setFont(e){Vex.Merge(this.font,e)}setXShift(e){if(typeof e!="number")throw Vex.RERR("InvalidType","x_shift must be a Number");return this.x_shift=e,this}draw(){const e=this.checkContext();this.setRendered();let r=this.top_stave.getYForLine(0),s=this.bottom_stave.getYForLine(this.bottom_stave.getNumLines()-1)+this.thickness,o=this.width,a=this.top_stave.getX();(this.type===StaveConnector.type.SINGLE_RIGHT||this.type===StaveConnector.type.BOLD_DOUBLE_RIGHT||this.type===StaveConnector.type.THIN_DOUBLE)&&(a=this.top_stave.getX()+this.top_stave.width);let c=s-r;switch(this.type){case StaveConnector.type.SINGLE:o=1;break;case StaveConnector.type.SINGLE_LEFT:o=1;break;case StaveConnector.type.SINGLE_RIGHT:o=1;break;case StaveConnector.type.DOUBLE:a-=this.width+2;break;case StaveConnector.type.BRACE:{o=12;const u=this.top_stave.getX()-2+this.x_shift,m=r,g=u,d=s,y=u-o,A=m+c/2,b=y-.9*o,S=m+.2*c,E=u+1.1*o,x=A-.135*c,C=E,P=A+.135*c,k=b,I=d-.2*c,M=y-o,T=I,F=u+.4*o,D=A+.135*c,N=F,O=A-.135*c,B=M,V=S;e.beginPath(),e.moveTo(u,m),e.bezierCurveTo(b,S,E,x,y,A),e.bezierCurveTo(C,P,k,I,g,d),e.bezierCurveTo(M,T,F,D,y,A),e.bezierCurveTo(N,O,B,V,u,m),e.fill(),e.stroke();break}case StaveConnector.type.BRACKET:r-=4,s+=4,c=s-r,Glyph.renderGlyph(e,a-5,r-3,40,"v1b",!0),Glyph.renderGlyph(e,a-5,s+3,40,"v10",!0),a-=this.width+2;break;case StaveConnector.type.BOLD_DOUBLE_LEFT:drawBoldDoubleLine(e,this.type,a+this.x_shift,r,s);break;case StaveConnector.type.BOLD_DOUBLE_RIGHT:drawBoldDoubleLine(e,this.type,a,r,s);break;case StaveConnector.type.THIN_DOUBLE:o=1;break;case StaveConnector.type.NONE:break;default:throw new Vex.RERR("InvalidType",`The provided StaveConnector.type (${this.type}) is invalid`)}this.type!==StaveConnector.type.BRACE&&this.type!==StaveConnector.type.BOLD_DOUBLE_LEFT&&this.type!==StaveConnector.type.BOLD_DOUBLE_RIGHT&&this.type!==StaveConnector.type.NONE&&e.fillRect(a,r,o,c),this.type===StaveConnector.type.THIN_DOUBLE&&e.fillRect(a-3,r,o,c),e.save(),e.lineWidth=2,e.setFont(this.font.family,this.font.size,this.font.weight);for(let u=0;u0){const E=S.space.deviation,x=E>=0?"+":"";e.setFillStyle("red"),e.fillText(x+Math.round(E),c+r.getXShift(),s-10)}e.restore()}constructor(e){if(super(),this.setAttribute("type","Note"),!e)throw new Vex.RuntimeError("BadArguments","Note must have valid initialization data to identify duration and type.");const r=Flow.parseNoteStruct(e);if(!r)throw new Vex.RuntimeError("BadArguments",`Invalid note initialization object: ${JSON.stringify(e)}`);if(this.duration=r.duration,this.dots=r.dots,this.noteType=r.type,this.customTypes=r.customTypes,this.DYMusicScoreType=e.DYMusicScoreType,e.duration_override?this.setDuration(e.duration_override):this.setIntrinsicTicks(r.ticks),this.modifiers=[],this.glyph=Flow.getGlyphProps(this.duration,this.noteType),this.customGlyphs=this.customTypes.map(s=>Flow.getGlyphProps(this.duration,s)),this.positions&&(typeof this.positions!="object"||!this.positions.length))throw new Vex.RuntimeError("BadArguments","Note keys must be array type.");this.playNote=null,this.tickContext=null,this.modifierContext=null,this.ignore_ticks=!1,this.width=0,this.extraLeftPx=0,this.extraRightPx=0,this.x_shift=0,this.left_modPx=0,this.right_modPx=0,this.voice=null,this.preFormatted=!1,this.ys=[],e.align_center&&this.setCenterAlignment(e.align_center),this.stave=null,this.render_options={annotation_spacing:5,stave_padding:Note.STAVEPADDING}}getPlayNote(){return this.playNote}setPlayNote(e){return this.playNote=e,this}isRest(){return!1}addStroke(e,r){return r.setNote(this),r.setIndex(e),this.modifiers.push(r),this.setPreFormatted(!1),this}getStave(){return this.stave}setStave(e){return this.stave=e,this.setYs([e.getYForLine(0)]),this.context=this.stave.context,this}getCategory(){return Note.CATEGORY}setContext(e){return this.context=e,this}getExtraLeftPx(){return this.extraLeftPx}getExtraRightPx(){return this.extraRightPx}setExtraLeftPx(e){return this.extraLeftPx=e,this}setExtraRightPx(e){return this.extraRightPx=e,this}shouldIgnoreTicks(){return this.ignore_ticks}getLineNumber(){return 0}getLineForRest(){return 0}getGlyph(){return this.glyph}getGlyphWidth(){return this.glyph.getWidth?this.glyph.getWidth(this.render_options.glyph_font_scale):15}setYs(e){return this.ys=e,this}getYs(){if(this.ys.length===0)throw new Vex.RERR("NoYValues","No Y-values calculated for this note.");return this.ys}getYForTopText(e){if(!this.stave)throw new Vex.RERR("NoStave","No stave attached to this note.");return this.stave.getYForTopText(e)}getBoundingBox(){return null}getVoice(){if(!this.voice)throw new Vex.RERR("NoVoice","Note has no voice.");return this.voice}setVoice(e){return this.voice=e,this.preFormatted=!1,this}getTickContext(){return this.tickContext}setTickContext(e){return this.tickContext=e,this.preFormatted=!1,this}getDuration(){return this.duration}isDotted(){return this.dots>0}hasStem(){return!1}getDots(){return this.dots}getNoteType(){return this.noteType}setBeam(){return this}setModifierContext(e){return this.modifierContext=e,this}addModifier(e,r=0){return e.setNote(this),e.setIndex(r),this.modifiers.push(e),this.setPreFormatted(!1),this}getModifierStartXY(){if(!this.preFormatted)throw new Vex.RERR("UnformattedNote","Can't call GetModifierStartXY on an unformatted note");return{x:this.getAbsoluteX(),y:this.ys[0]}}getMetrics(){if(!this.preFormatted)throw new Vex.RERR("UnformattedNote","Can't call getMetrics on an unformatted note.");let e=0,r=0;this.modifierContext!=null&&(e=this.modifierContext.state.left_shift,r=this.modifierContext.state.right_shift);const s=this.getWidth();return{width:s,noteWidth:s-e-r-this.extraLeftPx-this.extraRightPx,left_shift:this.x_shift,modLeftPx:e,modRightPx:r,extraLeftPx:this.extraLeftPx,extraRightPx:this.extraRightPx}}setWidth(e){this.width=e}getWidth(){if(!this.preFormatted)throw new Vex.RERR("UnformattedNote","Can't call GetWidth on an unformatted note.");return this.width+(this.modifierContext?this.modifierContext.getWidth():0)}setXShift(e){return this.x_shift=e,this}getXShift(){return this.x_shift}getX(){if(!this.tickContext)throw new Vex.RERR("NoTickContext","Note needs a TickContext assigned for an X-Value");return this.tickContext.getX()+this.x_shift}getAbsoluteX(){if(!this.tickContext)throw new Vex.RERR("NoTickContext","Note needs a TickContext assigned for an X-Value");let e=this.tickContext.getX();return this.stave&&(e+=this.stave.getNoteStartX()+this.render_options.stave_padding),this.isCenterAligned()&&(this.DYMusicScoreType==="jianpu"||(e+=this.getCenterXShift())),e}setPreFormatted(e){if(this.preFormatted=e,this.preFormatted){const r=this.tickContext.getExtraPx();this.left_modPx=Math.max(this.left_modPx,r.left),this.right_modPx=Math.max(this.right_modPx,r.right)}}}function L$i(...i){NoteHead.DEBUG&&Vex.L("Vex.Flow.NoteHead",i)}function drawSlashNoteHead(i,e,r,s,o,a){const l=Flow.SLASH_NOTEHEAD_WIDTH;i.save(),i.setLineWidth(Flow.STEM_WIDTH);let c=!1;if(Flow.durationToNumber(e)>2&&(c=!0),c||(r-=Flow.STEM_WIDTH/2*o),i.beginPath(),i.moveTo(r,s+a),i.lineTo(r,s+1),i.lineTo(r+l,s-a),i.lineTo(r+l,s),i.lineTo(r,s+a),i.closePath(),c?i.fill():i.stroke(),Flow.durationToFraction(e).equals(.5)){const u=[-3,-1,l+1,l+3];for(let m=0;m5||this.line<0)&&(this.isLedgerLinedRest=!0,this.duration==="h"?(e.custom_glyph_code="rhl",this.x_shift_ledger_rest-=4):this.duration==="w"&&(e.custom_glyph_code="rwl",this.x_shift_ledger_rest-=4,this.y_shift_ledger_rest=-5)),e.custom_glyph_code&&(this.custom_glyph=!0,this.glyph_code=e.custom_glyph_code,this.stem_up_x_offset=e.stem_up_x_offset||0,this.stem_down_x_offset=e.stem_down_x_offset||0,this.stem_up_y_shift=e.stem_up_y_shift||0,this.stem_down_y_shift=e.stem_down_y_shift||0),this.style=e.style,this.slashed=e.slashed,Vex.Merge(this.render_options,{glyph_font_scale:e.glyph_font_scale||Flow.DEFAULT_NOTATION_FONT_SCALE,stroke_px:3}),this.setWidth(this.glyph.getWidth(this.render_options.glyph_font_scale))}getCategory(){return NoteHead.CATEGORY}getWidth(){return this.width}isDisplaced(){return this.displaced===!0}getGlyph(){return this.glyph}setX(e){return this.x=e,this}getY(){return this.y}setY(e){return this.y=e,this}getLine(){return this.line}setLine(e){return this.line=e,this}getAbsoluteX(){const e=this.preFormatted?super.getAbsoluteX():this.x,r=Stem.WIDTH/2;return e+(this.displaced?(this.width-r)*this.stem_direction:0)}getBoundingBox(){if(!this.preFormatted)throw new Vex.RERR("UnformattedNote","Can't call getBoundingBox on an unformatted note.");const e=this.stave.getSpacingBetweenLines(),r=e/2,s=this.y-r;return new Flow.BoundingBox(this.getAbsoluteX(),s,this.width,e)}setStave(e){const r=this.getLine();return this.stave=e,this.setY(e.getYForNote(r)),this.context=this.stave.context,this}preFormat(){if(this.preFormatted)return this;const e=this.getWidth()+this.extraLeftPx+this.extraRightPx;return this.setWidth(e),this.setPreFormatted(!0),this}draw(){this.checkContext(),this.setRendered();const e=this.context;let r=this.getAbsoluteX(),s=this.y;this.custom_glyph&&(r+=this.x_shift_ledger_rest,this.stem_direction===Stem.UP?(r+=this.stem_up_x_offset,s+=this.stem_up_y_shift||0):this.stem_direction===Stem.DOWN&&(r+=this.stem_down_x_offset,s+=this.stem_down_y_shift||0),s+=this.y_shift_ledger_rest),L$i("Drawing note head '",this.note_type,this.duration,"' at",r,s);const o=this.stem_direction,a=this.render_options.glyph_font_scale;if(this.style&&this.applyStyle(e),this.note_type==="s"){const l=this.stave.getSpacingBetweenLines();drawSlashNoteHead(e,this.duration,r,s,o,l)}else Glyph.renderGlyph(e,r,s,a,this.glyph_code);this.style&&this.restoreStyle(e)}}class StemmableNote extends Note{constructor(e){super(e),this.setAttribute("type","StemmableNote"),this.stem=null,this.stemExtensionOverride=null,this.beam=null,this.renderFlag=!0}getStem(){return this.stem}setStem(e){return this.stem=e,this}buildStem(){const e=new Stem;return this.setStem(e),this}buildFlag(){const{glyph:e,beam:r}=this,s=r===null&&this.renderFlag;if(e&&e.flag&&s){const o=this.getStemDirection()===Stem.DOWN?e.code_flag_downstem:e.code_flag_upstem;this.flag=new Glyph(o,this.render_options.glyph_font_scale)}}getTopGlyph(){return this.getStemDirection()===Stem.DOWN?this.customGlyphs[this.customGlyphs.length-1]:this.customGlyphs[0]}getStemLength(){return Stem.HEIGHT+this.getStemExtension()}getBeamCount(){const e=this.getGlyph();return e?e.beam_count:0}getStemMinumumLength(){let r=Flow.durationToFraction(this.duration).value()<=1?0:20;switch(this.duration){case"8":this.beam==null&&(r=35);break;case"16":r=this.beam==null?35:25;break;case"32":r=this.beam==null?45:35;break;case"64":r=this.beam==null?50:40;break;case"128":r=this.beam==null?55:45;break}return r}getStemDirection(){return this.stem_direction}setStemDirection(e){if(e||(e=Stem.UP),e!==Stem.UP&&e!==Stem.DOWN)throw new Vex.RERR("BadArgument",`Invalid stem direction: ${e}`);if(this.stem_direction=e,this.stem){this.stem.setDirection(e),this.stem.setExtension(this.getStemExtension());const r=this.getTopGlyph()||this.getGlyph();this.stem.setOptions({stem_up_y_offset:r.stem_up_y_offset,stem_down_y_offset:r.stem_down_y_offset})}return this.reset(),this.flag&&this.renderFlag&&this.buildFlag(),this.beam=null,this.preFormatted&&this.preFormat(),this}getStemX(){const e=this.getAbsoluteX()+this.x_shift,r=this.getAbsoluteX()+this.x_shift+this.getGlyphWidth();return this.stem_direction===Stem.DOWN?e:r}getCenterGlyphX(){return this.getAbsoluteX()+this.x_shift+this.getGlyphWidth()/2}getStemExtension(){const e=this.getGlyph();return this.stemExtensionOverride!=null?this.stemExtensionOverride:e?this.getStemDirection()===1?e.stem_up_extension:e.stem_down_extension:0}setStemLength(e){return this.stemExtensionOverride=e-Stem.HEIGHT,this}getStemExtents(){return this.stem.getExtents()}setBeam(e){return this.beam=e,this}getYForTopText(e){const r=this.getStemExtents();return this.hasStem()?Math.min(this.stave.getYForTopText(e),r.topY-this.render_options.annotation_spacing*(e+1)):this.stave.getYForTopText(e)}getYForBottomText(e){const r=this.getStemExtents();return this.hasStem()?Math.max(this.stave.getYForTopText(e),r.baseY+this.render_options.annotation_spacing*e):this.stave.getYForBottomText(e)}hasFlag(){return this.renderFlag&&Flow.getGlyphProps(this.duration).flag&&!this.beam}postFormat(){return this.beam&&this.beam.postFormat(),this.postFormatted=!0,this}drawStem(e){this.checkContext(),this.setRendered(),this.setStem(new Stem(e)),this.stem.setContext(this.context).draw()}}class Modifier extends Element$1{static get CATEGORY(){return"none"}static get Position(){return{LEFT:1,RIGHT:2,ABOVE:3,BELOW:4}}static get PositionString(){return{above:Modifier.Position.ABOVE,below:Modifier.Position.BELOW,left:Modifier.Position.LEFT,right:Modifier.Position.RIGHT}}constructor(){super(),this.setAttribute("type","Modifier"),this.width=0,this.note=null,this.index=null,this.text_line=0,this.position=Modifier.Position.LEFT,this.modifier_context=null,this.x_shift=0,this.y_shift=0,this.spacingFromNextModifier=0}getCategory(){return Modifier.CATEGORY}getWidth(){return this.width}setWidth(e){return this.width=e,this}getNote(){return this.note}setNote(e){return this.note=e,this}getIndex(){return this.index}setIndex(e){return this.index=e,this}getModifierContext(){return this.modifier_context}setModifierContext(e){return this.modifier_context=e,this}getPosition(){return this.position}setPosition(e){return this.position=typeof e=="string"?Modifier.PositionString[e]:e,this}setTextLine(e){return this.text_line=e,this}setYShift(e){return this.y_shift=e,this}setSpacingFromNextModifier(e){this.spacingFromNextModifier=e}getSpacingFromNextModifier(){return this.spacingFromNextModifier}setXShift(e){this.x_shift=0,this.position===Modifier.Position.LEFT?this.x_shift-=e:this.x_shift+=e}getXShift(){return this.x_shift}draw(){throw this.checkContext(),new Vex.RERR("MethodNotImplemented","draw() not implemented for this modifier.")}alignSubNotesWithNote(e,r){const s=r.getTickContext(),o=s.getExtraPx(),a=s.getX()-o.left-o.extraLeft+this.getSpacingFromNextModifier();e.forEach(l=>{const c=l.getTickContext();l.setStave(r.stave),c.setXOffset(a)})}}class Dot extends Modifier{static get CATEGORY(){return"dots"}static format(e,r){const s=r.right_shift,o=1;if(!e||e.length===0)return!1;const a=[],l={};for(let A=0;Ab.line-A.line);let c=s,u=0,m=null,g=null,d=null,y=0;for(let A=0;Au?c:u,m=x,g=S}return r.right_shift+=u,!0}constructor(){super(),this.setAttribute("type","Dot"),this.note=null,this.index=null,this.position=Modifier.Position.RIGHT,this.radius=2,this.setWidth(5),this.dot_shiftY=0}getCategory(){return Dot.CATEGORY}setNote(e){this.note=e,this.note.getCategory()==="gracenotes"&&(this.radius*=.5,this.setWidth(3))}setDotShiftY(e){return this.dot_shiftY=e,this}draw(){if(this.checkContext(),this.setRendered(),!this.note||this.index===null)throw new Vex.RERR("NoAttachedNote","Can't draw dot without a note and index.");const e=this.note.stave.options.spacing_between_lines_px,r=this.note.getModifierStartXY(this.position,this.index,{forceFlagRight:!0});this.note.getCategory()==="tabnotes"&&(r.y=this.note.getStemExtents().baseY+1);const s=r.x+this.x_shift+this.width-this.radius;let o=this.dot_shiftY*e;this.note&&this.note.DYMusicScoreType=="jianpu"&&(o=-5);const a=r.y+this.y_shift+o,l=this.context;l.beginPath(),l.arc(s,a,this.radius,0,Math.PI*2,!1),l.fill()}}function L$h(...i){StaveNote.DEBUG&&Vex.L("Vex.Flow.StaveNote",i)}const getStemAdjustment=i=>Stem.WIDTH/(2*-i.getStemDirection()),isInnerNoteIndex=(i,e)=>e===(i.getStemDirection()===Stem.UP?i.keyProps.length-1:0);function shiftRestVertical(i,e,r){if(i.note.shiftRestVerticalDisabled)return;const s=(e.isrest?0:1)*r;i.line+=s,i.maxLine+=s,i.minLine+=s,i.note.setKeyLine(0,i.note.getKeyLine(0)+s)}function centerRest(i,e,r){const s=i.line-Vex.MidLine(e.minLine,r.maxLine);i.note.setKeyLine(0,i.note.getKeyLine(0)-s),i.line-=s,i.maxLine-=s,i.minLine-=s}class StaveNote extends StemmableNote{static get CATEGORY(){return"stavenotes"}static get STEM_UP(){return Stem.UP}static get STEM_DOWN(){return Stem.DOWN}static get DEFAULT_LEDGER_LINE_OFFSET(){return 3}static renderVibrato(e,r,s,o){let{width:a,height:l,wave_width:c,wave_girth:u,wave_height:m,stem_direction:g}=o;const d=Math.floor(a/c);let y=l/(d/2)*g;y==0&&(g=1,y=.3),e.beginPath(),e.moveTo(r,s+u);for(let A=0;A2?s[1]:null;let u=a>2?s[2]:s[1];a===2&&l.stemDirection===-1&&u.stemDirection===1&&!l.isrest&&!u.isRest&&(l=s[1],u=s[0]);const m=Math.max(l.voice_shift,u.voice_shift);let g=0,d;if(a===2){const y=l.stemDirection===u.stemDirection?0:.5;if(l.stemDirection===u.stemDirection&&l.minLine<=u.maxLine&&(l.isrest||(d=Math.abs(l.line-(u.maxLine+.5)),d=Math.max(d,l.stemMin),l.minLine=l.line-d,l.note.setStemLength(d*10))),l.minLine<=u.maxLine+y)if(l.isrest)shiftRestVertical(l,u,1),l.note.hasLedgerLinedRest&&(l.note.shiftRestVerticalDisabled=!0);else if(u.isrest)shiftRestVertical(u,l,-1),u.note.hasLedgerLinedRest&&(u.note.shiftRestVerticalDisabled=!0);else{g=m;const A=Math.abs(l.line-u.line);let b=0,S=0;l.note.duration==="h"?b++:l.note.duration==="w"&&S++,u.note.duration==="h"?b++:u.note.duration==="w"&&S++;let E=b===1||S===1||l.note.dots!==u.note.dots;if(o&&(E=E||S===2),A===0&&E){if(u.note.setXShift(g),l.note.dots>0){let x=0;for(const C of l.note.modifiers)if(C instanceof Dot&&(x++,C.setYShift(-10*(u.maxLine-l.line+1)),x===l.note.dots))break}}else A<1&&A>0?u.note.setXShift(g):l.note.voice!==u.note.voice&&l.stemDirection===u.stemDirection&&(l.line>u.line?l.stemDirection===1?u.note.renderFlag=!1:l.note.renderFlag=!1:u.line>l.line?u.stemDirection===1?l.note.renderFlag=!1:u.note.renderFlag=!1:u.stemDirection===1&&(u.stemDirection=-1,u.note.setStemDirection(-1)))}return!0}if(c!==null&&c.minLiner.postFormat()),!0):!1}constructor(e){if(super(e),this.setAttribute("type","StaveNote"),this.keys=e.keys,this.clef=e.clef,this.octave_shift=e.octave_shift,this.beam=null,this.vibrato=null,this.slideNote=null,this.glyph=Flow.getGlyphProps(this.duration,this.noteType),!this.glyph)throw new Vex.RuntimeError("BadArguments",`Invalid note initialization data (No glyph found): ${JSON.stringify(e)}`);this.displaced=!1,this.dot_shiftY=0,this.addDotsCount=0,this.keyProps=[],this.use_default_head_x=!1,this.paddingRight=0,this.note_heads=[],this.modifiers=[],Vex.Merge(this.render_options,{glyph_font_scale:e.glyph_font_scale||Flow.DEFAULT_NOTATION_FONT_SCALE,stroke_px:e.stroke_px||StaveNote.DEFAULT_LEDGER_LINE_OFFSET}),this.calculateKeyProps(),this.buildStem(),e.auto_stem?this.autoStem():this.setStemDirection(e.stem_direction),this.reset(),this.buildFlag()}reset(){super.reset();const e=this.note_heads.map(s=>s.getStyle()),r=[];this.note_heads.forEach(s=>r.push(s.note_type)),this.buildNoteHeads(),this.note_heads.forEach((s,o)=>{s.setStyle(e[o]),r[o]&&(s.note_type=r[o])}),this.stave&&this.note_heads.forEach(s=>s.setStave(this.stave)),this.calcExtraPx()}setBeam(e){return this.beam=e,this.calcExtraPx(),this}setVibrato(e){this.vibrato=e}setSlideNote(e){this.slideNote=e}getCategory(){return StaveNote.CATEGORY}buildStem(){this.setStem(new Stem({hide:!!this.isRest()})),this.stem.id=Vex.Prefix(`${this.getAttribute("id")}-stem`)}buildNoteHeads(){this.note_heads=[];const e=this.getStemDirection(),r=this.getKeys();let s=null,o=null,a=!1,l,c,u;e===Stem.UP?(l=0,c=r.length,u=1):e===Stem.DOWN&&(l=r.length-1,c=-1,u=-1);for(let m=l;m!==c;m+=u){const g=this.keyProps[m],d=g.line;s===null?s=d:(o=Math.abs(s-d),o===0||o===.5?a=!a:(a=!1,this.use_default_head_x=!0)),s=d;const y=new NoteHead({duration:this.duration,note_type:this.noteType,displaced:a,stem_direction:e,custom_glyph_code:g.code,glyph_font_scale:this.render_options.glyph_font_scale,x_shift:g.shift_right,stem_up_x_offset:g.stem_up_x_offset,stem_down_x_offset:g.stem_down_x_offset,stem_up_y_shift:g.stem_up_y_shift,stem_down_y_shift:g.stem_down_y_shift,line:g.line});y.isLedgerLinedRest&&(this.hasLedgerLinedRest=!0),this.note_heads[m]=y}}autoStem(){this.minLine=this.keyProps[0].line,this.maxLine=this.keyProps[this.keyProps.length-1].line;const e=3,s=(this.minLine+this.maxLine)/20&&(this.keyProps[r-1].displaced=!0)),e=l,this.keyProps.push(a)}e=-1/0,this.keyProps.forEach(r=>{r.liner.line-s.line)}getBoundingBox(){if(!this.preFormatted)throw new Vex.RERR("UnformattedNote","Can't call getBoundingBox on an unformatted note.");const{width:e,modLeftPx:r,extraLeftPx:s}=this.getMetrics(),o=this.getAbsoluteX()-r-s-this.paddingRight;let a=0,l=0;const c=this.getStave().getSpacingBetweenLines()/2,u=c*2;if(this.isRest()){const m=this.ys[0],g=Flow.durationToFraction(this.duration);g.equals(1)||g.equals(2)?(a=m-c,l=m+c):(a=m-this.glyph.line_above*u,l=m+this.glyph.line_below*u)}else if(this.glyph.stem){const m=this.getStemExtents();m.baseY+=c*this.stem_direction,a=Math.min(m.topY,m.baseY),l=Math.max(m.topY,m.baseY)}else{a=null,l=null;for(let m=0;mr&&(r=o):o1}hasStem(){return this.glyph.stem}hasFlag(){return super.hasFlag()&&!this.isRest()&&this.renderFlag}getStemX(){return this.noteType==="r"?this.getCenterGlyphX():super.getStemX()+getStemAdjustment(this)}getYForTopText(e){const r=this.getStemExtents();return Math.min(this.stave.getYForTopText(e),r.topY-this.render_options.annotation_spacing*(e+1))}getYForBottomText(e){const r=this.getStemExtents();return Math.max(this.stave.getYForTopText(e),r.baseY+this.render_options.annotation_spacing*e)}setStave(e){super.setStave(e);const r=this.note_heads.map(s=>(s.setStave(e),s.getY()));if(this.setYs(r),this.stem){const{y_top:s,y_bottom:o}=this.getNoteHeadBounds();this.stem.setYBounds(s,o)}return this}getKeys(){return this.keys}getKeyProps(){return this.keyProps}isDisplaced(){return this.displaced}setNoteDisplaced(e){return this.displaced=e,this}getTieRightX(){let e=this.getAbsoluteX();return e+=this.getGlyphWidth()+this.x_shift+this.extraRightPx,this.modifierContext&&(e+=this.modifierContext.getExtraRightPx()),e}getTieLeftX(){let e=this.getAbsoluteX();return e+=this.x_shift-this.extraLeftPx,e}getLineForRest(){let e=this.keyProps[0].line;if(this.keyProps.length>1){const r=this.keyProps[this.keyProps.length-1].line,s=Math.max(e,r),o=Math.min(e,r);e=Vex.MidLine(s,o)}return e}getModifierStartXY(e,r,s){if(s=s||{},!this.preFormatted)throw new Vex.RERR("UnformattedNote","Can't call GetModifierStartXY on an unformatted note");if(this.ys.length===0)throw new Vex.RERR("NoYValues","No Y-Values calculated for this note.");const{ABOVE:o,BELOW:a,LEFT:l,RIGHT:c}=Modifier.Position;let u=0;return e===l?u=-1*2:e===c?(u=this.getGlyphWidth()+this.x_shift+2,this.stem_direction===Stem.UP&&this.hasFlag()&&(s.forceFlagRight||isInnerNoteIndex(this,r))&&(u+=this.flag.getMetrics().width)):(e===a||e===o)&&(u=this.getGlyphWidth()/2),{x:this.getAbsoluteX()+u,y:this.ys[r]}}setStyle(e){super.setStyle(e),this.note_heads.forEach(r=>r.setStyle(e)),this.stem&&this.stem.setStyle(e)}setStemStyle(e){this.stem&&this.getStem().setStyle(e)}getStemStyle(){return this.stem.getStyle()}setLedgerLineStyle(e){this.ledgerLineStyle=e}getLedgerLineStyle(){return this.ledgerLineStyle}setFlagStyle(e){this.flagStyle=e}getFlagStyle(){return this.flagStyle}setKeyStyle(e,r){return this.note_heads[e].setStyle(r),this}setKeyLine(e,r){return this.keyProps[e].line=r,this.reset(),this}getKeyLine(e){return this.keyProps[e].line}addToModifierContext(e){this.setModifierContext(e);for(let r=0;r{const y=d.getLine(),A=d.getY();(e===null||Ar)&&(r=A),o===null&&d.isDisplaced()&&(o=d.getAbsoluteX()),s===null&&!d.isDisplaced()&&(s=d.getAbsoluteX()),a=y>a?y:a,l=y{let I;k&&P?I=S-s:P?I=b-s:I=A-s;const M=P&&k?l:a;o.beginPath(),o.moveTo(I,C),o.lineTo(I+M,C),o.stroke()},x={...e.getStyle()||{},...this.getLedgerLineStyle()||{}};this.applyStyle(o,x);for(let C=6;C<=c;++C){const P=b!==null&&C<=g,k=A!==null&&C<=m;E(e.getYForNote(C),P,k)}for(let C=0;C>=u;--C){const P=b!==null&&C>=y,k=A!==null&&C>=d;E(e.getYForNote(C),P,k)}this.restoreStyle(o,x)}drawVibrato(){if(this.vibrato){const e=this.context,r=this.vibrato.getNoteHeadEndX()+2;let{y_bottom:s}=this.vibrato.getNoteHeadBounds(),{y_top:o}=this.getNoteHeadBounds();const a=s1&&l.getAttribute("type")==="Accidental"&&this.modifiers.findIndex(g=>g.getAttribute("type")==="GraceNoteGroup")>=0)&&!(l.note&&l.note.DYMusicScoreType=="jianpu"&&l.getAttribute("type")==="Dot"&&!l.note.formatterMetrics.duration)){if(l.note&&l.note.DYMusicScoreType=="jianpu"&&l.getAttribute("type")==="Dot")try{l.note.getModifierStartXY(l.position,0,{forceFlagRight:!0}).x-l.note.x<9&&(l.x_shift+=7)}catch(m){console.log("🚀 ~ error:",m)}l.note&&l.note.DYMusicScoreType=="jianpu"&&(((s=l==null?void 0:l.articulation)==null?void 0:s.code)==="v28"||((o=l==null?void 0:l.articulation)==null?void 0:o.code)==="v42")&&(r="transform"),c.applyStyle(e,u),l.setContext(e),l.drawWithStyle(),c.restoreStyle(e,u)}}e.closeGroup(r),this.drawVibrato(),this.drawSlide()}drawFlag(){const{stem:e,beam:r,context:s}=this;if(!s)throw new Vex.RERR("NoCanvasContext","Can't draw without a canvas context.");const o=r===null&&this.renderFlag;if(this.getGlyph().flag&&o){const{y_top:l,y_bottom:c}=this.getNoteHeadBounds(),u=e.getHeight(),m=this.getStemX();let g=this.getStemDirection()===Stem.DOWN?l-u+2:c-u-2;if(e&&!r){const d=this.keyProps[0].line;(d>6.5||d<-.5)&&(g=g+(d>6.5?(d-6.5)*10:(d+.5)*10))}s.openGroup("flag",null,{pointerBBox:!0}),this.applyStyle(s,this.getFlagStyle()||!1),this.flag.render(s,m,g),this.restoreStyle(s,this.getFlagStyle()||!1),s.closeGroup()}}drawNoteHeads(){this.note_heads.forEach(e=>{this.context.openGroup("notehead",null,{pointerBBox:!0});try{if(this.isRest()&&this.duration==="w"){const r=this.stave.options.line_config.filter(o=>o.visible).length;this.keyProps[0].line===4&&r<5&&e.setY(e.getY()+10),r===1&&e.setLine(3)}}catch(r){}e.setContext(this.context).draw(),this.context.closeGroup()})}drawStem(e){if(!this.context)throw new Vex.RERR("NoCanvasContext","Can't draw without a canvas context.");e&&this.setStem(new Stem(e)),this.stem.id=Vex.Prefix(`${this.getAttribute("id")}-stem`),this.stem&&(this.context.openGroup("stem",null,{pointerBBox:!0}),this.stem.setContext(this.context).draw(),this.context.closeGroup())}draw(){if(!this.context)throw new Vex.RERR("NoCanvasContext","Can't draw without a canvas context.");if(!this.stave)throw new Vex.RERR("NoStave","Can't draw without a stave.");if(this.ys.length===0)throw new Vex.RERR("NoYValues","Can't draw note without Y values.");const e=this.stave.getLines();if(e===2||e===3||e===4)for(let o=0;oo.setX(r)),this.stem){let o=this.getStemX();const a=this.keyProps[0].line;(a>6.5||a<-.5)&&(this.beam||(this.stem.renderHeightAdjustment=a>6.5?(a-6.5)*10:Math.abs(a+.5)*10)),this.stem.setNoteHeadXBounds(o,o)}L$h("Rendering ",this.isChord()?"chord :":"note :",this.keys),this.drawLedgerLines(),this.applyStyle(),this.setAttribute("el",this.context.openGroup("stavenote",this.getAttribute("id"))),this.context.openGroup("note",null,{pointerBBox:!0}),s&&this.drawStem(),this.drawNoteHeads(),this.drawFlag(),this.context.closeGroup(),this.drawModifiers(),this.context.closeGroup(),this.restoreStyle(),this.setRendered()}}class FretHandFinger extends Modifier{static get CATEGORY(){return"frethandfinger"}static format(e,r){const{left_shift:s,right_shift:o}=r,a=1;if(!e||e.length===0)return!1;const l=[];let c=null,u=0,m=0;for(let E=0;Ex.line-E.line);let g=0,d=0,y=0,A=0,b=null,S=null;for(let E=0;Ey?x:y):P===Modifier.Position.RIGHT&&(k.setXShift(d),x=m+F,A=x>A?x:A),b=I,S=C}return r.left_shift+=y,r.right_shift+=A,!0}constructor(e){super(),this.setAttribute("type","FretHandFinger"),this.note=null,this.index=null,this.finger=e,this.width=7,this.position=Modifier.Position.LEFT,this.x_shift=0,this.y_shift=0,this.x_offset=0,this.y_offset=0,this.font={family:"sans-serif",size:9,weight:"bold"}}getCategory(){return FretHandFinger.CATEGORY}setFretHandFinger(e){return this.finger=e,this}setOffsetX(e){return this.x_offset=e,this}setOffsetY(e){return this.y_offset=e,this}draw(){if(this.checkContext(),!this.note||this.index==null)throw new Vex.RERR("NoAttachedNote","Can't draw string number without a note and index.");this.setRendered();const e=this.context,r=this.note.getModifierStartXY(this.position,this.index);let s=r.x+this.x_shift+this.x_offset,o=r.y+this.y_shift+this.y_offset+5;switch(this.position){case Modifier.Position.ABOVE:s-=4,o-=12;break;case Modifier.Position.BELOW:s-=2,o+=10;break;case Modifier.Position.LEFT:s-=this.width;break;case Modifier.Position.RIGHT:s+=1;break;default:throw new Vex.RERR("InvalidPostion",`The position ${this.position} does not exist`)}e.save(),e.setFont(this.font.family,this.font.size,this.font.weight),e.fillText(""+this.finger,s,o),e.restore()}}class Music{static get NUM_TONES(){return 12}static get roots(){return["c","d","e","f","g","a","b"]}static get root_values(){return[0,2,4,5,7,9,11]}static get root_indices(){return{c:0,d:1,e:2,f:3,g:4,a:5,b:6}}static get canonical_notes(){return["c","c#","d","d#","e","f","f#","g","g#","a","a#","b"]}static get diatonic_intervals(){return["unison","m2","M2","m3","M3","p4","dim5","p5","m6","M6","b7","M7","octave"]}static get diatonic_accidentals(){return{unison:{note:0,accidental:0},m2:{note:1,accidental:-1},M2:{note:1,accidental:0},m3:{note:2,accidental:-1},M3:{note:2,accidental:0},p4:{note:3,accidental:0},dim5:{note:4,accidental:-1},p5:{note:4,accidental:0},m6:{note:5,accidental:-1},M6:{note:5,accidental:0},b7:{note:6,accidental:-1},M7:{note:6,accidental:0},octave:{note:7,accidental:0}}}static get intervals(){return{u:0,unison:0,m2:1,b2:1,min2:1,S:1,H:1,2:2,M2:2,maj2:2,T:2,W:2,m3:3,b3:3,min3:3,M3:4,3:4,maj3:4,4:5,p4:5,"#4":6,b5:6,aug4:6,dim5:6,5:7,p5:7,"#5":8,b6:8,aug5:8,6:9,M6:9,maj6:9,b7:10,m7:10,min7:10,dom7:10,M7:11,maj7:11,8:12,octave:12}}static get scales(){return{major:[2,2,1,2,2,2,1],dorian:[2,1,2,2,2,1,2],mixolydian:[2,2,1,2,2,1,2],minor:[2,1,2,2,1,2,2]}}static get scaleTypes(){return{M:Music.scales.major,m:Music.scales.minor}}static get accidentals(){return["bb","b","n","#","##"]}static get noteValues(){return{c:{root_index:0,int_val:0},cn:{root_index:0,int_val:0},"c#":{root_index:0,int_val:1},"c##":{root_index:0,int_val:2},cb:{root_index:0,int_val:11},cbb:{root_index:0,int_val:10},d:{root_index:1,int_val:2},dn:{root_index:1,int_val:2},"d#":{root_index:1,int_val:3},"d##":{root_index:1,int_val:4},db:{root_index:1,int_val:1},dbb:{root_index:1,int_val:0},e:{root_index:2,int_val:4},en:{root_index:2,int_val:4},"e#":{root_index:2,int_val:5},"e##":{root_index:2,int_val:6},eb:{root_index:2,int_val:3},ebb:{root_index:2,int_val:2},f:{root_index:3,int_val:5},fn:{root_index:3,int_val:5},"f#":{root_index:3,int_val:6},"f##":{root_index:3,int_val:7},fb:{root_index:3,int_val:4},fbb:{root_index:3,int_val:3},g:{root_index:4,int_val:7},gn:{root_index:4,int_val:7},"g#":{root_index:4,int_val:8},"g##":{root_index:4,int_val:9},gb:{root_index:4,int_val:6},gbb:{root_index:4,int_val:5},a:{root_index:5,int_val:9},an:{root_index:5,int_val:9},"a#":{root_index:5,int_val:10},"a##":{root_index:5,int_val:11},ab:{root_index:5,int_val:8},abb:{root_index:5,int_val:7},b:{root_index:6,int_val:11},bn:{root_index:6,int_val:11},"b#":{root_index:6,int_val:0},"b##":{root_index:6,int_val:1},bb:{root_index:6,int_val:10},bbb:{root_index:6,int_val:9}}}isValidNoteValue(e){return!(e==null||e<0||e>=Music.NUM_TONES)}isValidIntervalValue(e){return this.isValidNoteValue(e)}getNoteParts(e){if(!e||e.length<1)throw new Vex.RERR("BadArguments","Invalid note name: "+e);if(e.length>3)throw new Vex.RERR("BadArguments","Invalid note name: "+e);const r=e.toLowerCase(),o=/^([cdefgab])(b|bb|n|#|##)?$/.exec(r);if(o!=null){const a=o[1],l=o[2];return{root:a,accidental:l}}else throw new Vex.RERR("BadArguments","Invalid note name: "+e)}getKeyParts(e){if(!e||e.length<1)throw new Vex.RERR("BadArguments","Invalid key: "+e);const r=e.toLowerCase(),o=/^([cdefgab])(b|#)?(mel|harm|m|M)?$/.exec(r);if(o!=null){const a=o[1],l=o[2];let c=o[3];return c||(c="M"),{root:a,accidental:l,type:c}}else throw new Vex.RERR("BadArguments",`Invalid key: ${e}`)}getNoteValue(e){const r=Music.noteValues[e];if(r==null)throw new Vex.RERR("BadArguments",`Invalid note name: ${e}`);return r.int_val}getIntervalValue(e){const r=Music.intervals[e];if(r==null)throw new Vex.RERR("BadArguments",`Invalid interval name: ${e}`);return r}getCanonicalNoteName(e){if(!this.isValidNoteValue(e))throw new Vex.RERR("BadArguments",`Invalid note value: ${e}`);return Music.canonical_notes[e]}getCanonicalIntervalName(e){if(!this.isValidIntervalValue(e))throw new Vex.RERR("BadArguments",`Invalid interval value: ${e}`);return Music.diatonic_intervals[e]}getRelativeNoteValue(e,r,s){if(s==null&&(s=1),s!==1&&s!==-1)throw new Vex.RERR("BadArguments",`Invalid direction: ${s}`);let o=(e+s*r)%Music.NUM_TONES;return o<0&&(o+=Music.NUM_TONES),o}getRelativeNoteName(e,r){const s=this.getNoteParts(e),o=this.getNoteValue(s.root);let a=r-o;if(Math.abs(a)>Music.NUM_TONES-3){let c=1;a>0&&(c=-1);const u=(r+1+(o+1))%Music.NUM_TONES*c;if(Math.abs(u)>2)throw new Vex.RERR("BadArguments",`Notes not related: ${e}, ${r})`);a=u}if(Math.abs(a)>2)throw new Vex.RERR("BadArguments",`Notes not related: ${e}, ${r})`);let l=s.root;if(a>0)for(let c=1;c<=a;++c)l+="#";else if(a<0)for(let c=-1;c>=a;--c)l+="b";return l}getScaleTones(e,r){const s=[e];let o=e;for(let a=0;ai.getMetrics().width;class Accidental extends Modifier{static get CATEGORY(){return"accidentals"}static format(e,r){const o=r.left_shift+1,a=3;if(!e||e.length===0)return;const l=[];let c=null,u=0,m;for(let C=0;CP.line-C.line);const g=[];let d=0,y=null;for(let C=0;Cd?P.shift:d,y=P.line}let A=0;for(let C=0;Cg[k+R],T=R=>R.map(M),F=(R,Q)=>{const[_,K]=T([R,Q]).map(G=>G.line);return _-K},D=(...R)=>R.map(T).every(Q=>!this.checkCollision(...Q)),N=I-k+1;let O=this.checkCollision(g[k],g[I])?"a":"b";switch(N){case 3:O==="a"&&F(1,2)===.5&&F(0,1)!==.5&&(O="second_on_bottom");break;case 4:D([0,2],[1,3])&&(O="spaced_out_tetrachord");break;case 5:O==="b"&&D([1,3])&&(O="spaced_out_pentachord",D([0,2],[2,4])&&(O="very_spaced_out_pentachord"));break;case 6:D([0,3],[1,4],[2,5])&&(O="spaced_out_hexachord"),D([0,2],[2,4],[1,3],[3,5])&&(O="very_spaced_out_hexachord");break}let B,V;if(N>=7){let R=2,Q=!0;for(;Q===!0;){Q=!1;for(let _=0;_+RV?A:V}else for(B=C;B<=I;B++)V=Flow.accidentalColumnsTable[N][O][B-C],g[B].column=V,A=A>V?A:V;C=I}const b=[],S=[];for(let C=0;C<=A;C++)b[C]=0,S[C]=0;b[0]=d+o,S[0]=d+o,g.forEach(C=>{C.width>b[C.column]&&(b[C.column]=C.width)});for(let C=1;C{let P=0;const k=x+C.numAcc;for(x;x0?(o=r.flatLine||r.dblSharpLine?2.5:3,e.dblSharpLine&&(s-=.5)):(o=e.flatLine||e.dblSharpLine?2.5:3,r.dblSharpLine&&(s-=.5));const a=Math.abs(s){const u=new Fraction(0,1);c.getTickables().forEach(g=>{if(g.shouldIgnoreTicks())return;const d=o[u.value()];d?d.push(g):(s.push(u.value()),o[u.value()]=[g]),u.add(g.getTicks())})});const a=new Music;r||(r="C");const l=a.createScaleMap(r);s.forEach(c=>{const u=o[c],m=[],g=d=>{d.isRest()||d.shouldIgnoreTicks()||(d.keys.forEach((y,A)=>{const b=a.getNoteParts(y.split("/")[0]),S=b.accidental||"n",E=b.root+S,x=l[b.root]===E,C=m.indexOf(E)>-1;if(!x||x&&C){l[b.root]=E;const P=new Accidental(S);d.addAccidental(A,P),m.push(E)}}),d.getModifiers().forEach(y=>{y.getCategory()==="gracenotegroups"&&y.getGraceNotes().forEach(g)}))};u.forEach(g)})}constructor(e=null){if(super(),this.setAttribute("type","Accidental"),L$g("New accidental: ",e),this.note=null,this.index=null,this.type=e,this.position=Modifier.Position.LEFT,this.render_options={font_scale:38,stroke_px:3,parenLeftPadding:2,parenRightPadding:2},this.accidental=Flow.accidentalCodes(this.type),!this.accidental)throw new Vex.RERR("ArgumentError",`Unknown accidental type: ${e}`);this.cautionary=!1,this.parenLeft=null,this.parenRight=null,this.reset()}reset(){const e=this.render_options.font_scale;this.glyph=new Glyph(this.accidental.code,e),this.glyph.setOriginX(1),this.cautionary&&(this.parenLeft=new Glyph(Flow.accidentalCodes("{").code,e),this.parenRight=new Glyph(Flow.accidentalCodes("}").code,e),this.parenLeft.setOriginX(1),this.parenRight.setOriginX(1))}getCategory(){return Accidental.CATEGORY}getWidth(){const e=this.cautionary?getGlyphWidth(this.parenLeft)+getGlyphWidth(this.parenRight)+this.render_options.parenLeftPadding+this.render_options.parenRightPadding:0;return getGlyphWidth(this.glyph)+e}setNote(e){if(!e)throw new Vex.RERR("ArgumentError",`Bad note value: ${e}`);this.note=e,this.note.getCategory()==="gracenotes"&&(this.render_options.font_scale=25,this.reset())}setAsCautionary(){return this.cautionary=!0,this.render_options.font_scale=28,this.reset(),this}draw(){const{context:e,type:r,position:s,note:o,index:a,cautionary:l,x_shift:c,y_shift:u,glyph:m,parenLeft:g,parenRight:d,render_options:{parenLeftPadding:y,parenRightPadding:A}}=this;if(this.checkContext(),!(o&&a!=null))throw new Vex.RERR("NoAttachedNote","Can't draw accidental without a note and index.");const b=o.getModifierStartXY(s,a);let S=b.x+c;const E=b.y+u;L$g("Rendering: ",r,S,E),l?(d.render(e,S,E),S-=getGlyphWidth(d),S-=A,S-=this.accidental.parenRightPaddingAdjustment,m.render(e,S,E),S-=getGlyphWidth(m),S-=y,g.render(e,S,E)):m.render(e,S,E),this.setRendered()}}let NoteSubGroup$1=class ji extends Modifier{static get CATEGORY(){return"notesubgroup"}static format(e,r){if(!e||e.length===0)return!1;let s=0;for(let o=0;o{r.ignore_ticks=!1}),this.width=0,this.preFormatted=!1,this.formatter=new Formatter,this.voice=new Voice$1({num_beats:4,beat_value:4,resolution:Flow.RESOLUTION}).setStrict(!1),this.voice.addTickables(this.subNotes),this}getCategory(){return ji.CATEGORY}preFormat(){this.preFormatted||(this.formatter.joinVoices([this.voice]).format([this.voice],0),this.setWidth(this.formatter.getMinTotalWidth()),this.preFormatted=!0)}setNote(e){this.note=e}setWidth(e){this.width=e}getWidth(){return this.width}draw(){this.checkContext();const e=this.getNote();if(!(e&&this.index!==null))throw new Vex.RuntimeError("NoAttachedNote","Can't draw notes without a parent note and parent note index.");this.setRendered(),this.alignSubNotesWithNote(this.subNotes,e),this.subNotes.forEach(r=>r.setContext(this.context).drawWithStyle())}};class StaveTie extends Element$1{constructor(e,r){super(),this.setAttribute("type","StaveTie"),this.notes=e,this.context=null,this.text=r,this.direction=null,this.render_options={cp1:8,cp2:12,text_shift_x:0,first_x_shift:0,last_x_shift:0,y_shift:7,tie_spacing:0,font:{family:"Arial",size:15,style:""}},this.font=this.render_options.font,this.setNotes(e)}setFont(e){return this.font=e,this}setDirection(e){return this.direction=e,this}setNotes(e){if(!e.first_note&&!e.last_note)throw new Vex.RuntimeError("BadArguments","Tie needs to have either first_note or last_note set.");if(e.first_indices||(e.first_indices=[0]),e.last_indices||(e.last_indices=[0]),e.first_indices.length!==e.last_indices.length)throw new Vex.RuntimeError("BadArguments","Tied notes must have similar index sizes");return this.first_note=e.first_note,this.first_indices=e.first_indices,this.last_note=e.last_note,this.last_indices=e.last_indices,this}isPartial(){return!this.first_note||!this.last_note}renderTie(e){if(e.first_ys.length===0||e.last_ys.length===0)throw new Vex.RERR("BadArguments","No Y-values to render");const r=this.context;let s=this.render_options.cp1,o=this.render_options.cp2;Math.abs(e.last_x_px-e.first_x_px)<10&&(s=2,o=8);const a=this.render_options.first_x_shift,l=this.render_options.last_x_shift,c=this.render_options.y_shift*e.direction;for(let u=0;uy&&Math.abs(g-y)<10?-6:0;if(this.first_note&&this.first_note.DYMusicScoreType==="jianpu"){if(this.getAttribute("type")==="TabTie")continue;g1){const r=new Beam$1(e);r.render_options.beam_width=3,r.render_options.partial_beam_length=4,this.beams.push(r)}return this}setNote(e){this.note=e}setWidth(e){this.width=e}getWidth(){return this.width}getGraceNotes(){return this.grace_notes}draw(){this.checkContext();const e=this.getNote();if(L$f("Drawing grace note group for:",e),!(e&&this.index!==null))throw new Vex.RuntimeError("NoAttachedNote","Can't draw grace note without a parent note and parent note index.");if(this.setRendered(),this.alignSubNotesWithNote(this.getGraceNotes(),e),this.grace_notes.forEach(r=>{r.setContext(this.context).draw()}),this.beams.forEach(r=>{r.setContext(this.context).draw()}),this.show_slur){const r=this.getNote().getCategory()===StaveNote.CATEGORY,s=r?StaveTie:TabTie;this.slur=new s({last_note:this.grace_notes[0],first_note:e,first_indices:[0],last_indices:[0]}),this.slur.render_options.cp2=12,this.slur.render_options.y_shift=(r?7:5)+this.render_options.slur_y_shift,this.slur.setContext(this.context).draw()}}}class Stroke extends Modifier{static get CATEGORY(){return"strokes"}static get Type(){return{BRUSH_DOWN:1,BRUSH_UP:2,ROLL_DOWN:3,ROLL_UP:4,RASQUEDO_DOWN:5,RASQUEDO_UP:6,ARPEGGIO_DIRECTIONLESS:7}}static format(e,r){const s=r.left_shift,o=0;if(!e||e.length===0)return this;const a=e.map(u=>{const m=u.getNote();if(m instanceof StaveNote){const{line:g,displaced:d}=m.getKeyProps()[u.getIndex()],y=d?m.getExtraLeftPx():0;return{line:g,shift:y,stroke:u}}else{const{str:g}=m.getPositions()[u.getIndex()];return{line:g,shift:0,stroke:u}}}),l=s,c=a.reduce((u,{stroke:m,shift:g})=>(m.setXShift(l+g),Math.max(m.getWidth()+o,u)),0);return r.left_shift+=c,!0}constructor(e,r){super(),this.setAttribute("type","Stroke"),this.note=null,this.options=Vex.Merge({},r),this.all_voices="all_voices"in this.options?this.options.all_voices:!0,this.note_end=null,this.index=null,this.type=e,this.position=Modifier.Position.LEFT,this.render_options={font_scale:38,stroke_px:3,stroke_spacing:10},this.font={family:"serif",size:10,weight:"bold italic"},this.setXShift(0),this.setWidth(10)}getCategory(){return Stroke.CATEGORY}getPosition(){return this.position}addEndNote(e){return this.note_end=e,this}draw(){if(this.checkContext(),this.setRendered(),!(this.note&&this.index!=null))throw new Vex.RERR("NoAttachedNote","Can't draw stroke without a note and index.");const e=this.note.getModifierStartXY(this.position,this.index);let r=this.note.getYs(),s=e.y,o=e.y;const a=e.x-5,l=this.note.stave.options.spacing_between_lines_px,c=this.getModifierContext().getModifiers(this.note.getCategory());for(let A=0;AI.line-k.line);let S=0,E=0,x=0,C=null,P=null;for(g=0;gE?k:E):A===Modifier.Position.RIGHT&&(d.setXShift(S),k+=T,x=k>x?k:x),C=I,P=y}return r.left_shift+=E,r.right_shift+=x,!0}constructor(e){super(),this.setAttribute("type","StringNumber"),this.note=null,this.last_note=null,this.index=null,this.string_number=e,this.setWidth(20),this.position=Modifier.Position.ABOVE,this.x_shift=0,this.y_shift=0,this.x_offset=0,this.y_offset=0,this.dashed=!0,this.leg=Renderer.LineEndType.NONE,this.radius=8,this.font={family:"sans-serif",size:10,weight:"bold"}}getCategory(){return StringNumber.CATEGORY}getNote(){return this.note}setNote(e){return this.note=e,this}getIndex(){return this.index}setIndex(e){return this.index=e,this}setLineEndType(e){return e>=Renderer.LineEndType.NONE&&e<=Renderer.LineEndType.DOWN&&(this.leg=e),this}setStringNumber(e){return this.string_number=e,this}setOffsetX(e){return this.x_offset=e,this}setOffsetY(e){return this.y_offset=e,this}setLastNote(e){return this.last_note=e,this}setDashed(e){return this.dashed=e,this}draw(){const e=this.checkContext();if(!(this.note&&this.index!=null))throw new Vex.RERR("NoAttachedNote","Can't draw string number without a note and index.");this.setRendered();const r=this.note.stave.options.spacing_between_lines_px,s=this.note.getModifierStartXY(this.position,this.index);let o=s.x+this.x_shift+this.x_offset,a=s.y+this.y_shift+this.y_offset;switch(this.position){case Modifier.Position.ABOVE:case Modifier.Position.BELOW:{const c=this.note.getStemExtents();let u=c.topY,m=c.baseY+2;this.note.stem_direction===StaveNote.STEM_DOWN&&(u=c.baseY,m=c.topY-2),this.position===Modifier.Position.ABOVE?a=this.note.hasStem()?u-r*1.75:s.y-r*1.75:a=this.note.hasStem()?m+r*1.5:s.y+r*1.75,a+=this.y_shift+this.y_offset;break}case Modifier.Position.LEFT:o-=this.radius/2+5;break;case Modifier.Position.RIGHT:o+=this.radius/2+6;break;default:throw new Vex.RERR("InvalidPosition",`The position ${this.position} is invalid`)}e.save(),e.beginPath(),e.arc(o,a,this.radius,0,Math.PI*2,!1),e.lineWidth=1.5,e.stroke(),e.setFont(this.font.family,this.font.size,this.font.weight);const l=o-e.measureText(this.string_number).width/2;if(e.fillText(""+this.string_number,l,a+4.5),this.last_note!=null){const c=this.last_note.getStemX()-this.note.getX()+5;e.strokeStyle="#000000",e.lineCap="round",e.lineWidth=.6,this.dashed?Renderer.drawDashedLine(e,o+10,a,o+c,a,[3,3]):Renderer.drawDashedLine(e,o+10,a,o+c,a,[3,0]);let u,m;switch(this.leg){case Renderer.LineEndType.UP:u=-10,m=this.dashed?[3,3]:[3,0],Renderer.drawDashedLine(e,o+c,a,o+c,a+u,m);break;case Renderer.LineEndType.DOWN:u=10,m=this.dashed?[3,3]:[3,0],Renderer.drawDashedLine(e,o+c,a,o+c,a+u,m);break}}e.restore()}}class TickContext extends Tickable{static getNextContext(e){const r=e.tContexts,s=r.indexOf(e);return r[s+1]}constructor(){super(),this.setAttribute("type","TickContext"),this.currentTick=new Fraction(0,1),this.maxTicks=new Fraction(0,1),this.minTicks=null,this.padding=3,this.x=0,this.xBase=0,this.xOffset=0,this.tickables=[],this.notePx=0,this.extraLeftPx=0,this.extraRightPx=0,this.tContexts=[]}getX(){return this.x}setX(e){return this.x=e,this.xBase=e,this.xOffset=0,this}getXBase(){return this.xBase}setXBase(e){this.xBase=e,this.x=e+this.xOffset}getXOffset(){return this.xOffset}setXOffset(e){this.xOffset=e,this.x=this.xBase+e}getWidth(){return this.width+this.padding*2}setPadding(e){return this.padding=e,this}getMaxTicks(){return this.maxTicks}getMinTicks(){return this.minTicks}getTickables(){return this.tickables}getCenterAlignedTickables(){return this.tickables.filter(e=>e.isCenterAligned())}getMetrics(){const{width:e,notePx:r,extraLeftPx:s,extraRightPx:o}=this;return{width:e,notePx:r,extraLeftPx:s,extraRightPx:o}}getCurrentTick(){return this.currentTick}setCurrentTick(e){this.currentTick=e,this.preFormatted=!1}getExtraPx(){let e=0,r=0,s=0,o=0;for(let a=0;ai(e/.5)*.5,isWithinLines=(i,e)=>e===ABOVE?i<=5:i>=1,getRoundingFunction=(i,e)=>isWithinLines(i,e)?e===ABOVE?Math.ceil:Math.floor:Math.round,snapLineToStaff=(i,e,r,s)=>{const o=roundToNearestHalf(getRoundingFunction(e,r),e),a=i&&isWithinLines(o,r),l=o%1===0;return a&&l?o+.5*-s:o},isStaveNote=i=>{const e=i.getCategory();return e==="stavenotes"||e==="gracenotes"},isTabNote=i=>{const e=i.getCategory();return e==="tabnotes"||e==="numberednotes"},getTopY=(i,e)=>{const r=i.getStave(),s=i.getStemDirection(),{topY:o,baseY:a}=i.getStemExtents();if(isStaveNote(i))return i.hasStem()?s===Stem.UP?o:a:Math.min(...i.getYs());if(isTabNote(i))return i.hasStem()&&s===Stem.UP?o:r.getYForTopText(e);throw new Vex.RERR("UnknownCategory","Only can get the top and bottom ys of stavenotes and tabnotes")},getBottomY=(i,e)=>{const r=i.getStave(),s=i.getStemDirection(),{topY:o,baseY:a}=i.getStemExtents();if(isStaveNote(i))return i.hasStem()?s===Stem.UP?a:o:Math.max(...i.getYs());if(isTabNote(i))return i.hasStem()?s===Stem.UP?r.getYForBottomText(e):o:r.getYForBottomText(e);throw new Vex.RERR("UnknownCategory","Only can get the top and bottom ys of stavenotes and tabnotes")},getInitialOffset=(i,e)=>{const r=e===ABOVE&&i.getStemDirection()===Stem.UP||e===BELOW&&i.getStemDirection()===Stem.DOWN;return isStaveNote(i)?i.hasStem()&&r?.5:1:i.hasStem()&&r?1:0};let Articulation$1=class Ei extends Modifier{static get CATEGORY(){return"articulations"}static get INITIAL_OFFSET(){return-.5}static format(e,r){if(!e||e.length===0)return!1;const s=u=>u.getPosition()===ABOVE,o=u=>u.getPosition()===BELOW,a=.5,l=(u,m,g)=>roundToNearestHalf(getRoundingFunction(m,g),u.glyph.getMetrics().height/10+a);e.filter(s).forEach(u=>{u.setTextLine(r.top_text_line),r.top_text_line+=l(u,r.top_text_line,ABOVE)}),e.filter(o).forEach(u=>{u.setTextLine(r.text_line),r.text_line+=l(u,r.text_line,BELOW)});const c=e.map(u=>u.getWidth()).reduce((u,m)=>Math.max(m,u));return r.left_shift+=c/2,r.right_shift+=c/2,!0}static easyScoreHook({articulations:e},r,s){if(!e)return;const o={staccato:"a.",tenuto:"a-"};e.split(",").map(a=>a.trim().split(".")).map(([a,l])=>{const c={type:o[a]};return l&&(c.position=Modifier.PositionString[l]),s.getFactory().Articulation(c)}).map(a=>r.addModifier(0,a))}constructor(e){if(super(),this.setAttribute("type","Articulation"),this.note=null,this.index=null,this.type=e,this.position=BELOW,this.render_options={font_scale:38},this.breathMarkDistance=.8,this.articulation=Flow.articulationCodes(this.type),this.type==="abr"&&(this.articulation={code:"v6c",between_lines:!1}),!this.articulation)throw new Vex.RERR("ArgumentError",`Articulation not found: ${this.type}`);this.glyph=new Glyph(this.articulation.code,this.render_options.font_scale),this.setWidth(this.glyph.getMetrics().width)}getCategory(){return Ei.CATEGORY}draw(){const{note:e,index:r,position:s,glyph:o,articulation:{between_lines:a},text_line:l,context:c}=this;if(this.checkContext(),!e||r==null)throw new Vex.RERR("NoAttachedNote","Can't draw Articulation without a note and index.");this.setRendered();const u=e.getStave(),m=u.getSpacingBetweenLines(),g=e.getCategory()==="tabnotes";let{x:d}=e.getModifierStartXY(s,r);if(this.type==="abr"){let E=0;const x=e.getTickContext(),C=TickContext.getNextContext(x),P=e.getTickContext().getX();if(C)E=(C.getX()-P)*this.breathMarkDistance;else{const k=e.getStave();E=(k.getX()+k.getWidth()-P)*this.breathMarkDistance}d+=E}const y=this.getXShift();y&&(d+=y);const A=!a||g,b=getInitialOffset(e,s);let S={[ABOVE]:()=>{o.setOrigin(.5,1);const E=getTopY(e,l)-(l+b)*m+(this.y_shift||0);return A?Math.min(u.getYForTopText(Ei.INITIAL_OFFSET),E):E},[BELOW]:()=>{o.setOrigin(.5,0);const E=getBottomY(e,l)+(l+b)*m;return A?Math.max(u.getYForBottomText(Ei.INITIAL_OFFSET),E):E}}[s]();if(!g){const E=s===ABOVE?-1:1,x=g?e.positions[r].str:e.getKeyProps()[r].line,P=(e.getYs()[r]-S)/m+x,k=snapLineToStaff(a,P,s,E);isWithinLines(k,s)&&o.setOrigin(.5,.5),S+=Math.abs(k-P)*m*E}L$e(`Rendering articulation at (x: ${d}, y: ${S})`),o.render(c,d,S)}};function L$d(...i){Ornament.DEBUG&&Vex.L("Vex.Flow.Ornament",i)}class Ornament extends Modifier{static get CATEGORY(){return"ornaments"}static format(e,r){if(!e||e.length===0)return!1;let s=0;for(let o=0;o0&&o--;for(let u=0;u{L$b("Preformatting ModifierContext: ",e.CATEGORY),e.format(this.getModifiers(e.CATEGORY),this.state,this)}),this.width=this.state.left_shift+this.state.right_shift,this.preFormatted=!0)}postFormat(){this.postFormatted||this.POSTFORMAT.forEach(e=>{L$b("Postformatting ModifierContext: ",e.CATEGORY),e.postFormat(this.getModifiers(e.CATEGORY),this)})}}function L$a(...i){Formatter.DEBUG&&Vex.L("Vex.Flow.Formatter",i)}function getNext(i,e){var s,o;const r=i[e+1];return r&&((s=r==null?void 0:r.keys)!=null&&s.includes("b/4"))||(o=r==null?void 0:r.keys)!=null&&o.includes("r/4")?getNext(i,e+1):r}function lookAhead(i,e,r,s){let o=e;for(r+=1;r{if(u.getMode()===Voice$1.Mode.STRICT&&!u.isComplete())throw new Vex.RERR("IncompleteVoice","Voice does not have enough notes.");return Math.max(c,Fraction.LCM(c,u.getResolutionMultiplier()))},1),o={},a=[],l=[];return i.forEach(c=>{const u=new Fraction(0,s);c.getTickables().forEach(m=>{const g=u.numerator;if(!o[g]){const d=new e;l.push(d),o[g]=d}r(m,o[g]),a.push(g),u.add(m.getTicks())})}),{map:o,array:l,list:Vex.SortAndUnique(a,(c,u)=>c-u,(c,u)=>c===u),resolutionMultiplier:s}}class Formatter{static SimpleFormat(e,r=0,{paddingBetween:s=10}={}){e.reduce((o,a)=>{a.addToModifierContext(new ModifierContext);const l=new TickContext().addTickable(a).preFormat(),c=l.getExtraPx();return l.setX(o+c.left),o+l.getWidth()+c.right+s},r)}static plotDebugging(e,r,s,o,a){const l=s+Note.STAVEPADDING,c=r.contextGaps;function u(m,g,d){e.beginPath(),e.setStrokeStyle(d),e.setFillStyle(d),e.setLineWidth(1),e.fillRect(m,o,g-m,a-o)}e.save(),e.setFont("Arial",8,""),c.gaps.forEach(m=>{u(l+m.x1,l+m.x2,"#aaa"),e.fillText(Math.round(m.x2-m.x1),l+m.x1,a+12)}),e.fillText(Math.round(c.total)+"px",l-20,a+12),e.setFillStyle("red"),e.fillText("Loss: "+r.lossHistory.map(m=>Math.round(m)),l-20,a+22),e.restore()}static FormatAndDraw(e,r,s,o){const a={auto_beam:!1,align_rests:!1};typeof o=="object"?Vex.Merge(a,o):typeof o=="boolean"&&(a.auto_beam=o);const l=new Voice$1(Flow.TIME4_4).setMode(Voice$1.Mode.SOFT).addTickables(s),c=a.auto_beam?Beam$1.applyAndGetBeams(l):[];return new Formatter().joinVoices([l],{align_rests:a.align_rests}).formatToStave([l],r,{align_rests:a.align_rests,stave:r}),l.setStave(r).draw(e,r),c.forEach(u=>u.setContext(e).draw()),l.getBoundingBox()}static FormatAndDrawTab(e,r,s,o,a,l,c){const u={auto_beam:l,align_rests:!1};typeof c=="object"?Vex.Merge(u,c):typeof c=="boolean"&&(u.auto_beam=c);const m=new Voice$1(Flow.TIME4_4).setMode(Voice$1.Mode.SOFT).addTickables(a),g=new Voice$1(Flow.TIME4_4).setMode(Voice$1.Mode.SOFT).addTickables(o),d=u.auto_beam?Beam$1.applyAndGetBeams(m):[];new Formatter().joinVoices([m],{align_rests:u.align_rests}).joinVoices([g]).formatToStave([m,g],s,{align_rests:u.align_rests}),m.draw(e,s),g.draw(e,r),d.forEach(y=>y.setContext(e).draw()),new StaveConnector(s,r).setContext(e).draw()}static AlignRestsToNotes(e,r,s){return e.forEach((o,a)=>{if(o instanceof StaveNote&&o.isRest()){if(o.tuplet&&!s)return;const l=o.getGlyph().position.toUpperCase();if(l!=="R/4"&&l!=="B/4")return;if(r||o.beam!=null){const c=o.getKeyProps()[0];if(a===0)c.line=lookAhead(e,c.line,a,!1),o.setKeyLine(0,c.line);else if(a>0&&a0){const S=A<1.5?Math.abs(A-1.5)*c:0;b.setResetHeight(S)}else{const S=A>4.5?Math.abs(A-4.5)*c:0;b.setResetHeight(S)}}}}}}),this}constructor(){this.minTotalWidth=0,this.hasMinTotalWidth=!1,this.totalTicks=new Fraction(0,1),this.tickContexts=null,this.modiferContexts=null,this.contextGaps={total:0,gaps:[]},this.voices=[]}alignRests(e,r){if(!e||!e.length)throw new Vex.RERR("BadArgument","No voices to format rests");e.forEach(s=>Formatter.AlignRestsToNotes(s.getTickables(),r))}preCalculateMinTotalWidth(e){if(this.hasMinTotalWidth)return this.minTotalWidth;if(!this.tickContexts){if(!e)throw new Vex.RERR("BadArgument","'voices' required to run preCalculateMinTotalWidth");this.createTickContexts(e)}const{list:r,map:s}=this.tickContexts;return this.minTotalWidth=r.map(o=>{const a=s[o];return a.preFormat(),a.getWidth()}).reduce((o,a)=>o+a,0),this.hasMinTotalWidth=!0,this.minTotalWidth}getMinTotalWidth(){if(!this.hasMinTotalWidth)throw new Vex.RERR("NoMinTotalWidth","Call 'preCalculateMinTotalWidth' or 'preFormat' before calling 'getMinTotalWidth'");return this.minTotalWidth}createModifierContexts(e){const r=createContexts(e,ModifierContext,(s,o)=>s.addToModifierContext(o));return this.modiferContexts=r,r}createTickContexts(e){const r=createContexts(e,TickContext,(s,o)=>o.addTickable(s));return r.array.forEach(s=>{s.tContexts=r.array}),this.totalTicks=e[0].getTicksUsed().clone(),this.tickContexts=r,r}preFormat(e=0,r,s,o){const a=this.tickContexts,{list:l,map:c,resolutionMultiplier:u}=a;s&&o&&s.forEach(E=>E.setStave(o).preFormat());let m=0,g=0;const d=e/2;if(this.minTotalWidth=0,l.forEach(E=>{const x=c[E];r&&x.setContext(r),x.preFormat();const C=x.getWidth();this.minTotalWidth+=C;const P=x.getMetrics();m=m+g+P.extraLeftPx,x.setX(m),g=C-P.extraLeftPx}),this.minTotalWidth=m+g,this.hasMinTotalWidth=!0,e<=0)return;const y=e-this.minTotalWidth;let A=this.totalTicks.value();A===0&&(A=1);const b=y/(A*u);let S=0;l.forEach((E,x)=>{const C=l[x-1]||0,P=c[E],k=(E-C)*b;S+=k,P.setX(P.getX()+S),P.getCenterAlignedTickables().forEach(I=>{I.center_x_shift=d-P.getX()})}),l.length!==1&&(this.justifyWidth=e,this.lossHistory=[],this.evaluate())}evaluate(){const e=this.justifyWidth;this.contextGaps={total:0,gaps:[]},this.tickContexts.list.forEach((a,l)=>{if(l===0)return;const c=this.tickContexts.list[l-1],u=this.tickContexts.map[c],m=this.tickContexts.map[a],g=u.getMetrics(),d=u.getX()+g.width,y=m.getX(),A=y-d;this.contextGaps.total+=A,this.contextGaps.gaps.push({x1:d,x2:y}),m.getFormatterMetrics().freedom.left=A,u.getFormatterMetrics().freedom.right=A});const r=this.durationStats={};function s(a,l){const c=r[a];c===void 0?r[a]={mean:l,count:1}:(c.count+=1,c.mean=(c.mean+l)/2)}this.voices.forEach(a=>{a.getTickables().forEach((l,c,u)=>{const m=l.getTicks().clone().simplify().toString(),g=l.getMetrics(),d=l.getFormatterMetrics(),y=l.getX()+g.noteWidth+g.modRightPx+g.extraRightPx;let A=0;if(c{a.getTickables().forEach(l=>{const c=l.getTicks().clone().simplify().toString(),u=l.getFormatterMetrics();u.iterations+=1,u.space.deviation=u.space.used-r[c].mean,u.duration=c,u.space.mean=r[c].mean,o+=Math.pow(r[c].mean,2)})}),this.totalCost=Math.sqrt(o),this.lossHistory.push(this.totalCost),this}tune(){const e=o=>o.reduce((a,l)=>a+l);function r(o,a,l,c){o.setX(o.getX()+c),o.getFormatterMetrics().freedom.left+=c,o.getFormatterMetrics().freedom.right-=c,a&&(a.getFormatterMetrics().freedom.right+=c),l&&(l.getFormatterMetrics().freedom.left-=c)}let s=0;return this.tickContexts.list.forEach((o,a,l)=>{const c=this.tickContexts.map[o],u=a>0?this.tickContexts.map[l[a-1]]:null,m=ay.getFormatterMetrics().space.deviation));g>0?s=-Math.min(c.getFormatterMetrics().freedom.right,Math.abs(g)):g<0&&(m?s=Math.min(m.getFormatterMetrics().freedom.right,Math.abs(g)):s=0);const d=Math.min(5,Math.abs(s));s=s>0?d:-d}),this.evaluate()}postFormat(){const e=r=>r.list.forEach(s=>r.map[s].postFormat());return e(this.modiferContexts),e(this.tickContexts),this}joinVoices(e){return this.createModifierContexts(e),this.hasMinTotalWidth=!1,this}format(e,r,s){const o={align_rests:!1,context:null,stave:null};return Vex.Merge(o,s),this.voices=e,this.alignRests(e,o.align_rests),this.createTickContexts(e),this.preFormat(r,o.context,e,o.stave),this}formatToStave(e,r,s){const o=r.getNoteEndX()-r.getNoteStartX()-10;L$a("Formatting voices to width: ",o);const a={context:r.getContext()};return Vex.Merge(a,s),this.format(e,o,a)}}class StaveModifier extends Element$1{static get Position(){return{LEFT:1,RIGHT:2,ABOVE:3,BELOW:4,BEGIN:5,END:6}}constructor(){super(),this.setAttribute("type","StaveModifier"),this.padding=10,this.position=StaveModifier.Position.ABOVE,this.layoutMetrics=null}getPosition(){return this.position}setPosition(e){return this.position=e,this}getStave(){return this.stave}setStave(e){return this.stave=e,this}getWidth(){return this.width}setWidth(e){return this.width=e,this}getX(){return this.x}setX(e){return this.x=e,this}getCategory(){return""}makeSpacer(e){return{getContext(){return!0},setStave(){},renderToStave(){},getMetrics(){return{width:e}}}}placeGlyphOnLine(e,r,s){e.setYShift(r.getYForLine(s)-r.getYForGlyphs())}getPadding(e){return e!==void 0&&e<2?0:this.padding}setPadding(e){return this.padding=e,this}setLayoutMetrics(e){return this.layoutMetrics=e,this}getLayoutMetrics(){return this.layoutMetrics}}class Barline extends StaveModifier{static get CATEGORY(){return"barlines"}static get type(){return{SINGLE:1,DOUBLE:2,END:3,REPEAT_BEGIN:4,REPEAT_END:5,REPEAT_BOTH:6,NONE:7}}static get typeString(){return{single:Barline.type.SINGLE,double:Barline.type.DOUBLE,end:Barline.type.END,repeatBegin:Barline.type.REPEAT_BEGIN,repeatEnd:Barline.type.REPEAT_END,repeatBoth:Barline.type.REPEAT_BOTH,none:Barline.type.NONE}}constructor(e){super(),this.setAttribute("type","Barline"),this.thickness=Flow.STAVE_LINE_THICKNESS;const r=Barline.type;this.widths={},this.widths[r.SINGLE]=5,this.widths[r.DOUBLE]=5,this.widths[r.END]=5,this.widths[r.REPEAT_BEGIN]=5,this.widths[r.REPEAT_END]=5,this.widths[r.REPEAT_BOTH]=5,this.widths[r.NONE]=5,this.paddings={},this.paddings[r.SINGLE]=0,this.paddings[r.DOUBLE]=0,this.paddings[r.END]=0,this.paddings[r.REPEAT_BEGIN]=15,this.paddings[r.REPEAT_END]=15,this.paddings[r.REPEAT_BOTH]=15,this.paddings[r.NONE]=0,this.layoutMetricsMap={},this.layoutMetricsMap[r.SINGLE]={xMin:0,xMax:1,paddingLeft:5,paddingRight:5},this.layoutMetricsMap[r.DOUBLE]={xMin:-3,xMax:1,paddingLeft:5,paddingRight:5},this.layoutMetricsMap[r.END]={xMin:-5,xMax:1,paddingLeft:5,paddingRight:5},this.layoutMetricsMap[r.REPEAT_END]={xMin:-10,xMax:1,paddingLeft:5,paddingRight:5},this.layoutMetricsMap[r.REPEAT_BEGIN]={xMin:-2,xMax:10,paddingLeft:5,paddingRight:5},this.layoutMetricsMap[r.REPEAT_BOTH]={xMin:-10,xMax:10,paddingLeft:5,paddingRight:5},this.layoutMetricsMap[r.NONE]={xMin:0,xMax:0,paddingLeft:5,paddingRight:5},this.setPosition(StaveModifier.Position.BEGIN),this.setType(e)}getCategory(){return Barline.CATEGORY}getType(){return this.type}setType(e){return this.type=typeof e=="string"?Barline.typeString[e]:e,this.setWidth(this.widths[this.type]),this.setPadding(this.paddings[this.type]),this.setLayoutMetrics(this.layoutMetricsMap[this.type]),this}draw(e){switch(e.checkContext(),this.setRendered(),this.type){case Barline.type.SINGLE:this.drawVerticalBar(e,this.x,!1);break;case Barline.type.DOUBLE:this.drawVerticalBar(e,this.x,!0);break;case Barline.type.END:this.drawVerticalEndBar(e,this.x);break;case Barline.type.REPEAT_BEGIN:this.drawRepeatBar(e,this.x,!0),e.getX()!==this.x&&this.drawVerticalBar(e,e.getX());break;case Barline.type.REPEAT_END:this.drawRepeatBar(e,this.x,!1);break;case Barline.type.REPEAT_BOTH:this.drawRepeatBar(e,this.x,!1),this.drawRepeatBar(e,this.x,!0);break}}drawVerticalBar(e,r,s){e.checkContext();const o=e.getTopLineTopY(),a=e.getBottomLineBottomY();s&&e.context.fillRect(r-3,o,1,a-o),e.context.fillRect(r,o,1,a-o)}drawVerticalEndBar(e,r){e.checkContext();const s=e.getTopLineTopY(),o=e.getBottomLineBottomY();e.context.fillRect(r-5,s,1,o-s),e.context.fillRect(r-2,s,3,o-s)}drawRepeatBar(e,r,s){e.checkContext();const o=e.getTopLineTopY(),a=e.getBottomLineBottomY();let l=3;s||(l=-5),e.context.fillRect(r+l,o,1,a-o),e.context.fillRect(r-2,o,3,a-o);const c=2;s?l+=4:l-=4;const u=r+l+c/2;let m=(e.getNumLines()-1)*e.getSpacingBetweenLines();m=m/2-e.getSpacingBetweenLines()/2;let g=o+m+c/2;e.context.beginPath(),e.context.arc(u,g,c,0,Math.PI*2,!1),e.context.fill(),g+=e.getSpacingBetweenLines(),e.context.beginPath(),e.context.arc(u,g,c,0,Math.PI*2,!1),e.context.fill()}}let Repetition$1=class Ot extends StaveModifier{static get CATEGORY(){return"repetitions"}static get type(){return{NONE:1,CODA_LEFT:2,CODA_RIGHT:3,SEGNO_LEFT:4,SEGNO_RIGHT:5,DC:6,DC_AL_CODA:7,DC_AL_FINE:8,DS:9,DS_AL_CODA:10,DS_AL_FINE:11,FINE:12,TO_CODA:13}}constructor(e,r,s){super(),this.setAttribute("type","Repetition"),this.symbol_type=e,this.x=r,this.x_shift=0,this.y_shift=s,this.font={family:"times",size:12,weight:"bold italic"}}getCategory(){return Ot.CATEGORY}setShiftX(e){return this.x_shift=e,this}setShiftY(e){return this.y_shift=e,this}setX(e){return this.x=e,this}draw(e,r){switch(this.setRendered(),this.symbol_type){case Ot.type.CODA_RIGHT:this.drawCodaFixed(e,r+e.width);break;case Ot.type.CODA_LEFT:this.drawSymbolText(e,r,"Coda",!0);break;case Ot.type.SEGNO_LEFT:this.drawSignoFixed(e,r);break;case Ot.type.SEGNO_RIGHT:this.drawSignoFixed(e,r+e.width);break;case Ot.type.DC:this.drawSymbolText(e,r,"D.C.",!1);break;case Ot.type.DC_AL_CODA:this.drawSymbolText(e,r,"D.C. al",!0);break;case Ot.type.DC_AL_FINE:this.drawSymbolText(e,r,"D.C. al Fine",!1);break;case Ot.type.DS:this.drawSymbolText(e,r,"D.S.",!1);break;case Ot.type.DS_AL_CODA:this.drawSymbolText(e,r,"D.S. al",!0);break;case Ot.type.DS_AL_FINE:this.drawSymbolText(e,r,"D.S. al Fine",!1);break;case Ot.type.FINE:this.drawSymbolText(e,r,"Fine",!1);break;case Ot.type.TO_CODA:this.drawSymbolText(e,r,"To",!0);break}return this}drawCodaFixed(e,r){const s=e.getYForTopText(e.options.num_lines)+this.y_shift;return Glyph.renderGlyph(e.context,this.x+r+this.x_shift,s+25,40,"v4d",!0),this}drawSignoFixed(e,r){const s=e.getYForTopText(e.options.num_lines)+this.y_shift;return Glyph.renderGlyph(e.context,this.x+r+this.x_shift,s+25,30,"v8c",!0),this}drawSymbolText(e,r,s,o){const a=e.checkContext();a.save(),a.setFont(this.font.family,this.font.size,this.font.weight);let l=0+this.x_shift,c=r+this.x_shift;if(this.symbol_type===Ot.type.CODA_LEFT?(l=this.x+this.x_shift,c=l+a.measureText(s).width+12):(this.x_shift=-(l+a.measureText(s).width+12+e.options.vertical_bar_width+12),l=this.x+this.x_shift+e.options.vertical_bar_width,c=l+a.measureText(s).width+12),this.xShiftAsPercentOfStaveWidth){const m=e.width*this.xShiftAsPercentOfStaveWidth;(this.symbol_type===Ot.type.DC_AL_FINE||this.symbol_type===Ot.type.FINE||this.symbol_type===Ot.type.DC||this.symbol_type===Ot.type.DS_AL_FINE||this.symbol_type===Ot.type.DS||this.symbol_type===Ot.type.FINE)&&(l+=m)}const u=e.getYForTopText(e.options.num_lines)+this.y_shift+25;return o&&Glyph.renderGlyph(a,c,u,40,"v4d",!0),a.fillText(s,l,u+5),a.restore(),this}};class StaveSection extends StaveModifier{static get CATEGORY(){return"stavesection"}constructor(e,r,s){super(),this.setAttribute("type","StaveSection"),this.setWidth(16),this.section=e,this.x=r,this.shift_x=0,this.shift_y=s,this.font={family:"sans-serif",size:12,weight:"bold"}}getCategory(){return StaveSection.CATEGORY}setStaveSection(e){return this.section=e,this}setShiftX(e){return this.shift_x=e,this}setShiftY(e){return this.shift_y=e,this}draw(e,r){const s=e.checkContext();this.setRendered(),s.save(),s.lineWidth=2,s.setFont(this.font.family,this.font.size,this.font.weight);const o=s.measureText(""+this.section),a=o.width;let l=o.height;!l&&o.emHeightAscent>=0&&(l=o.emHeightAscent+2),l||(l=o.fontBoundingBoxAscent+3);let c=a+6;c<18&&(c=18);const u=l+this.font.size/10,m=e.getYForTopText(3)+19-u*1.15+this.shift_y;let g=this.x+r;return s.beginPath(),s.lineWidth=2,s.rect(g,m+l/4,c,u),s.stroke(),g+=(c-a)/2,s.fillText(""+this.section,g,m+u),s.restore(),this}}class StaveTempo extends StaveModifier{static get CATEGORY(){return"stavetempo"}constructor(e,r,s){super(),this.setAttribute("type","StaveTempo"),this.tempo=e,this.position=Modifier.Position.ABOVE,this.x=r,this.shift_x=10,this.shift_y=s,this.font={family:"times",size:14,weight:"bold"},this.render_options={glyph_font_scale:30}}getCategory(){return StaveTempo.CATEGORY}setTempo(e){return this.tempo=e,this}setShiftX(e){return this.shift_x=e,this}setShiftY(e){return this.shift_y=e,this}draw(e,r){const s=e.checkContext();this.setRendered();const o=this.render_options,a=o.glyph_font_scale/38,l=this.tempo.name,c=this.tempo.duration,u=this.tempo.dots,m=this.tempo.bpm,g=this.font;let d=this.x+this.shift_x+r;const y=e.getYForTopText(1)+this.shift_y;if(s.save(),s.openGroup("stavetempo",null,{}),l&&(s.setFont(g.family,g.size,g.weight),s.fillText(l,d,y),d+=s.measureText(l).width),c&&m){s.setFont(g.family,g.size,"normal"),l&&(d+=s.measureText(" ").width,s.fillText("(",d,y),d+=s.measureText("(").width);const A=Flow.getGlyphProps(c);if(d+=3*a,Glyph.renderGlyph(s,d,y,o.glyph_font_scale,A.code_head),d+=A.getWidth()*a,A.stem){let b=30;A.beam_count&&(b+=3*(A.beam_count-1)),b*=a;const S=y-b;s.fillRect(d-a,S,a,b),A.flag&&(Glyph.renderGlyph(s,d,S,o.glyph_font_scale,A.code_flag_upstem),u||(d+=6*a))}for(let b=0;b=e.line?u.above:u.below)}this.placeGlyphOnLine(o,this.stave,e.line),this.glyphs.push(o);const l=this.xPositions[this.xPositions.length-1],c=o.getMetrics().width+a;this.xPositions.push(l+c),this.width+=c}cancelKey(e){return this.formatted=!1,this.cancelKeySpec=e,this}convertToCancelAccList(e){const r=Flow.keySignature(e),s=this.accList.length>0&&r.length>0&&r[0].type!==this.accList[0].type,o=s?r.length:r.length-this.accList.length;if(o<1)return;const a=[];for(let l=0;l0?e[0].type:null;let s;if(this.cancelKeySpec&&(s=this.convertToCancelAccList(this.cancelKeySpec)),this.alterKeySpec&&this.convertToAlterAccList(this.alterKeySpec),this.accList.length>0){const o=(this.position===StaveModifier.Position.END?this.stave.endClef:this.stave.clef)||this.stave.clef;s&&this.convertAccLines(o,s.type,s.accList),this.convertAccLines(o,r,e);for(let a=0;a0){const e=this.stave.context.openGroup("keysignature");for(let r=0;r{const e=i.split("/").filter(r=>r!=="");if(e.length!==2)throw new Vex.RERR("BadTimeSignature",`Invalid time spec: ${i}. Must be in the form "/"`);e.forEach(r=>{if(isNaN(Number(r)))throw new Vex.RERR("BadTimeSignature",`Invalid time spec: ${i}. Must contain two valid numbers.`)})};class TimeSignature extends StaveModifier{static get CATEGORY(){return"timesignatures"}static get glyphs(){return{C:{code:"v41",point:40,line:2},"C|":{code:"vb6",point:40,line:2}}}constructor(e=null,r=15,s=!0){if(super(),this.setAttribute("type","TimeSignature"),this.validate_args=s,e===null)return;const o=r;this.point=40,this.topLine=2,this.bottomLine=4,this.setPosition(StaveModifier.Position.BEGIN),this.setTimeSig(e),this.setWidth(this.timeSig.glyph.getMetrics().width),this.setPadding(o)}getCategory(){return TimeSignature.CATEGORY}parseTimeSpec(e){if(e==="C"||e==="C|"){const{line:o,code:a,point:l}=TimeSignature.glyphs[e];return{line:o,num:!1,glyph:new Glyph(a,l)}}this.validate_args&&assertIsValidFraction(e);const[r,s]=e.split("/").map(o=>o.split(""));return{num:!0,glyph:this.makeTimeSignatureGlyph(r,s)}}makeTimeSignatureGlyph(e,r){const s=new Glyph("v0",this.point);s.topGlyphs=[],s.botGlyphs=[];let o=0;for(let d=0;da?o:a,c=s.getMetrics().x_min;s.getMetrics=()=>({x_min:c,x_max:c+l,width:l});const u=(l-o)/2,m=(l-a)/2,g=this;return s.renderToStave=function(y){let A=y+u;for(let b=0;br.visible).filter(Boolean).length}formatBegModifiers(e){let r=0;e.forEach(s=>{s.getNoteStartX()>r&&(r=s.getNoteStartX())}),e.forEach(s=>{s.setNoteStartX(r)}),r=0,e.forEach(s=>{s.getModifiers(StaveModifier.Position.BEGIN,Barline.CATEGORY).forEach(a=>{a.getType()==Barline.type.REPEAT_BEGIN&&a.getX()>r&&(r=a.getX())})}),e.forEach(s=>{s.getModifiers(StaveModifier.Position.BEGIN,Barline.CATEGORY).forEach(a=>{a.getType()==Barline.type.REPEAT_BEGIN&&a.setX(r)})}),r=0,e.forEach(s=>{s.getModifiers(StaveModifier.Position.BEGIN,TimeSignature.CATEGORY).forEach(a=>{a.getX()>r&&(r=a.getX())})}),e.forEach(s=>{s.getModifiers(StaveModifier.Position.BEGIN,TimeSignature.CATEGORY).forEach(a=>{a.setX(r)})})}getOptions(){return this.options}setNoteStartX(e){return this.formatted||this.format(),this.setStartX(e),this}setStartX(e){this.start_x=e}getNoteStartX(){return this.formatted||this.format(),this.start_x}getNoteEndX(){return this.formatted||this.format(),this.end_x}getTieStartX(){return this.start_x}getTieEndX(){return this.x+this.width}getX(){return this.x}getNumLines(){return this.options.num_lines}setNumLines(e){return this.options.num_lines=parseInt(e,10),this.resetLines(),this}setY(e){return this.y=e,this}getTopLineTopY(){return this.getYForLine(0)-Flow.STAVE_LINE_THICKNESS/2}getBottomLineBottomY(){return this.getLines()===2?this.getYForLine(6)+Flow.STAVE_LINE_THICKNESS/2:this.getYForLine(this.getNumLines()-1)+Flow.STAVE_LINE_THICKNESS/2}setX(e){const r=e-this.x;this.formatted=!1,this.x=e,this.start_x+=r,this.end_x+=r;for(let s=0;ss.getWidth()&&(r-=s.getWidth()),r}setRepetitionTypeLeft(e,r){return this.modifiers.push(new Repetition$1(e,this.x,r)),this}setRepetitionTypeRight(e,r){return this.modifiers.push(new Repetition$1(e,this.x,r)),this}setVoltaType(e,r,s){if(e===2)volta.type===2&&volta.stave.modifiers.push(new Volta(volta.type,volta.number_t,volta.x,volta.y)),volta={stave:this,type:e,number_t:r,MeasureNumber:this.MeasureNumber,y:s,x:this.x};else if(e===4){let o=this.MeasureNumber-volta.MeasureNumber,a=Math.max(volta.y,s);for(let l=0;l<=o;l++)voltaMeasureNumber[volta.MeasureNumber+l]={type:l===0?2:l===o?4:0,number_t:r,y:a};volta={}}else this.modifiers.push(new Volta(e,r,this.x,s));return this}drawVolta(){let e=voltaMeasureNumber[this.MeasureNumber];e&&(this.modifiers.push(new Volta(e.type,e.number_t,this.x,e.y)),delete voltaMeasureNumber[this.MeasureNumber]),volta.type&&volta.MeasureNumber==this.MeasureNumber&&(this.modifiers.push(new Volta(volta.type,volta.number_t,this.x,volta.y)),volta={})}setSection(e,r,s=0,o=12){const a=new StaveSection(e,this.x+s,r);return a.font.size=o,this.modifiers.push(a),this}setTempo(e,r){return this.modifiers.push(new StaveTempo(e,this.x,r)),this}setText(e,r,s){let o=new StaveText(e,r,s);return o.setFont({family:"Arial",size:14,weight:"normal"}),this.modifiers.push(o),this}getHeight(){return this.height}getSpacingBetweenLines(){return this.options.spacing_between_lines_px}getBoundingBox(){return new BoundingBox(this.x,this.y,this.width,this.getBottomY()-this.y)}getBottomY(){const e=this.options,r=e.spacing_between_lines_px;return this.getYForLine(e.num_lines)+e.space_below_staff_ln*r}getBottomLineY(){return this.getYForLine(this.options.num_lines)}getYForLine(e){const r=this.options,s=r.spacing_between_lines_px,o=r.space_above_staff_ln;return this.y+e*s+o*s}getLineForY(e){const r=this.options,s=r.spacing_between_lines_px,o=r.space_above_staff_ln;return(e-this.y)/s-o}getYForTopText(e){const r=e||0;return this.getYForLine(-r-this.options.top_text_position)}getYForBottomText(e){const r=e||0;return this.getYForLine(this.options.bottom_text_position+r)}getYForNote(e){const r=this.options,s=r.spacing_between_lines_px,o=r.space_above_staff_ln;return this.y+o*s+5*s-e*s}getYForGlyphs(){return this.getYForLine(3)}addModifier(e,r,s){return r!==void 0&&e.setPosition(r),s&&(this.timeSignature.numerator=s.numerator,this.timeSignature.denominator=s.denominator),e.setStave(this),this.formatted=!1,this.modifiers.push(e),this}addEndModifier(e){return this.addModifier(e,StaveModifier.Position.END),this}setBegBarType(e){const{SINGLE:r,REPEAT_BEGIN:s,NONE:o}=Barline.type;return(e===r||e===s||e===o)&&(this.modifiers[0].setType(e),this.formatted=!1),this}setEndBarType(e){return e!==Barline.type.REPEAT_BEGIN&&(this.modifiers[1].setType(e),this.formatted=!1),this}setClef(e,r,s,o){o===void 0&&(o=StaveModifier.Position.BEGIN),o===StaveModifier.Position.END?this.endClef=e:this.clef=e;const a=this.getModifiers(o,Clef.CATEGORY);return a.length===0?this.addClef(e,r,s,o):a[0].setType(e,r,s),this}setEndClef(e,r,s){return this.setClef(e,r,s,StaveModifier.Position.END),this}setKeySignature(e,r,s){this.options.keySignature=e,s===void 0&&(s=StaveModifier.Position.BEGIN);const o=this.getModifiers(s,KeySignature.CATEGORY);return o.length===0?this.options.DYMusicScoreType!=="jianpu"&&this.addKeySignature(e,r,s):o[0].setKeySig(e,r),this}setEndKeySignature(e,r){return this.setKeySignature(e,r,StaveModifier.Position.END),this}setTimeSignature(e,r,s){s===void 0&&(s=StaveModifier.Position.BEGIN);const o=this.getModifiers(s,TimeSignature.CATEGORY);return o.length===0?this.addTimeSignature(e,r,s):o[0].setTimeSig(e),this}setEndTimeSignature(e,r){return this.setTimeSignature(e,r,StaveModifier.Position.END),this}addKeySignature(e,r,s){return s===void 0&&(s=StaveModifier.Position.BEGIN),this.addModifier(new KeySignature(e,r).setPosition(s),s),this}addClef(e,r,s,o){return o===void 0||o===StaveModifier.Position.BEGIN?this.clef=e:o===StaveModifier.Position.END&&(this.endClef=e),this.addModifier(new Clef(e,r,s),o),this}addEndClef(e,r,s){return this.addClef(e,r,s,StaveModifier.Position.END),this}addTimeSignature(e,r,s){return this.addModifier(new TimeSignature(e,r),s),this}addEndTimeSignature(e,r){return this.addTimeSignature(e,r,StaveModifier.Position.END),this}addTrebleGlyph(){return this.addClef("treble"),this}getModifiers(e,r){return e===void 0&&r===void 0?this.modifiers:this.modifiers.filter(s=>(e===void 0||e===s.getPosition())&&(r===void 0||r===s.getCategory()))}sortByCategory(e,r){for(let s=e.length-1;s>=0;s--)for(let o=0;or[e[o+1].getCategory()]){const a=e[o];e[o]=e[o+1],e[o+1]=a}}format(){const e=this.modifiers[0],r=this.modifiers[1],s=this.getModifiers(StaveModifier.Position.BEGIN),o=this.getModifiers(StaveModifier.Position.END);this.sortByCategory(s,{barlines:0,clefs:1,keysignatures:2,timesignatures:3}),this.sortByCategory(o,{timesignatures:0,keysignatures:1,barlines:2,clefs:3}),s.length>1&&e.getType()===Barline.type.REPEAT_BEGIN&&(s.push(s.splice(0,1)[0]),s.splice(0,0,new Barline(Barline.type.SINGLE))),o.indexOf(r)>0&&o.splice(0,0,new Barline(Barline.type.NONE));let a,l,c,u=0,m=this.x;for(let y=0;ym?m=A:c.setX(m),m+=a,l+a===0&&u--}m>this.start_x&&this.setStartX(m),m=this.x+this.width;const g={left:0,right:0,paddingRight:0,paddingLeft:0};let d=0;for(let y=0;y{l.includes(u)?c.visible=!0:c.visible=!1})}for(let l=0;lthis.drawStaveTempo()),this.measure>0){this.context.save(),this.context.setFont(this.font.family,this.font.size,this.font.weight);const l=this.context.measureText(""+this.measure).width;o=this.getYForTopText(0)+3,this.context.fillText(""+this.measure,this.x-l/2,o),this.context.restore()}return this}drawStaveTempo(){if(!this.staveTempos.length)return;const e=document.querySelector(`#${this.attrs.id}`);if(!e)return;const r=e.parentElement.getBBox(),s=this.getYForLine(0),o=e.parentElement.parentElement.querySelectorAll(".vf-curve");if(o.length){const a=this.x+this.staveTempos[0].shift_x+this.getModifierXShift(0),l=this.getYForTopText(1)+r.y-s+5;o.forEach(c=>{const u=c.getBBox();u.x-10a&&u.y-10l&&(r.y=u.y+5)})}for(let a=0;a1&&(hideTrackTune$1=!0)}}else this.options.keySignature!=_keySignature&&this.setText(`1=${r}`,1,{justification:1,shift_x:50,shift_y:-50});_keySignature=this.options.keySignature}if(this.MeasureNumber>=0&&this.timeSignature.numerator){let r=40,s=0;this.MeasureNumber<2&&(r=70,s=-72),this.setText(`${this.timeSignature.numerator}`,1,{justification:1,shift_x:r,shift_y:s-13}),this.setText("ᅳ",1,{justification:1,shift_x:r+3,shift_y:s-2}),this.setText(`${this.timeSignature.denominator}`,1,{justification:1,shift_x:r,shift_y:s+8})}}drawVertical(e,r){this.drawVerticalFixed(this.x+e,r)}drawVerticalFixed(e,r){this.checkContext();const s=this.getYForLine(0),o=this.getYForLine(this.options.num_lines-1);r&&this.context.fillRect(e-3,s,1,o-s+1),this.context.fillRect(e,s,1,o-s+1)}drawVerticalBar(e){this.drawVerticalBarFixed(this.x+e,!1)}drawVerticalBarFixed(e){this.checkContext();const r=this.getYForLine(0),s=this.getYForLine(this.options.num_lines-1);this.context.fillRect(e,r,1,s-r+1)}getConfigForLines(){return this.options.line_config}setConfigForLine(e,r){if(e>=this.options.num_lines||e<0)throw new Vex.RERR("StaveConfigError","The line number must be within the range of the number of lines in the Stave.");if(r.visible===void 0)throw new Vex.RERR("StaveConfigError","The line configuration object is missing the 'visible' property.");if(typeof r.visible!="boolean")throw new Vex.RERR("StaveConfigError","The line configuration objects 'visible' property must be true or false.");return this.options.line_config[e]=r,this}setConfigForLines(e){if(e.length!==this.options.num_lines)throw new Vex.RERR("StaveConfigError","The length of the lines configuration array must match the number of lines in the Stave");for(const r in e)e[r]||(e[r]=this.options.line_config[r]),Vex.Merge(this.options.line_config[r],e[r]);return this.options.line_config=e,this}}class TabStave extends Stave{constructor(e,r,s,o){const a={spacing_between_lines_px:13,num_lines:6,top_text_position:1};Vex.Merge(a,o),super(e,r,s,a),this.setAttribute("type","TabStave")}getYForGlyphs(){return this.getYForLine(2.5)}addTabGlyph(){return this.addClef("tab"),this}}function getUnusedStringGroups(i,e){const r=[];let s=[];for(let o=1;o<=i;o++)e.indexOf(o)>-1?(r.push(s),s=[]):s.push(o);return s.length>0&&r.push(s),r}function getPartialStemLines(i,e,r,s){const o=s!==1,a=s!==-1,l=r.getSpacingBetweenLines(),c=r.getNumLines(),u=[];return e.forEach(m=>{const g=m.indexOf(c)>-1,d=m.indexOf(1)>-1;if(o&&d||a&&g)return;m.length===1&&m.push(m[0]);const y=[];m.forEach((A,b,S)=>{const E=A===1,x=A===c;let C=r.getYForLine(A-1);b===0&&!E?C-=l/2-1:b===S.length-1&&!x&&(C+=l/2-1),y.push(C),s===1&&E?y.push(i-2):s===-1&&x&&y.push(i+2)}),u.push(y.sort((A,b)=>A-b))}),u}let TabNote$1=class qi extends StemmableNote{static get CATEGORY(){return"tabnotes"}constructor(e,r){if(super(e),this.setAttribute("type","TabNote"),this.ghost=!1,this.positions=e.positions,Vex.Merge(this.render_options,{glyph_font_scale:Flow.DEFAULT_TABLATURE_FONT_SCALE,draw_stem:r,draw_dots:r,draw_stem_through_stave:!1,y_shift:0,scale:1,font:"10pt Arial"}),this.glyph=Flow.getGlyphProps(this.duration,this.noteType),!this.glyph)throw new Vex.RuntimeError("BadArguments",`Invalid note initialization data (No glyph found): ${JSON.stringify(e)}`);this.buildStem(),e.stem_direction?this.setStemDirection(e.stem_direction):this.setStemDirection(Stem.UP),this.ghost=!1,this.updateWidth()}reset(){this.stave&&this.setStave(this.stave)}getCategory(){return qi.CATEGORY}setGhost(e){return this.ghost=e,this.updateWidth(),this}hasStem(){return this.render_options.draw_stem}getStemExtension(){const e=this.getGlyph();return this.stem_extension_override!=null?this.stem_extension_override:e?this.getStemDirection()===1?e.tabnote_stem_up_extension:e.tabnote_stem_down_extension:0}addDot(){const e=new Dot;return this.dots+=1,this.addModifier(e,0)}updateWidth(){this.glyphs=[],this.width=0;for(let e=0;ethis.width}setStave(e){super.setStave(e),this.context=e.context;let r;if(this.context){const o=this.context;for(this.width=0,r=0;ra.width),this.width=Math.max(a.getWidth(),this.width)}this.glyph.getWidth=()=>this.width}const s=this.positions.map(({str:o})=>e.getYForLine(o-1));return this.setYs(s),this.stem&&this.stem.setYBounds(this.getStemY(),this.getStemY()),this}getPositions(){return this.positions}addToModifierContext(e){this.setModifierContext(e);for(let r=0;r{e.getCategory()==="dots"&&!this.render_options.draw_dots||(e.setContext(this.context),e.drawWithStyle())})}drawStemThrough(){const e=this.getStemX(),r=this.getStemY(),s=this.context,o=this.render_options.draw_stem_through_stave;if(this.render_options.draw_stem&&o){const l=this.stave.getNumLines(),c=this.positions.map(g=>g.str),u=getUnusedStringGroups(l,c),m=getPartialStemLines(r,u,this.getStave(),this.getStemDirection());s.save(),s.setLineWidth(Stem.WIDTH),m.forEach(g=>{g.length!==0&&(s.beginPath(),s.moveTo(e,g[0]),s.lineTo(e,g[g.length-1]),s.stroke(),s.closePath())}),s.restore()}}drawPositions(){const e=this.context,r=this.getAbsoluteX(),s=this.ys;for(let o=0;oparseInt(o,10)?TabSlide.SLIDE_DOWN:TabSlide.SLIDE_UP}this.slide_direction=r,this.render_options.cp1=11,this.render_options.cp2=14,this.render_options.y_shift=.5,this.setFont({font:"Times",size:10,style:"bold italic"}),this.setNotes(e)}renderTie(e){if(e.first_ys.length===0||e.last_ys.length===0)throw new Vex.RERR("BadArguments","No Y-values to render");const r=this.context,s=e.first_x_px,o=e.first_ys,a=e.last_x_px,l=this.slide_direction;if(l!==TabSlide.SLIDE_UP&&l!==TabSlide.SLIDE_DOWN)throw new Vex.RERR("BadSlide","Invalid slide direction");for(let c=0;cthis.numStrings)throw new Vex.RERR("BadArguments",`String number must be between 1 and ${this.numStrings}:${e}`);return this.tuningValues[r-1]}getValueForFret(e,r){const s=this.getValueForString(r),o=parseInt(e,10);if(o<0)throw new Vex.RERR("BadArguments","Fret number must be 0 or higher: "+e);return s+o}getNoteForFret(e,r){const s=this.getValueForFret(e,r),o=Math.floor(s/12),a=s%12;return Flow.integerToNote(a)+"/"+o}}class KeyManager{constructor(e){this.music=new Music,this.setKey(e)}setKey(e){return this.key=e,this.reset(),this}getKey(){return this.key}reset(){if(this.keyParts=this.music.getKeyParts(this.key),this.keyString=this.keyParts.root,this.keyParts.accidental&&(this.keyString+=this.keyParts.accidental),!Music.scaleTypes[this.keyParts.type])throw new Vex.RERR("BadArguments",`Unsupported key type: ${this.key}`);this.scale=this.music.getScaleTones(this.music.getNoteValue(this.keyString),Music.scaleTypes[this.keyParts.type]),this.scaleMap={},this.scaleMapByValue={},this.originalScaleMapByValue={};const r=Music.root_indices[this.keyParts.root];for(let s=0;s{const s=TextDynamics.GLYPHS[r];if(!s)throw new Vex.RERR("Invalid dynamics character: "+r);const o=this.render_options.glyph_font_size,a=new Glyph(s.code,o);this.glyphs.push(a),e+=s.width}),this.setWidth(e),this.preFormatted=!0,this}draw(){this.setRendered();const e=this.getAbsoluteX(),r=this.stave.getYForLine(this.line+-3);L$7("Rendering Dynamics: ",this.sequence);let s=e;this.glyphs.forEach((o,a)=>{const l=this.sequence[a];o.render(this.context,s,r),s+=TextDynamics.GLYPHS[l].width})}}function drawArrowHead(i,e,r,s,o,a,l){i.beginPath(),i.moveTo(e,r),i.lineTo(s,o),i.lineTo(a,l),i.lineTo(e,r),i.closePath(),i.fill()}function drawArrowLine(i,e,r,s){const o=s.draw_start_arrow&&s.draw_end_arrow,a=e.x,l=e.y,c=r.x,u=r.y,m=Math.sqrt((c-a)*(c-a)+(u-l)*(u-l)),g=(m-s.arrowhead_length/3)/m;let d,y,A,b;s.draw_end_arrow||o?(d=Math.round(a+(c-a)*g),y=Math.round(l+(u-l)*g)):(d=c,y=u),s.draw_start_arrow||o?(A=a+(c-a)*(1-g),b=l+(u-l)*(1-g)):(A=a,b=l),s.color&&(i.setStrokeStyle(s.color),i.setFillStyle(s.color)),i.beginPath(),i.moveTo(A,b),i.lineTo(d,y),i.stroke(),i.closePath();const S=Math.atan2(u-l,c-a),E=Math.abs(s.arrowhead_length/Math.cos(s.arrowhead_angle));let x,C,P,k,I,M;(s.draw_end_arrow||o)&&(x=S+Math.PI+s.arrowhead_angle,P=c+Math.cos(x)*E,k=u+Math.sin(x)*E,C=S+Math.PI-s.arrowhead_angle,I=c+Math.cos(C)*E,M=u+Math.sin(C)*E,drawArrowHead(i,P,k,c,u,I,M)),(s.draw_start_arrow||o)&&(x=S+s.arrowhead_angle,P=a+Math.cos(x)*E,k=l+Math.sin(x)*E,C=S-s.arrowhead_angle,I=a+Math.cos(C)*E,M=l+Math.sin(C)*E,drawArrowHead(i,P,k,a,l,I,M))}class StaveLine extends Element$1{static get TextVerticalPosition(){return{TOP:1,BOTTOM:2}}static get TextJustification(){return{LEFT:1,CENTER:2,RIGHT:3}}constructor(e){super(),this.setAttribute("type","StaveLine"),this.notes=e,this.text="",this.font={family:"Arial",size:10,weight:""},this.render_options={padding_left:4,padding_right:3,line_width:1,line_dash:null,rounded_end:!0,color:null,draw_start_arrow:!1,draw_end_arrow:!1,arrowhead_length:10,arrowhead_angle:Math.PI/8,text_position_vertical:StaveLine.TextVerticalPosition.TOP,text_justification:StaveLine.TextJustification.CENTER},this.setNotes(e)}setFont(e){return this.font=e,this}setText(e){return this.text=e,this}setNotes(e){if(!e.first_note&&!e.last_note)throw new Vex.RuntimeError("BadArguments","Notes needs to have either first_note or last_note set.");if(e.first_indices||(e.first_indices=[0]),e.last_indices||(e.last_indices=[0]),e.first_indices.length!==e.last_indices.length)throw new Vex.RuntimeError("BadArguments","Connected notes must have similar index sizes");return this.first_note=e.first_note,this.first_indices=e.first_indices,this.last_note=e.last_note,this.last_indices=e.last_indices,this}applyLineStyle(){const e=this.checkContext(),r=this.render_options;r.line_dash&&e.setLineDash(r.line_dash),r.line_width&&e.setLineWidth(r.line_width),r.rounded_end?e.setLineCap("round"):e.setLineCap("square")}applyFontStyle(){const e=this.checkContext();this.font&&e.setFont(this.font.family,this.font.size,this.font.weight),this.render_options.color&&(e.setStrokeStyle(this.render_options.color),e.setFillStyle(this.render_options.color))}draw(){const e=this.checkContext();this.setRendered();const r=this.first_note,s=this.last_note,o=this.render_options;e.save(),this.applyLineStyle();let a,l;this.first_indices.forEach((y,A)=>{const b=this.last_indices[A];a=r.getModifierStartXY(2,y),l=s.getModifierStartXY(1,b);const S=a.y>l.y;a.x+=r.getMetrics().modRightPx+o.padding_left,l.x-=s.getMetrics().modLeftPx+o.padding_right;const E=r.getGlyph().getWidth();r.getKeyProps()[y].displaced&&r.getStemDirection()===1&&(a.x+=E+o.padding_left),s.getKeyProps()[b].displaced&&s.getStemDirection()===-1&&(l.x-=E+o.padding_right),a.y+=S?-3:1,l.y+=S?2:0,drawArrowLine(e,a,l,this.render_options)}),e.restore();const c=e.measureText(this.text).width,u=o.text_justification;let m=0;u===StaveLine.TextJustification.LEFT?m=a.x:u===StaveLine.TextJustification.CENTER?m=(l.x-a.x)/2+a.x-c/2:u===StaveLine.TextJustification.RIGHT&&(m=l.x-c);let g;const d=o.text_position_vertical;return d===StaveLine.TextVerticalPosition.TOP?g=r.getStave().getYForTopText():d===StaveLine.TextVerticalPosition.BOTTOM&&(g=r.getStave().getYForBottomText(Flow.TEXT_HEIGHT_OFFSET_HACK)),e.save(),this.applyFontStyle(),e.fillText(this.text,m,g),e.restore(),this}}function L$6(...i){PedalMarking.DEBUG&&Vex.L("Vex.Flow.PedalMarking",i)}function drawPedalGlyph(i,e,r,s,o){const a=PedalMarking.GLYPHS[i];new Glyph(a.code,o).render(e,r+a.x_shift,s+a.y_shift)}class PedalMarking extends Element$1{static get GLYPHS(){return{pedal_depress:{code:"v36",x_shift:-10,y_shift:0},pedal_release:{code:"v5d",x_shift:-2,y_shift:3}}}static get Styles(){return{TEXT:1,BRACKET:2,MIXED:3,MIXED_OPEN_END:4,BRACKET_OPEN_BEGIN:5,BRACKET_OPEN_END:6,BRACKET_OPEN_BOTH:7}}static get StylesString(){return{text:PedalMarking.Styles.TEXT,bracket:PedalMarking.Styles.BRACKET,mixed:PedalMarking.Styles.MIXED,mixed_open_end:PedalMarking.Styles.MIXED_OPEN_END,bracket_open_begin:PedalMarking.Styles.BRACKET_OPEN_BEGIN,bracket_open_end:PedalMarking.Styles.BRACKET_OPEN_END,bracket_open_both:PedalMarking.Styles.BRACKET_OPEN_BOTH}}static createSustain(e){return new PedalMarking(e)}static createSostenuto(e){const r=new PedalMarking(e);return r.setStyle(PedalMarking.Styles.MIXED),r.setCustomText("Sost. Ped."),r}static createUnaCorda(e){const r=new PedalMarking(e);return r.setStyle(PedalMarking.Styles.TEXT),r.setCustomText("una corda","tre corda"),r}constructor(e){super(),this.setAttribute("type","PedalMarking"),this.EndsStave=!1,this.ChangeBegin=!1,this.ChangeEnd=!1,this.notes=e,this.style=PedalMarking.TEXT,this.line=0,this.custom_depress_text="",this.custom_release_text="",this.font={family:"Times New Roman",size:12,weight:"italic bold"},this.render_options={bracket_height:10,text_margin_right:6,bracket_line_width:1,glyph_point_size:40,color:"black"}}setEndStave(e){if(this.endStave=e,this.endStaveAddedWidth=0,this.startMargin=0,this.endMargin=0,Array.isArray(this.endStave.modifiers))for(let r=0;r3)throw new Vex.RERR("InvalidParameter","The style must be one found in PedalMarking.Styles");return this.style=e,this}setLine(e){return this.line=e,this}drawBracketed(){const e=this.context;let r=!1,s,o;const a=this;this.notes.forEach((l,c,u)=>{r=!r;let m=0;if(l?(m=l.getNoteHeadBeginX(),this.BeginsStave&&(m=l.getStave().getNoteStartX())):m=this.endStave.end_x+this.endStaveAddedWidth,this.EndsStave)r?this.ChangeBegin&&(m=l.getAbsoluteX()):(l?this.ChangeEnd?m=l.getAbsoluteX():m=l.getStave().end_x+this.endStaveAddedWidth-a.render_options.text_margin_right:m=this.endStave.end_x+this.endStaveAddedWidth-a.render_options.text_margin_right,this.endMargin=-a.render_options.text_margin_right);else if(l)if(r)this.ChangeBegin&&(m=l.getAbsoluteX());else switch(a.style){case PedalMarking.Styles.BRACKET_OPEN_END:case PedalMarking.Styles.BRACKET_OPEN_BOTH:case PedalMarking.Styles.MIXED_OPEN_END:m=l.getNoteHeadEndX();break;default:this.ChangeEnd?m=l.getAbsoluteX():(m=l.getNoteHeadBeginX()-a.render_options.text_margin_right,this.startMargin=-a.render_options.text_margin_right);break}let g=this.endStave;l&&(g=l.getStave());let d=g.getYForBottomText(a.line+3);o&&o>d&&(d=o);const y=u[c+1]===l,A=u[c-1]===l;let b=0;if(r)if(b=A?5:0,(a.style===PedalMarking.Styles.MIXED||a.style===PedalMarking.Styles.MIXED_OPEN_END)&&!A)if(a.custom_depress_text){const S=e.measureText(a.custom_depress_text).width;e.fillText(a.custom_depress_text,m-S/2,d),b=S/2+a.render_options.text_margin_right}else drawPedalGlyph("pedal_depress",e,m,d,a.render_options.glyph_point_size),b=20+a.render_options.text_margin_right;else e.beginPath(),a.style===PedalMarking.Styles.BRACKET_OPEN_BEGIN||a.style===PedalMarking.Styles.BRACKET_OPEN_BOTH?e.moveTo(m+b,d):(this.ChangeBegin&&(m+=5),e.moveTo(m,d-a.render_options.bracket_height),this.ChangeBegin&&(m+=5),e.lineTo(m+b,d)),e.stroke(),e.closePath();else b=y&&!this.EndsStave?-5:0,e.beginPath(),e.moveTo(s,o),e.lineTo(m+b,d),a.style!==PedalMarking.Styles.BRACKET_OPEN_END&&a.style!==PedalMarking.Styles.MIXED_OPEN_END&&a.style!==PedalMarking.Styles.BRACKET_OPEN_BOTH&&(this.ChangeEnd&&(m+=5),e.lineTo(m,d-a.render_options.bracket_height)),e.stroke(),e.closePath();s=m+b,o=d})}drawText(){const e=this.context;let r=!1;const s=this,o=s.render_options.glyph_point_size;this.notes.forEach(a=>{if(!a)return;r=!r;const l=a.getStave(),c=a.getAbsoluteX(),u=l.getYForBottomText(s.line+3);let m=0;r?s.custom_depress_text?(m=e.measureText(s.custom_depress_text).width,e.fillText(s.custom_depress_text,c-m/2,u)):drawPedalGlyph("pedal_depress",e,c,u,o):s.custom_release_text?(m=e.measureText(s.custom_release_text).width,e.fillText(s.custom_release_text,c-m/2,u)):drawPedalGlyph("pedal_release",e,c,u,o)})}draw(){const e=this.checkContext();this.setRendered(),e.save(),e.setStrokeStyle(this.render_options.color),e.setFillStyle(this.render_options.color),e.setFont(this.font.family,this.font.size,this.font.weight),L$6("Rendering Pedal Marking"),this.style===PedalMarking.Styles.BRACKET||this.style===PedalMarking.Styles.MIXED||this.style===PedalMarking.Styles.MIXED_OPEN_END||this.style===PedalMarking.Styles.BRACKET_OPEN_BEGIN||this.style===PedalMarking.Styles.BRACKET_OPEN_END||this.style===PedalMarking.Styles.BRACKET_OPEN_BOTH?(e.setLineWidth(this.render_options.bracket_line_width),this.drawBracketed()):this.style===PedalMarking.Styles.TEXT&&this.drawText(),e.restore()}}function L$5(...i){TextBracket.DEBUG&&Vex.L("Vex.Flow.TextBracket",i)}class TextBracket extends Element$1{static get Positions(){return{TOP:1,BOTTOM:-1}}static get PositionString(){return{top:TextBracket.Positions.TOP,bottom:TextBracket.Positions.BOTTOM}}constructor({start:e,stop:r,text:s="",superscript:o="",position:a=TextBracket.Positions.TOP}){super(),this.setAttribute("type","TextBracket"),this.start=e,this.stop=r,this.text=s,this.superscript=o,this.position=typeof a=="string"?TextBracket.PositionString[a]:a,this.line=1,this.font={family:"Serif",size:15,weight:"italic"},this.render_options={dashed:!0,dash:[5],color:"black",line_width:1,show_bracket:!0,bracket_height:8,underline_superscript:!0}}applyStyle(e){return e.setFont(this.font.family,this.font.size,this.font.weight),e.setStrokeStyle(this.render_options.color),e.setFillStyle(this.render_options.color),e.setLineWidth(this.render_options.line_width),this}setDashed(e,r){return this.render_options.dashed=e,r&&(this.render_options.dash=r),this}setFont(e){return this.font={...this.font,...e},this}setLine(e){return this.line=e,this}draw(){const e=this.context;this.setRendered();let r=0;switch(this.position){case TextBracket.Positions.TOP:r=this.start.getStave().getYForTopText(this.line);break;case TextBracket.Positions.BOTTOM:r=this.start.getStave().getYForBottomText(this.line+Flow.TEXT_HEIGHT_OFFSET_HACK);break;default:throw new Vex.RERR("InvalidPosition",`The position ${this.position} is invalid`)}const s={x:this.start.getAbsoluteX(),y:r},o={x:this.stop.getAbsoluteX(),y:r};L$5("Rendering TextBracket: start:",s,"stop:",o,"y:",r);const a=this.render_options.bracket_height*this.position;e.save(),this.applyStyle(e),e.fillText(this.text,s.x,s.y);let l=e.measureText(this.text).width;l>0||(l=10*this.text.length);let c=e.measureText("M").width;c>0||(c=20);const u=s.y-c/2.5;e.setFont(this.font.family,this.font.size/1.4,this.font.weight),e.fillText(this.superscript,s.x+l+1,u);let m=e.measureText(this.superscript).width;m>0||(m=12,this.superscript.includes("m")&&(m+=5));let g=e.measureText("M").width;g>0||(g=10);let d=s.x,y=u,A=o.x+this.stop.getGlyph().getWidth();this.position===TextBracket.Positions.TOP?(d+=l+m+5,y-=g/2.7):this.position===TextBracket.Positions.BOTTOM&&(y+=g/2.7,d+=l+2,this.render_options.underline_superscript||(d+=m)),this.render_options.dashed?(A0||r===!0;return r&&!(a>0)&&(this.pos=o),c?this.matchSuccess():this.matchFail(o),{success:c,results:s,numMatches:a}}expectZeroOrMore(e){return this.expectOneOrMore(e,!0)}expect(e){L$2("Evaluating rules:",e);let r;if(!e)throw new X$2("Invalid Rule: "+e,e);const s=e.bind(this.grammar)();if(s.token)r=this.matchToken(s.token,s.noSpace===!0),r.success&&(this.pos+=r.incrementPos);else if(s.expect)s.oneOrMore?r=this.expectOneOrMore(s):s.zeroOrMore?r=this.expectZeroOrMore(s):r=this.expectOne(s);else throw new X$2("Bad grammar! No `token` or `expect` property",s);return r.matches=[],r.results&&r.results.forEach(o=>r.matches.push(flattenMatches(o))),s.run&&r.success&&s.run(r),r}}function L$1(...i){EasyScore.DEBUG&&Vex.L("Vex.Flow.EasyScore",i)}const X$1=Vex.MakeException("EasyScoreError");class Grammar{constructor(e){this.builder=e}begin(){return this.LINE}LINE(){return{expect:[this.PIECE,this.PIECES,this.EOL]}}PIECE(){return{expect:[this.CHORDORNOTE,this.PARAMS],run:()=>this.builder.commitPiece()}}PIECES(){return{expect:[this.COMMA,this.PIECE],zeroOrMore:!0}}PARAMS(){return{expect:[this.DURATION,this.TYPE,this.DOTS,this.OPTS]}}CHORDORNOTE(){return{expect:[this.CHORD,this.SINGLENOTE],or:!0}}CHORD(){return{expect:[this.LPAREN,this.NOTES,this.RPAREN],run:e=>this.builder.addChord(e.matches[1])}}NOTES(){return{expect:[this.NOTE],oneOrMore:!0}}NOTE(){return{expect:[this.NOTENAME,this.ACCIDENTAL,this.OCTAVE]}}SINGLENOTE(){return{expect:[this.NOTENAME,this.ACCIDENTAL,this.OCTAVE],run:e=>this.builder.addSingleNote(e.matches[0],e.matches[1],e.matches[2])}}ACCIDENTAL(){return{expect:[this.ACCIDENTALS],maybe:!0}}DOTS(){return{expect:[this.DOT],zeroOrMore:!0,run:e=>this.builder.setNoteDots(e.matches[0])}}TYPE(){return{expect:[this.SLASH,this.MAYBESLASH,this.TYPES],maybe:!0,run:e=>this.builder.setNoteType(e.matches[2])}}DURATION(){return{expect:[this.SLASH,this.DURATIONS],maybe:!0,run:e=>this.builder.setNoteDuration(e.matches[1])}}OPTS(){return{expect:[this.LBRACKET,this.KEYVAL,this.KEYVALS,this.RBRACKET],maybe:!0}}KEYVALS(){return{expect:[this.COMMA,this.KEYVAL],zeroOrMore:!0}}KEYVAL(){const e=r=>r.slice(1,-1);return{expect:[this.KEY,this.EQUALS,this.VAL],run:r=>this.builder.addNoteOption(r.matches[0],e(r.matches[2]))}}VAL(){return{expect:[this.SVAL,this.DVAL],or:!0}}KEY(){return{token:"[a-zA-Z][a-zA-Z0-9]*"}}DVAL(){return{token:'["][^"]*["]'}}SVAL(){return{token:"['][^']*[']"}}NOTENAME(){return{token:"[a-gA-G]"}}OCTAVE(){return{token:"[0-9]+"}}ACCIDENTALS(){return{token:"bbs|bb|bss|bs|b|db|d|##|#|n|\\+\\+-|\\+-|\\+\\+|\\+|k|o"}}DURATIONS(){return{token:"[0-9whq]+"}}TYPES(){return{token:"[rRsSxX]"}}LPAREN(){return{token:"[(]"}}RPAREN(){return{token:"[)]"}}COMMA(){return{token:"[,]"}}DOT(){return{token:"[.]"}}SLASH(){return{token:"[/]"}}MAYBESLASH(){return{token:"[/]?"}}EQUALS(){return{token:"[=]"}}LBRACKET(){return{token:"\\["}}RBRACKET(){return{token:"\\]"}}EOL(){return{token:"$"}}}class Builder{constructor(e){this.factory=e,this.commitHooks=[],this.reset()}reset(e={}){this.options={stem:"auto",clef:"treble"},this.elements={notes:[],accidentals:[]},this.rollingDuration="8",this.resetPiece(),Object.assign(this.options,e)}getFactory(){return this.factory}getElements(){return this.elements}addCommitHook(e){this.commitHooks.push(e)}resetPiece(){L$1("resetPiece"),this.piece={chord:[],duration:this.rollingDuration,dots:0,type:void 0,options:{}}}setNoteDots(e){L$1("setNoteDots:",e),e&&(this.piece.dots=e.length)}setNoteDuration(e){L$1("setNoteDuration:",e),this.rollingDuration=this.piece.duration=e||this.rollingDuration}setNoteType(e){L$1("setNoteType:",e),e&&(this.piece.type=e)}addNoteOption(e,r){L$1("addNoteOption: key:",e,"value:",r),this.piece.options[e]=r}addNote(e,r,s){L$1("addNote:",e,r,s),this.piece.chord.push({key:e,accid:r,octave:s})}addSingleNote(e,r,s){L$1("addSingleNote:",e,r,s),this.addNote(e,r,s)}addChord(e){L$1("startChord"),typeof e[0]!="object"?this.addSingleNote(e[0]):e.forEach(r=>{r&&this.addNote(...r)}),L$1("endChord")}commitPiece(){L$1("commitPiece");const{factory:e}=this;if(!e)return;const r={...this.options,...this.piece.options},{stem:s,clef:o}=r,a=s.toLowerCase()==="auto",l=!a&&s.toLowerCase()==="up"?StaveNote.STEM_UP:StaveNote.STEM_DOWN,{chord:c,duration:u,dots:m,type:g}=this.piece,d=c.map(b=>b.key+"/"+b.octave),y=e.StaveNote({keys:d,duration:u,dots:m,type:g,clef:o,auto_stem:a});a||y.setStemDirection(l);const A=c.map(b=>b.accid||null);A.forEach((b,S)=>{b&&y.addAccidental(S,e.Accidental({type:b}))});for(let b=0;bb(r,y,this)),this.elements.notes.push(y),this.elements.accidentals.concat(A),this.resetPiece()}}function setId({id:i},e){i!==void 0&&e.setAttribute("id",i)}function setClass(i,e){if(!i.class)return;const r=/\s*,\s*/;i.class.split(r).forEach(s=>e.addClass(s))}class EasyScore{constructor(e={}){this.setOptions(e),this.defaults={clef:"treble",time:"4/4",stem:"auto"}}set(e){return Object.assign(this.defaults,e),this}setOptions(e){return this.options={factory:null,builder:null,commitHooks:[setId,setClass,Articulation$1.easyScoreHook],throwOnError:!1,...e},this.factory=this.options.factory,this.builder=this.options.builder||new Builder(this.factory),this.grammar=new Grammar(this.builder),this.parser=new Parser(this.grammar),this.options.commitHooks.forEach(r=>this.addCommitHook(r)),this}setContext(e){return this.factory&&this.factory.setContext(e),this}parse(e,r={}){this.builder.reset(r);const s=this.parser.parse(e);if(!s.success&&this.options.throwOnError)throw new X$1("Error parsing line: "+e,s);return s}beam(e,r={}){return this.factory.Beam({notes:e,options:r}),e}tuplet(e,r={}){return this.factory.Tuplet({notes:e,options:r}),e}notes(e,r={}){return r={clef:this.defaults.clef,stem:this.defaults.stem,...r},this.parse(e,r),this.builder.getElements().notes}voice(e,r){return r={time:this.defaults.time,...r},this.factory.Voice(r).addTickables(e)}addCommitHook(e){return this.builder.addCommitHook(e)}}function initGroup(){return{notes:[],finish:!1,total:0,staveId:""}}let _text_width=null,tone="C",group=initGroup(),_denominator="",_numerator="",ornamentGroup="";class NumberedNote extends StaveNote{static get CATEGORY(){return"numberednotes"}static accidentalAndKey(e){switch(e){case"G":return{4:"#"};case"D":return{1:"#",4:"#"};case"A":return{1:"#",4:"#",5:"#"};case"E":return{1:"#",2:"#",4:"#",5:"#"};case"B":return{1:"#",2:"#",4:"#",5:"#",6:"#"};case"F#":return{1:"#",2:"#",3:"#",4:"#",5:"#",6:"#"};case"C#":return{1:"#",2:"#",3:"#",4:"#",5:"#",6:"#",7:"#"};case"F":return{7:"b"};case"Bb":return{7:"b",3:"b"};case"Eb":return{7:"b",3:"b",6:"b"};case"Ab":return{7:"b",2:"b",3:"b",6:"b"};case"Db":return{7:"b",2:"b",3:"b",5:"b",6:"b"};case"Gb":return{7:"b",1:"b",2:"b",3:"b",5:"b",6:"b"};case"Cb":return{7:"b",1:"b",2:"b",3:"b",4:"b",5:"b",6:"b"};default:return{}}}static accidentalMap(e){switch(e){case"C":return"";case"F":case"Bb":case"Eb":case"Ab":case"Db":case"Gb":case"Cb":return{bb:"b",b:"",n:"#","#":"##"};default:return{b:"bb",n:"b","#":"","##":"#"}}}static get noteLift(){switch(tone){case"G":return["7"];case"D":return["7","3"];case"A":return["7","3","6"];case"E":return["2","6","3","7"];case"B":return["5","2","6","3","7"];case"F#":return["1","5","2","6","3","7"];case"C#":return["4","1","5","2","6","3","7"];case"F":return["4"];case"Bb":return["1","4"];case"Eb":return["5","1","4"];case"Ab":return["2","5","1","4"];case"Db":return["6","2","5","1","4"];case"Gb":return["3","6","2","5","1","4"];case"Cb":return["7","3","6","2","5","1","4"]}}static get longDurationLine(){return{1:3,2:1,6:2}}static get numberedDurationLine(){return{8:1,16:2,32:3,64:4,128:5}}static get durationTime(){return{8:6144,4:4096}}constructor(e){super(e),this.setAttribute("type","NumberedNote"),tone=e.keyString,this.ornament=!!e.ornament,this.line=0,this.keys=e.keys||[],this.fontSize=20,this.offset_x=0,this.offset_y=0,this.note_tones=[],this.duration_lines=0,this.long_duration_lines=0,this.note_size=e.note_size||16;const r=Flow.sanitizeDuration(this.duration);var s=NumberedNote.numberedDurationLine[r.toString()];if(s&&(this.duration_lines=s),s=NumberedNote.longDurationLine[r.toString()],s&&(this.long_duration_lines=s),!_text_width){var o="__$text_wraper$$__";let l=document.createElement("canvas");l.id=o,document.body.append(l);const c=document.getElementById(o),u=c.getContext("2d");u.font="Arial 22px";var a=u.measureText("5");_text_width=a.width+2,document.body.removeChild(c)}}getCategory(){return NumberedNote.CATEGORY}setKeySignature(e){this.keySignature=e}preFormat(){this.preFormatted||(this.modifierContext&&this.modifierContext.preFormat(),this.setWidth(this.full_width),this.setPreFormatted(!0))}filterNote(){if(window&&window.sett&&window.sett.keySignature||!this.keys||!this.keys.length)return;const e=NumberedNote.accidentalMap(tone);if(!e)return;const r=NumberedNote.noteLift;if(!r)return;var s=this.keys[0].split("/"),o=s[0];o==="b"&&(o="R"),o=o.replace(new RegExp("#","g"),""),o=o.replace(new RegExp("n","g"),""),o.length>1&&(o=o.replace(new RegExp("b","g"),""));const a=NumberedNoteHead.numberedNotationMapping[o.toUpperCase()];if(r.includes(a))for(let l=0;l{switch(s.getAttribute("type")){case"Accidental":s.render_options.font_scale=this.note_width*1.4,s.x_shift=2,s.y_shift=this.unit_height/2,this.ornament&&(s.render_options.font_scale=this.note_width,s.x_shift=14,s.y_shift=-10);break;case"Stroke":s.x_shift=-1*e,s.y_shift=1*this.unit_height;break;case"Dot":s.x_shift=r*this.duration_dot_width+7,s.y_shift=1*this.unit_height,r++;break;case"Ornament":s.y_shift=-3;break;default:s.y_shift=1*this.unit_height}s.reset&&s.reset(),e+=s.getWidth()/2})}handleDeleteDot(){for(let e=0;ec),s=r.length?r[0]/r[1]:0;if(this.ornament)return;if(s===0)return this.long_duration_lines=this.intrinsicTicks/e-1,this.long_duration_lines>=_numerator&&(this.long_duration_lines=_numerator-1),_denominator==8&&(this.long_duration_lines=0,_numerator==3&&this.draw_dot(this.context,this.bottom_x+25,this.bottom_y-30,this.dot_width),_numerator==6&&(this.draw_dot(this.context,this.bottom_x+25,this.bottom_y-30,this.dot_width),new Glyph("v0",40).render(this.context,this.bottom_x+40,this.top_y),this.draw_dot(this.context,this.bottom_x+65,this.bottom_y-30,this.dot_width))),group=initGroup();let o={lines:this.duration_lines,duration:s,id:this.attrs.id,x:this.x-this.duration_line_space/2-this.left_width,y:this.y,width:this.full_width};s>e*2&&(this.long_duration_lines=parseInt(s/e)-1,this.handleDeleteDot()),ornamentGroup&&(o.x+=this.note_width),group.notes.push(o);let a=group.notes.reduce((c,u)=>c+u.duration,0);a=parseInt(a),a>e&&(a-=e),a>e-10&&au.lines===0).length&&(this.drawDurationLoneLine(),group=initGroup()))}draw(){if(this.checkContext(),!this.stave)throw new Vex.RERR("NoStave","Can't draw without a stave.");let e=this.context;e.save(),e.setFont("Arial",this.note_height,"normal"),this.setAttribute("el",e.openGroup("stavenote",this.getAttribute("id"))),e.openGroup("note",null,{pointerBBox:!0});let r=this.getAbsoluteX()+2.5;this.x=r;let s=this.stave.getYForLine(2)+this.note_height/2;this.y=s,this.buildToneHeads(),this.preFormatModifier(),this.applyStyle(),this.note_tones.forEach(o=>{o!=null&&o.key.includes("X2")?o.draw(e,"isX"):o.draw(e)}),e.openGroup("modifier",null,{pointerBBox:!0}),this.drawModifiers(),e.closeGroup(),e.closeGroup(),e.closeGroup(),this.calcGroup(),group.staveId=this.stave.attrs.id,this.drawDurationLine(e,{}),this.drawLongDurationLines(e),this.restoreStyle(),this.setRendered(),this.ornament?ornamentGroup?ornamentGroup=Object.assign(ornamentGroup,{lines:this.duration_lines,id:this.attrs.id,x:this.x-this.duration_line_space/2-this.left_width,width:this.full_width}):ornamentGroup={lines:this.duration_lines,id:this.attrs.id,x:this.x-this.duration_line_space/2-this.left_width,width:this.full_width}:ornamentGroup=""}drawDurationLoneLine(e,r){e=e||this.context;let s=r||this.y+this.duration_line_space;for(let o=0;o<5;o++){let a=[],l=0;for(let c=0;co)a.push(u),l++;else{if(a.length>1){let m=a.length-1;s=a[0].y+this.duration_line_space,e.rect(a[0].x,s+o*3,a[m].x-a[0].x+a[m].width,.5)}a=[],l=c+1}}if(a.length>1){let c=a.length-1;s=a[0].y+this.duration_line_space,e.rect(a[0].x,s+o*3,a[c].x-a[0].x+a[c].width,.5)}}}draw_dot(e,r,s,o){e.openGroup("numbered-note-dot"),e.beginPath(),e.arc(r,s,o,0,2*Math.PI),e.closePath(),e.fill(),e.closeGroup()}drawDurationLine(e,r){var s=this.attrs.id+"-lines";e.openGroup("numbered_note_lines",s);var o,a;if(this.duration_lines>0){const u=this.duration_line_space;var l=this.full_width;if(r&&r.width&&(l=r.width),l<0&&(l=this.note_width),!r||typeof r.startX>"u"?o=this.x-u/2-this.left_width:o=r.startX,!r||typeof r.startY>"u"?a=this.y+this.duration_line_space:a=r.startY,group.finish&&(this.drawDurationLoneLine(e,a),group=initGroup()),this.ornament?(o+=12,a-=22,l=15,ornamentGroup&&(o-=10,l+=10)):ornamentGroup&&(o+=this.note_width,l-=this.note_width),l>0){for(var c=0;cu.getAttribute("type")==="Dot"),l=this.modifiers.findIndex(u=>u.getAttribute("type")==="Accidental"),c=this.modifiers.findIndex(u=>u.getAttribute("type")==="GraceNoteGroup");o&&l>-1?this.modifiers[l].accidental.code=o==="#"?"v18":"v44":a>=0||c>=0?a>=0&&this.modifiers.splice(a+1,1):this.modifiers.splice(l,1)}}catch(o){console.log("🚀 ~ error",o)}}this.setYs(e)}getFullWidth(){return this.full_width}getFullHeight(){return this.full_height}getLine(){return this.keyProps[0].line}get full_width(){return this.note_width+this.left_width+this.right_width+this.long_duration_line_width}get long_duration_line_width(){return(this.long_duration_width+this.long_duration_space)*this.long_duration_lines}get full_height(){return this.bottom_y-this.top_y}get note_width(){return this.note_size||0}get note_dot_width(){return 6}get note_height(){return this.unit_height}get unit_height(){return this.note_size||0}get note_x(){return this.x||0}get top_x(){return this.x||0}get top_y(){var e=this;return(this.y||0)-(e.note_tones.map(s=>(s.td+s.bd)*(e.dot_space+e.dot_width)).reduce((s,o)=>s+o,0)+this.note_height*this.note_tones.length-this.unit_height-this.note_tones[0].bd*(e.dot_space+e.dot_width)+(this.note_tones.length-1)*this.head_space)}get bottom_x(){return this.x||0}get bottom_y(){return(this.y||0)+this.unit_height+this.duration_lines*(this.duration_line_height+this.duration_line_space)+this.note_tones[0].meta.bd*(this.dot_width+this.dot_space)}get left_width(){return this.modifiers_width}get right_width(){return this.full_duration_dot_width}get duration_dot_width(){return 6}get full_duration_dot_width(){return this.duration_dot_width*this.getModifiersByCategory(Dot.CATEGORY).length}getModifiersByCategory(e){var r=[];return this.modifiers.forEach(s=>{s.getCategory()===e&&r.push(s)}),r}get head_space(){return 6}get duration_line_height(){return 2}get duration_line_space(){return 4}get dot_width(){return 2}get dot_space(){return 2}get long_duration_space(){return 10}get long_duration_width(){return 20}getWidth(){return this.full_width}get modifiers_width(){let e=0;return this.modifiers.forEach(r=>{e+=r.getWidth()}),e}}class NumberedNoteHead{static get numberedNotationMapping(){let e=tone;switch(window&&window.sett&&window.sett.keySignature&&(e="C"),e){case"A":return{C:"3",D:"4",E:"5",F:"6",G:"7",A:"1",B:"2",R:"0",X:"x",min:2.5,max:5.5};case"B":return{C:"2",D:"3",E:"4",F:"5",G:"6",A:"7",B:"1",R:"0",X:"x",min:-.5,max:2.5};case"D":return{C:"7",D:"1",E:"2",F:"3",G:"4",A:"5",B:"6",R:"0",X:"x",min:.5,max:3.5};case"E":return{C:"6",D:"7",E:"1",F:"2",G:"3",A:"4",B:"5",R:"0",X:"x",min:1,max:4};case"F":return{C:"5",D:"6",E:"7",F:"1",G:"2",A:"3",B:"4",R:"0",X:"x",min:1.5,max:4.5};case"G":case"Gb":return{C:"4",D:"5",E:"6",F:"7",G:"1",A:"2",B:"3",R:"0",X:"x",min:2,max:5};case"Eb":return{C:"6",D:"7",E:"1",F:"2",G:"3",A:"4",B:"5",R:"0",X:"x",min:1,max:4};case"D#":case"Db":return{C:"7",D:"1",E:"2",F:"3",G:"4",A:"5",B:"6",R:"0",X:"x",min:.5,max:3.5};case"F#":return{C:"5",D:"6",E:"7",F:"1",G:"2",A:"3",B:"4",R:"0",X:"x",min:1.5,max:4.5};case"Ab":case"G#":return{C:"3",D:"4",E:"5",F:"6",G:"7",A:"1",B:"2",R:"0",X:"x",min:-1,max:2};case"Bb":case"A#":return{C:"2",D:"3",E:"4",F:"5",G:"6",A:"7",B:"1",R:"0",X:"x",min:-.5,max:2.5};case"C#":case"Cb":default:return{C:"1",D:"2",E:"3",F:"4",G:"5",A:"6",B:"7",R:"0",X:"x",min:0,max:3}}}tone_to_numbered_key(){var e=this.key.split("/"),r=e[0];r==="b"&&(r="R"),r=r.replace(new RegExp("#","g"),""),r=r.replace(new RegExp("n","g"),""),r.length>1&&(r=r.replace(new RegExp("b","g"),"")),e.includes("X2")&&(r="X");let s=0,o=0;this.note.stave&&this.note.stave.options&&this.note.stave.options.keySignature&&(tone=this.note.stave.options.keySignature);const a=this.note.getLine();return aNumberedNoteHead.numberedNotationMapping.max&&(o=Math.ceil((a-NumberedNoteHead.numberedNotationMapping.max)/3.5)),r.toUpperCase()==="R"&&(s=0,o=0),{key:NumberedNoteHead.numberedNotationMapping[r.toUpperCase()],td:o,bd:s}}constructor(e){this.key=e.key,this.x=e.x||0,this.y=e.y||0,this.idx=e.idx||0,this.note=e.note||0,this.meta=this.tone_to_numbered_key(),this.noteSize=e.noteSize||16,this.td=this.meta.td,this.bd=this.meta.bd}draw(e,r){let s=this.y;r&&r==="isX"?e.openGroup("numbered-note-head","","","isX"):e.openGroup("numbered-note-head");var o=this.x+(this.note.ornament?-2:0);let a=s-this.note.unit_height-this.note.dot_space-(this.note.ornament?-4:2);for(let c=0;c1&&(u-=this.note.duration_line_space),s+=u}this.draw_dot(e,o+_text_width,s,this.note.dot_width),s+=this.note.dot_width+this.note.dot_space}e.closeGroup()}get height(){return this.note.note_height+(this.meta.bd+this.meta.td)*(this.note.dot_width+this.note.dot_space)}draw_dot(e,r,s,o){e.openGroup("numbered-note-dot"),e.beginPath(),e.arc(r,s,o,0,2*Math.PI),e.closePath(),e.fill(),e.closeGroup()}}function L(...i){Factory.DEBUG&&Vex.L("Vex.Flow.Factory",i)}const X=Vex.MakeException("FactoryError");function setDefaults$1(i={},e){const r=e.options;return i=Object.assign(e,i),i.options=Object.assign(r,i.options),i}class Factory{constructor(e){L("New factory: ",e);const r={stave:{space:10},renderer:{context:null,elementId:"",backend:Renderer.Backends.SVG,width:500,height:200,background:"#FFF"},font:{face:"Arial",point:10,style:""}};this.options=r,this.setOptions(e)}static newFromElementId(e,r=500,s=200){return new Factory({renderer:{elementId:e,width:r,height:s}})}reset(){this.renderQ=[],this.systems=[],this.staves=[],this.voices=[],this.stave=null}getOptions(){return this.options}setOptions(e){for(const r of["stave","renderer","font"])Object.assign(this.options[r],e[r]);(this.options.renderer.elementId!==null||this.options.renderer.context)&&this.initRenderer(),this.reset()}initRenderer(){const{elementId:e,backend:r,width:s,height:o,background:a}=this.options.renderer;if(e==="")throw new X("HTML DOM element not set in Factory");this.context=Renderer.buildContext(e,r,s,o,a)}getContext(){return this.context}setContext(e){return this.context=e,this}getStave(){return this.stave}getVoices(){return this.voices}space(e){return this.options.stave.space*e}Stave(e){e=setDefaults$1(e,{x:0,y:0,width:this.options.renderer.width-this.space(1),options:{spacing_between_lines_px:this.options.stave.space}});const r=new Stave(e.x,e.y,e.width,e.options);return this.staves.push(r),r.setContext(this.context),this.stave=r,r}TabStave(e){e=setDefaults$1(e,{x:0,y:0,width:this.options.renderer.width-this.space(1),options:{spacing_between_lines_px:this.options.stave.space*1.3}});const r=new TabStave(e.x,e.y,e.width,e.options);return this.staves.push(r),r.setContext(this.context),this.stave=r,r}StaveNote(e){const r=new StaveNote(e);return this.stave&&r.setStave(this.stave),r.setContext(this.context),this.renderQ.push(r),r}GhostNote(e){const r=new GhostNote(e);return this.stave&&r.setStave(this.stave),r.setContext(this.context),this.renderQ.push(r),r}TextNote(e){const r=new TextNote(e);return this.stave&&r.setStave(this.stave),r.setContext(this.context),this.renderQ.push(r),r}NumberedNote(e){const r=new NumberedNote(e);return this.stave&&r.setStave(this.stave),r.setContext(this.context),this.renderQ.push(r),r}BarNote(e){e=setDefaults$1(e,{type:"single",options:{}});const r=new BarNote(e.type);return this.stave&&r.setStave(this.stave),r.setContext(this.context),this.renderQ.push(r),r}ClefNote(e){e=setDefaults$1(e,{type:"treble",options:{size:"default"}});const r=new ClefNote(e.type,e.options.size,e.options.annotation);return this.stave&&r.setStave(this.stave),r.setContext(this.context),this.renderQ.push(r),r}TimeSigNote(e){e=setDefaults$1(e,{time:"4/4",options:{}});const r=new TimeSigNote(e.time);return this.stave&&r.setStave(this.stave),r.setContext(this.context),this.renderQ.push(r),r}KeySigNote(e){const r=new KeySigNote(e.key,e.cancelKey,e.alterKey);return this.stave&&r.setStave(this.stave),r.setContext(this.context),this.renderQ.push(r),r}TabNote(e){const r=new TabNote$1(e);return this.stave&&r.setStave(this.stave),r.setContext(this.context),this.renderQ.push(r),r}GraceNote(e){const r=new GraceNote(e);return this.stave&&r.setStave(this.stave),r.setContext(this.context),r}GraceNoteGroup(e){const r=new GraceNoteGroup(e.notes,e.slur);return r.setContext(this.context),r}Accidental(e){e=setDefaults$1(e,{type:null,options:{}});const r=new Accidental(e.type);return r.setContext(this.context),r}Annotation(e){e=setDefaults$1(e,{text:"p",vJustify:"below",hJustify:"center",fontFamily:"Times",fontSize:14,fontWeight:"bold italic",options:{}});const r=new Annotation(e.text);return r.setJustification(e.hJustify),r.setVerticalJustification(e.vJustify),r.setFont(e.fontFamily,e.fontSize,e.fontWeight),r.setContext(this.context),r}Articulation(e){e=setDefaults$1(e,{type:"a.",position:"above",options:{}});const r=new Articulation$1(e.type);return r.setPosition(e.position),r.setContext(this.context),r}TextDynamics(e){e=setDefaults$1(e,{text:"p",duration:"q",dots:0,line:0,options:{}});const r=new TextDynamics({text:e.text,line:e.line,duration:e.duration,dots:e.dots});return this.stave&&r.setStave(this.stave),r.setContext(this.context),this.renderQ.push(r),r}Fingering(e){e=setDefaults$1(e,{number:"0",position:"left",options:{}});const r=new FretHandFinger(e.number);return r.setPosition(e.position),r.setContext(this.context),r}StringNumber(e){e=setDefaults$1(e,{number:"0",position:"left",options:{}});const r=new StringNumber(e.number);return r.setPosition(e.position),r.setContext(this.context),r}TickContext(){return new TickContext().setContext(this.context)}ModifierContext(){return new ModifierContext}MultiMeasureRest(e){const r=new MultiMeasureRest(e.number_of_measures,e);return r.setContext(this.context),this.renderQ.push(r),r}Voice(e){e=setDefaults$1(e,{time:"4/4",options:{}});const r=new Voice$1(e.time);return this.voices.push(r),r}StaveConnector(e){e=setDefaults$1(e,{top_stave:null,bottom_stave:null,type:"double",options:{}});const r=new StaveConnector(e.top_stave,e.bottom_stave);return r.setType(e.type).setContext(this.context),this.renderQ.push(r),r}Formatter(){return new Formatter}Tuplet(e){e=setDefaults$1(e,{notes:[],options:{}});const r=new Tuplet$1(e.notes,e.options).setContext(this.context);return this.renderQ.push(r),r}Beam(e){e=setDefaults$1(e,{notes:[],options:{autoStem:!1,secondaryBeamBreaks:[]}});const r=new Beam$1(e.notes,e.options.autoStem).setContext(this.context);return r.breakSecondaryAt(e.options.secondaryBeamBreaks),this.renderQ.push(r),r}Curve(e){e=setDefaults$1(e,{from:null,to:null,options:{}});const r=new Curve(e.from,e.to,e.options).setContext(this.context);return this.renderQ.push(r),r}StaveTie(e){e=setDefaults$1(e,{from:null,to:null,first_indices:[0],last_indices:[0],text:null,options:{direction:void 0}});const r=new StaveTie({first_note:e.from,last_note:e.to,first_indices:e.first_indices,last_indices:e.last_indices},e.text);return e.options.direction&&r.setDirection(e.options.direction),r.setContext(this.context),this.renderQ.push(r),r}StaveLine(e){e=setDefaults$1(e,{from:null,to:null,first_indices:[0],last_indices:[0],options:{}});const r=new StaveLine({first_note:e.from,last_note:e.to,first_indices:e.first_indices,last_indices:e.last_indices});return e.options.text&&r.setText(e.options.text),e.options.font&&r.setFont(e.options.font),r.setContext(this.context),this.renderQ.push(r),r}VibratoBracket(e){e=setDefaults$1(e,{from:null,to:null,options:{harsh:!1}});const r=new VibratoBracket({start:e.from,stop:e.to});return e.options.line&&r.setLine(e.options.line),e.options.harsh&&r.setHarsh(e.options.harsh),r.setContext(this.context),this.renderQ.push(r),r}TextBracket(e){e=setDefaults$1(e,{from:null,to:null,text:"",options:{superscript:"",position:1}});const r=new TextBracket({start:e.from,stop:e.to,text:e.text,superscript:e.options.superscript,position:e.options.position});return e.options.line&&r.setLine(e.options.line),e.options.font&&r.setFont(e.options.font),r.setContext(this.context),this.renderQ.push(r),r}System(e={}){e.factory=this;const r=new System(e).setContext(this.context);return this.systems.push(r),r}EasyScore(e={}){return e.factory=this,new EasyScore(e)}PedalMarking(e={}){e=setDefaults$1(e,{notes:[],options:{style:"mixed"}});const r=new PedalMarking(e.notes);return r.setStyle(PedalMarking.StylesString[e.options.style]),r.setContext(this.context),this.renderQ.push(r),r}NoteSubGroup(e={}){e=setDefaults$1(e,{notes:[],options:{}});const r=new NoteSubGroup$1(e.notes);return r.setContext(this.context),r}draw(){this.systems.forEach(e=>e.setContext(this.context).format()),this.staves.forEach(e=>e.setContext(this.context).draw()),this.voices.forEach(e=>e.setContext(this.context).draw()),this.renderQ.forEach(e=>{e.isRendered()||e.setContext(this.context).draw()}),this.systems.forEach(e=>e.setContext(this.context).draw()),this.reset()}}function setDefaults(i,e){const r=e.options;return i=Object.assign(e,i),i.options=Object.assign(r,i.options),i}class System extends Element$1{constructor(e={}){super(),this.setAttribute("type","System"),this.setOptions(e),this.parts=[]}setOptions(e={}){this.options=setDefaults(e,{x:10,y:10,width:500,connector:null,spaceBetweenStaves:12,factory:null,debugFormatter:!1,formatIterations:0,options:{}}),this.factory=this.options.factory||new Factory({renderer:{el:null}})}setContext(e){return super.setContext(e),this.factory.setContext(e),this}addConnector(e="double"){return this.connector=this.factory.StaveConnector({top_stave:this.parts[0].stave,bottom_stave:this.parts[this.parts.length-1].stave,type:e}),this.connector}addStave(e){return e=setDefaults(e,{stave:null,voices:[],spaceAbove:0,spaceBelow:0,debugNoteMetrics:!1,options:{left_bar:!1}}),e.stave||(e.stave=this.factory.Stave({x:this.options.x,y:this.options.y,width:this.options.width,options:e.options})),e.voices.forEach(r=>r.setContext(this.context).setStave(e.stave).getTickables().forEach(s=>s.setStave(e.stave))),this.parts.push(e),e.stave}format(){const e=new Formatter;this.formatter=e;let r=this.options.y,s=0,o=[];const a=[];this.parts.forEach(c=>{r=r+c.stave.space(c.spaceAbove),c.stave.setY(r),e.joinVoices(c.voices),r=r+c.stave.space(c.spaceBelow),r=r+c.stave.space(this.options.spaceBetweenStaves),c.debugNoteMetrics&&(a.push({y:r,voice:c.voices[0]}),r+=15),o=o.concat(c.voices),s=Math.max(s,c.stave.getNoteStartX())}),this.parts.forEach(c=>c.stave.setNoteStartX(s));const l=this.options.width-(s-this.options.x)-Note.STAVEPADDING;e.format(o,l);for(let c=0;c{r.voice.getTickables().forEach(s=>Note.plotMetrics(e,s,r.y))})}}Vex.Flow=Flow;Vex.Flow.Element=Element$1;Vex.Flow.Fraction=Fraction;Vex.Flow.Renderer=Renderer;Vex.Flow.Formatter=Formatter;Vex.Flow.Music=Music;Vex.Flow.Glyph=Glyph;Vex.Flow.Stave=Stave;Vex.Flow.StaveNote=StaveNote;Vex.Flow.StaveModifier=StaveModifier;Vex.Flow.StaveTempo=StaveTempo;Vex.Flow.Voice=Voice$1;Vex.Flow.Accidental=Accidental;Vex.Flow.Beam=Beam$1;Vex.Flow.StaveTie=StaveTie;Vex.Flow.TabStave=TabStave;Vex.Flow.TabNote=TabNote$1;Vex.Flow.Bend=Bend;Vex.Flow.Vibrato=Vibrato;Vex.Flow.VibratoBracket=VibratoBracket;Vex.Flow.Note=Note;Vex.Flow.ModifierContext=ModifierContext;Vex.Flow.MultiMeasureRest=MultiMeasureRest;Vex.Flow.TickContext=TickContext;Vex.Flow.Articulation=Articulation$1;Vex.Flow.Annotation=Annotation;Vex.Flow.Barline=Barline;Vex.Flow.NoteHead=NoteHead;Vex.Flow.StaveConnector=StaveConnector;Vex.Flow.ClefNote=ClefNote;Vex.Flow.KeySignature=KeySignature;Vex.Flow.KeySigNote=KeySigNote;Vex.Flow.TimeSignature=TimeSignature;Vex.Flow.TimeSigNote=TimeSigNote;Vex.Flow.Stem=Stem;Vex.Flow.TabTie=TabTie;Vex.Flow.Clef=Clef;Vex.Flow.Dot=Dot;Vex.Flow.Modifier=Modifier;Vex.Flow.TabSlide=TabSlide;Vex.Flow.Tuplet=Tuplet$1;Vex.Flow.GraceNote=GraceNote;Vex.Flow.GraceTabNote=GraceTabNote;Vex.Flow.Tuning=Tuning;Vex.Flow.KeyManager=KeyManager;Vex.Flow.StaveHairpin=StaveHairpin;Vex.Flow.BoundingBox=BoundingBox;Vex.Flow.Stroke=Stroke;Vex.Flow.TextNote=TextNote;Vex.Flow.Curve=Curve;Vex.Flow.TextDynamics=TextDynamics;Vex.Flow.StaveLine=StaveLine;Vex.Flow.Ornament=Ornament;Vex.Flow.PedalMarking=PedalMarking;Vex.Flow.TextBracket=TextBracket;Vex.Flow.FretHandFinger=FretHandFinger;Vex.Flow.Repetition=Repetition$1;Vex.Flow.BarNote=BarNote;Vex.Flow.GhostNote=GhostNote;Vex.Flow.NoteSubGroup=NoteSubGroup$1;Vex.Flow.GraceNoteGroup=GraceNoteGroup;Vex.Flow.Tremolo=Tremolo;Vex.Flow.StringNumber=StringNumber;Vex.Flow.Crescendo=Crescendo;Vex.Flow.Volta=Volta;Vex.Flow.Font=Font;Vex.Flow.System=System;Vex.Flow.Factory=Factory;Vex.Flow.Parser=Parser;Vex.Flow.EasyScore=EasyScore;Vex.Flow.Registry=Registry;var SystemLinesEnum=(i=>(i[i.SingleThin=0]="SingleThin",i[i.DoubleThin=1]="DoubleThin",i[i.ThinBold=2]="ThinBold",i[i.BoldThinDots=3]="BoldThinDots",i[i.DotsThinBold=4]="DotsThinBold",i[i.DotsBoldBoldDots=5]="DotsBoldBoldDots",i[i.None=6]="None",i[i.Dotted=7]="Dotted",i[i.Dashed=8]="Dashed",i[i.Bold=9]="Bold",i[i.BoldThin=10]="BoldThin",i[i.DoubleBold=11]="DoubleBold",i[i.Tick=12]="Tick",i[i.Short=13]="Short",i))(SystemLinesEnum||{});class SystemLinesEnumHelper{static xmlBarlineStyleToSystemLinesEnum(e){return e==="regular"?0:e==="dotted"?7:e==="dashed"?8:e==="heavy"?9:e==="light-light"?1:e==="light-heavy"?2:e==="heavy-light"?10:e==="heavy-heavy"?11:e==="tick"?12:e==="short"?13:e==="none"?6:0}}class Matrix2D{constructor(){this.matrix=[];for(let e=0;e<2;e++){this.matrix[e]=[];for(let r=0;r<2;r++)this.matrix[e][r]=0}}static getRotationMatrix(e){const r=new Matrix2D,s=Math.cos(e),o=Math.sin(e);return r.matrix[0][0]=s,r.matrix[0][1]=-o,r.matrix[1][0]=o,r.matrix[1][1]=s,r}scalarMultiplication(e){for(let r=0;r<2;r++)for(let s=0;s<2;s++)this.matrix[r][s]*=e}getTransposeMatrix(){const e=new Matrix2D;for(let r=0;r<2;r++)for(let s=0;s<2;s++)e.matrix[r][s]=this.matrix[s][r];return e}vectorMultiplication(e){const r=new PointF2D;return r.x=e.x*this.matrix[0][0]+e.y*this.matrix[0][1],r.y=e.x*this.matrix[1][0]+e.y*this.matrix[1][1],r}}class MusicSheetErrors{constructor(){this.measureErrors={},this.errors=[],this.tempErrors=[]}finalizeMeasure(e){let r=this.measureErrors[e];r||(r=[]),this.measureErrors[e]=r.concat(this.tempErrors),this.tempErrors=[]}pushMeasureError(e){this.tempErrors.push(e)}push(e){this.errors.push(e)}}class Arpeggio{constructor(e,r=7){this.parentVoiceEntry=e,this.type=r,this.notes=[]}addNote(e){this.notes.push(e),e.Arpeggio=this}}var ArpeggioType=(i=>(i[i.BRUSH_DOWN=1]="BRUSH_DOWN",i[i.BRUSH_UP=2]="BRUSH_UP",i[i.ROLL_DOWN=3]="ROLL_DOWN",i[i.ROLL_UP=4]="ROLL_UP",i[i.RASQUEDO_DOWN=5]="RASQUEDO_DOWN",i[i.RASQUEDO_UP=6]="RASQUEDO_UP",i[i.ARPEGGIO_DIRECTIONLESS=7]="ARPEGGIO_DIRECTIONLESS",i))(ArpeggioType||{});class Beam{constructor(e=1,r=0){this.notes=[],this.extendedNoteList=[],this.BeamNumberOffsetToXML=0,this.AutoGenerated=!1,this.BeamNumber=e,this.BeamNumberOffsetToXML=r}get Notes(){return this.notes}set Notes(e){this.notes=e}get ExtendedNoteList(){return this.extendedNoteList}set ExtendedNoteList(e){this.extendedNoteList=e}addNoteToBeam(e){e&&(e.NoteBeam=this,this.notes.push(e),this.extendedNoteList.push(e))}}class Glissando{constructor(e){this.notes=[],this.XMLNumber=1,this.AddNote(e),this.StartNote=e,this.Direction=ColDirEnum.NotYetDefined}get Notes(){return this.notes}get Duration(){const e=new Fraction$1;for(const r of this.notes)e.Add(r.Length);return e}get Pitch(){return this.StartNote.Pitch}AddNote(e){this.notes.push(e),e.NoteGlissando=this,this.notes.length===2&&(this.notes[0].Pitch.getHalfTone()2:(loglevelExports.warn("notehead: sourceNote and filledXmlAttribute undefined."),s=!0)),this.filled=s}get SourceNote(){return this.sourceNote}get Shape(){return this.shape}get Filled(){return this.filled}static ShapeTypeXmlToShape(e){switch(e.toLowerCase()){case"normal":return 2;case"x":return 8;case"slash":return 4;case"diamond":return 1;case"square":return 5;case"la":return 5;case"do":case"triangle":return 6;case"inverted triangle":return 7;case"rectangle":return 3;case"circle-x":return 0;default:return loglevelExports.info("unsupported/unhandled xml notehead '"+e+"'. Using normal notehead."),2}}}var NoteHeadShape=(i=>(i[i.CIRCLEX=0]="CIRCLEX",i[i.DIAMOND=1]="DIAMOND",i[i.NORMAL=2]="NORMAL",i[i.RECTANGLE=3]="RECTANGLE",i[i.SLASH=4]="SLASH",i[i.SQUARE=5]="SQUARE",i[i.TRIANGLE=6]="TRIANGLE",i[i.TRIANGLE_INVERTED=7]="TRIANGLE_INVERTED",i[i.X=8]="X",i))(NoteHeadShape||{});class ITextTranslation{static translateText(e,r){if(!this.defaultTextTranslation)return r}}var NoteType=(i=>(i[i.UNDEFINED=0]="UNDEFINED",i[i._1024th=1]="_1024th",i[i._512th=2]="_512th",i[i._256th=3]="_256th",i[i._128th=4]="_128th",i[i._64th=5]="_64th",i[i._32nd=6]="_32nd",i[i._16th=7]="_16th",i[i.EIGTH=8]="EIGTH",i[i.QUARTER=9]="QUARTER",i[i.HALF=10]="HALF",i[i.WHOLE=11]="WHOLE",i[i.BREVE=12]="BREVE",i[i.LONG=13]="LONG",i[i.MAXIMA=14]="MAXIMA",i))(NoteType||{});class NoteTypeHandler{static NoteTypeToString(e){return this.NoteTypeXmlValues[e]}static StringToNoteType(e){const r=this.NoteTypeXmlValues.indexOf(e);return r!==-1?r:0}static getNoteDurationFromType(e){switch(e){case"1024th":return new Fraction$1(1,1024);case"512th":return new Fraction$1(1,512);case"256th":return new Fraction$1(1,256);case"128th":return new Fraction$1(1,128);case"64th":return new Fraction$1(1,64);case"32th":case"32nd":return new Fraction$1(1,32);case"16th":return new Fraction$1(1,16);case"eighth":return new Fraction$1(1,8);case"quarter":return new Fraction$1(1,4);case"half":return new Fraction$1(1,2);case"whole":return new Fraction$1(1,1);case"breve":return new Fraction$1(2,1);case"long":return new Fraction$1(4,1);case"maxima":return new Fraction$1(8,1);default:{const r=ITextTranslation.translateText("ReaderErrorMessages/NoteDurationError","Invalid note duration.");throw new MusicSheetReadingException(r)}}}}NoteTypeHandler.NoteTypeXmlValues=["","1024th","512th","256th","128th","64th","32nd","16th","eigth","quarter","half","whole","breve","long","maxima"];class OrnamentContainer{constructor(e){this.placement=PlacementEnum.Above,this.accidentalAbove=AccidentalEnum.NONE,this.accidentalBelow=AccidentalEnum.NONE,this.ornament=e}get GetOrnament(){return this.ornament}get AccidentalAbove(){return this.accidentalAbove}set AccidentalAbove(e){this.accidentalAbove=e}get AccidentalBelow(){return this.accidentalBelow}set AccidentalBelow(e){this.accidentalBelow=e}}var OrnamentEnum=(i=>(i[i.Trill=0]="Trill",i[i.Turn=1]="Turn",i[i.InvertedTurn=2]="InvertedTurn",i[i.DelayedTurn=3]="DelayedTurn",i[i.DelayedInvertedTurn=4]="DelayedInvertedTurn",i[i.Mordent=5]="Mordent",i[i.InvertedMordent=6]="InvertedMordent",i))(OrnamentEnum||{});class VerticalSourceStaffEntryContainer{constructor(e,r,s){this.staffEntries=[],this.comments=[],this.timestamp=r,this.staffEntries=new Array(s),this.parentMeasure=e}$get$(e){return this.staffEntries[e]}$set$(e,r){this.staffEntries[e]=r}get Timestamp(){return this.timestamp}set Timestamp(e){this.timestamp=e}get StaffEntries(){return this.staffEntries}set StaffEntries(e){this.staffEntries=e}get Comments(){return this.comments}set Comments(e){this.comments=e}get ParentMeasure(){return this.parentMeasure}set ParentMeasure(e){this.parentMeasure=e}getAbsoluteTimestamp(){return Fraction$1.plus(this.timestamp,this.parentMeasure.AbsoluteTimestamp)}}class SourceStaffEntry{constructor(e,r){this.voiceEntries=[],this.instructions=[],this.chordSymbolContainers=[],this.verticalContainerParent=e,this.parentStaff=r}get ParentStaff(){return this.parentStaff}get VerticalContainerParent(){return this.verticalContainerParent}get Timestamp(){if(this.VerticalContainerParent)return this.VerticalContainerParent.Timestamp}get AbsoluteTimestamp(){if(this.VerticalContainerParent)return Fraction$1.plus(this.VerticalContainerParent.ParentMeasure.AbsoluteTimestamp,this.VerticalContainerParent.Timestamp)}get VoiceEntries(){return this.voiceEntries}set VoiceEntries(e){this.voiceEntries=e}get Link(){return this.staffEntryLink}set Link(e){this.staffEntryLink=e}get Instructions(){return this.instructions}set Instructions(e){this.instructions=e}get ChordContainers(){return this.chordSymbolContainers}set ChordContainers(e){this.chordSymbolContainers=e}removeAllInstructionsOfTypeClefInstruction(){let e=0,r=0;for(;e0)return!0;return!1}hasTie(){for(let e=0,r=this.VoiceEntries.length;er.parentRepetition.StartIndex)return-1}if(e.alignment===0&&r.alignment===0){if(e.parentRepetition.EndIndexr.parentRepetition.EndIndex)return-1}}return 0}}class RepetitionInstruction{constructor(e,r,s=1,o=void 0,a=void 0){this.endingIndices=void 0,this.measureIndex=e,a&&(this.endingIndices=a.slice()),this.type=r,this.alignment=s,this.parentRepetition=o}CompareTo(e){const r=e;if(this.measureIndex>r.measureIndex)return 1;if(this.measureIndex(i[i.StartLine=0]="StartLine",i[i.ForwardJump=1]="ForwardJump",i[i.BackJumpLine=2]="BackJumpLine",i[i.Ending=3]="Ending",i[i.DaCapo=4]="DaCapo",i[i.DalSegno=5]="DalSegno",i[i.Fine=6]="Fine",i[i.ToCoda=7]="ToCoda",i[i.DalSegnoAlFine=8]="DalSegnoAlFine",i[i.DaCapoAlFine=9]="DaCapoAlFine",i[i.DalSegnoAlCoda=10]="DalSegnoAlCoda",i[i.DaCapoAlCoda=11]="DaCapoAlCoda",i[i.Coda=12]="Coda",i[i.Segno=13]="Segno",i[i.None=14]="None",i))(RepetitionInstructionEnum||{}),AlignmentType=(i=>(i[i.Begin=0]="Begin",i[i.End=1]="End",i))(AlignmentType||{});let prevSourceMeasure=null;class SourceMeasure{constructor(e,r){this.printNewSystemXml=!1,this.printNewPageXml=!1,this.IsSystemStartMeasure=!1,this.hasLyrics=!1,this.hasMoodExpressions=!1,this.allRests=!1,this.isReducedToMultiRest=!1,this.multipleRestMeasureNumber=0,this.staffLinkedExpressions=[],this.tempoExpressions=[],this.verticalSourceStaffEntryContainers=[],this.graphicalMeasureErrors=[],this.firstRepetitionInstructions=[],this.lastRepetitionInstructions=[],this.metronomeNoteIndex=0,this.WasRendered=!1,this.completeNumberOfStaves=e,this.implicitMeasure=!1,this.hasEndLine=!1,this.endingBarStyleXml="",this.endingBarStyleEnum=SystemLinesEnum.SingleThin,this.firstInstructionsStaffEntries=new Array(e),this.lastInstructionsStaffEntries=new Array(e),this.rules=r,this.TempoInBPM=0;for(let s=0;s1)return e[this.measureListIndex-1]}get Rules(){return this.rules}get VerticalMeasureList(){return this.verticalMeasureList}set VerticalMeasureList(e){this.verticalMeasureList=e}get TempoInBPM(){return this.tempoInBPM}set TempoInBPM(e){this.tempoInBPM=e}findOrCreateStaffEntry(e,r,s){let o,a;for(const c of this.verticalSourceStaffEntryContainers)if(c.Timestamp.Equals(e)){a=c;break}if(a)return a.StaffEntries[r]?o=a.StaffEntries[r]:(o=new SourceStaffEntry(a,s),a.StaffEntries[r]=o),{createdNewContainer:!1,staffEntry:o};const l=this.verticalSourceStaffEntryContainers[this.verticalSourceStaffEntryContainers.length-1];if(this.verticalSourceStaffEntryContainers.length===0||l.Timestamp.lt(e)){const c=new VerticalSourceStaffEntryContainer(this,e.clone(),this.completeNumberOfStaves);this.verticalSourceStaffEntryContainers.push(c),o=new SourceStaffEntry(c,s),c.StaffEntries[r]=o}else for(let c=this.verticalSourceStaffEntryContainers.length-1;c>=0;c--){if(this.verticalSourceStaffEntryContainers[c].Timestamp.lt(e)){const u=new VerticalSourceStaffEntryContainer(this,e.clone(),this.completeNumberOfStaves);this.verticalSourceStaffEntryContainers.splice(c+1,0,u),o=new SourceStaffEntry(u,s),u.StaffEntries[r]=o;break}if(c===0){const u=new VerticalSourceStaffEntryContainer(this,e.clone(),this.completeNumberOfStaves);this.verticalSourceStaffEntryContainers.splice(c,0,u),o=new SourceStaffEntry(u,s),u.StaffEntries[r]=o;break}}return{createdNewContainer:!0,staffEntry:o}}findOrCreateVoiceEntry(e,r){let s,o=!1;for(const a of e.VoiceEntries)if(a.ParentVoice===r){s=a;break}return s||(s=new VoiceEntry(e.Timestamp,r,e),o=!0),{createdVoiceEntry:o,voiceEntry:s}}getPreviousSourceStaffEntryFromIndex(e,r){for(let s=r-1;s>=0;s--)if(this.verticalSourceStaffEntryContainers[s][e])return this.verticalSourceStaffEntryContainers[s][e]}getVerticalContainerIndexByTimestamp(e){for(let r=0,s=this.VerticalSourceStaffEntryContainers.length;r=0;d--){const y=this.verticalSourceStaffEntryContainers[d][c+u];if(y!==void 0&&y.hasTie()&&l.lt(Fraction$1.plus(y.Timestamp,y.calculateMaxNoteLength()))){l=Fraction$1.plus(y.Timestamp,y.calculateMaxNoteLength());break}}}}o.push(l)}for(let a=0,l=o.length;a0)return!0}return!1}beginsWithLineRepetition(){for(let e=0,r=this.FirstRepetitionInstructions.length;e=0;o--)if(s=this.verticalSourceStaffEntryContainers[o].StaffEntries[e],s&&(!r||s.VoiceEntries.length>0))return s}canBeReducedToMultiRest(){var s,o,a,l,c,u;if(this.firstRepetitionInstructions.length>0||this.lastRepetitionInstructions.length>0)return!1;let e=!0,r=!1;for(const m of this.verticalSourceStaffEntryContainers)if(m){for(const g of m.StaffEntries)if(!(!g||!g.ParentStaff.ParentInstrument.Visible)){if(g.ChordContainers.length>0)return!1;g.ParentStaff.hasLyrics&&(r=!0);for(const d of g.VoiceEntries){for(const y of d.Notes)if(!y.isRest()){e=!1;break}if(!e)break}}}if(!e||r||this.hasMoodExpressions||this.tempoExpressions.length>0)return!1;for(const m of this.staffLinkedExpressions)if(m.length>0)return!1;for(const m of this.lastInstructionsStaffEntries)for(let g=0,d=m==null?void 0:m.Instructions.length;g=0;r--)for(let s=0;s(i[i.Fingering=0]="Fingering",i[i.String=1]="String",i))(TechnicalInstructionType||{});class TechnicalInstruction{}class PlaybackNote{constructor(e,r){this.parentEntry=e,this.parentNote=r,this.ParentNote.PlaybackNote=this,this.Length=this.ParentNote.Length,r.Pitch!==void 0?this.ParentNote.ParentStaff.ParentInstrument.MidiInstrumentId===MidiInstrument.Percussion?this.MidiKey=PlaybackNote.noteToMidiDrumKey(r):this.MidiKey=r.Pitch.getHalfTone()+12:this.MidiKey=0}setLength(){this.ParentNote.NoteTie!==void 0&&this.ParentNote.NoteTie.StartNote===this.ParentNote&&(this.Length=this.ParentNote.NoteTie.Duration)}get ParentEntry(){return this.parentEntry}get ParentNote(){return this.parentNote}static noteToMidiDrumKey(e){var o;const r=e.Pitch.getHalfTone()-12,s=(o=e.Notehead)==null?void 0:o.Shape;switch(e.Pitch.Octave){case 1:switch(e.Pitch.FundamentalNote){case NoteEnum.D:switch(s){default:return 44}case NoteEnum.E:switch(s){default:return 35}case NoteEnum.F:switch(s){default:return 36}case NoteEnum.G:switch(s){default:return 41}case NoteEnum.A:switch(s){default:return 43}case NoteEnum.B:switch(s){case NoteHeadShape.TRIANGLE:return 54;default:return 47}default:return r}case 2:switch(e.Pitch.FundamentalNote){case NoteEnum.C:switch(s){case NoteHeadShape.X:return 37;default:return 38}case NoteEnum.D:switch(s){case NoteHeadShape.X:return 59;default:return 48}case NoteEnum.E:switch(s){case NoteHeadShape.X:return 42;case NoteHeadShape.CIRCLEX:return 46;case NoteHeadShape.TRIANGLE:return 56;default:return 50}case NoteEnum.F:switch(s){case NoteHeadShape.DIAMOND:return 53;default:return 51}case NoteEnum.G:switch(s){case NoteHeadShape.CIRCLEX:case NoteHeadShape.DIAMOND:return 46;default:return 42}case NoteEnum.A:switch(s){default:return 49}case NoteEnum.B:switch(s){default:return 57}default:return r}case 3:switch(e.Pitch.FundamentalNote){case NoteEnum.C:switch(s){case NoteHeadShape.CIRCLEX:return 52;default:return 55}default:return r}default:return r}}}class PlaybackEntry{constructor(e){this.notes=[],this.TimestampShift=new Fraction$1,this.parentVoiceEntry=e;for(const r of e.Notes)this.Notes.push(new PlaybackNote(this,r))}get ParentVoiceEntry(){return this.parentVoiceEntry}get Notes(){return this.notes}get Length(){if(this.Notes.length>0)return this.Notes[0].Length}set Length(e){for(const r of this.Notes)r.Length=e}get HasNotes(){return this.Notes.length>0}}class VoiceEntry{constructor(e,r,s,o=!0,a=!1,l=!1,c=!1){if(this.notes=[],this.graceVoiceEntriesBefore=[],this.graceVoiceEntriesAfter=[],this.articulations=[],this.playbackEntries=[],this.technicalInstructions=[],this.lyricsEntries=new Dictionary,this.wantedStemDirection=-1,this.stemDirectionXml=-1,this.stemDirection=-1,this.timestamp=e,this.parentVoice=r,this.parentSourceStaffEntry=s,this.isGrace=a,this.graceAfterMainNote=!1,this.graceNoteSlash=l,this.graceSlur=c,a||r.VoiceEntries.push(this),o&&s!==void 0){const u=s.VoiceEntries;u.indexOf(this)===-1&&u.push(this)}this.mainPlaybackEntry=new PlaybackEntry(this),this.PlaybackEntries.push(this.mainPlaybackEntry)}get ParentSourceStaffEntry(){return this.parentSourceStaffEntry}get ParentVoice(){return this.parentVoice}get Timestamp(){return this.timestamp}set Timestamp(e){this.timestamp=e}get Notes(){return this.notes}addNote(e){this.notes.push(e),!e.isRest()&&(e.NoteTie===void 0||e.NoteTie.StartNote===e)&&this.MainPlaybackEntry.Notes.push(new PlaybackNote(this.MainPlaybackEntry,e))}get GraceVoiceEntriesBefore(){return this.graceVoiceEntriesBefore}set GraceVoiceEntriesBefore(e){this.graceVoiceEntriesBefore=e;for(const r of this.graceVoiceEntriesBefore)r.parentSourceStaffEntry=this.ParentSourceStaffEntry}get GraceVoiceEntriesAfter(){return this.graceVoiceEntriesAfter}set GraceVoiceEntriesAfter(e){this.graceVoiceEntriesAfter=e;for(const r of this.graceVoiceEntriesAfter)r.parentSourceStaffEntry=this.ParentSourceStaffEntry}get IsGrace(){return this.isGrace}set IsGrace(e){this.isGrace=e}get GraceAfterMainNote(){return this.graceAfterMainNote}set GraceAfterMainNote(e){this.graceAfterMainNote=e}get GraceNoteSlash(){return this.graceNoteSlash}set GraceNoteSlash(e){this.graceNoteSlash=e}get GraceSlur(){return this.graceSlur}set GraceSlur(e){this.graceSlur=e}get Articulations(){return this.articulations}get PlaybackEntries(){return this.playbackEntries}get Fermata(){return this.fermata}get MainPlaybackEntry(){return this.mainPlaybackEntry}set MainPlaybackEntry(e){this.mainPlaybackEntry=e}removeMainPlaybackEntry(){this.mainPlaybackEntry!==void 0&&this.removePlaybackEntry(this.mainPlaybackEntry)}removePlaybackEntry(e){this.mainPlaybackEntry===e&&(this.mainPlaybackEntry=void 0);const r=this.playbackEntries.indexOf(e);r>-1&&this.playbackEntries.splice(r,1)}set Articulations(e){this.articulations=e}get TechnicalInstructions(){return this.technicalInstructions}get LyricsEntries(){return this.lyricsEntries}get Arpeggio(){return this.arpeggio}set Arpeggio(e){this.arpeggio=e}get OrnamentContainer(){return this.ornamentContainer}set OrnamentContainer(e){this.ornamentContainer=e}set WantedStemDirection(e){this.wantedStemDirection=e}get WantedStemDirection(){return this.wantedStemDirection}set StemDirectionXml(e){this.stemDirectionXml=e}get StemDirectionXml(){return this.stemDirectionXml}set StemDirection(e){this.stemDirection=e}get StemDirection(){return this.stemDirection}get StemColorXml(){return this.stemColorXml}set StemColorXml(e){this.stemColorXml=e}get StemColor(){return this.stemColor}set StemColor(e){this.stemColor=e}get VolumeModifier(){return this.volumeModifier}set VolumeModifier(e){this.volumeModifier=e}get DurationModifier(){return this.durationModifier}set DurationModifier(e){this.durationModifier=e}hasArticulation(e){for(const r of this.articulations)if(r.Equals(e))return!0;return!1}static isSupportedArticulation(e){switch(e){case 0:case 1:case 2:case 5:case 6:case 7:case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15:case 16:case 17:case 18:case 27:return!0;default:return!1}}hasTie(){for(let e=0,r=this.Notes.length;e0)return!0;return!1}isStaccato(){for(const e of this.Articulations)if(e.articulationEnum===6)return!0;return!1}isAccent(){for(const e of this.Articulations)if(e.articulationEnum===0||e.articulationEnum===1)return!0;return!1}getVerseNumberForLyricEntry(e){let r="1";return this.lyricsEntries.forEach((s,o)=>{e===o&&(r=s)}),r}}var ArticulationEnum=(i=>(i[i.accent=0]="accent",i[i.strongaccent=1]="strongaccent",i[i.softaccent=2]="softaccent",i[i.marcatoup=3]="marcatoup",i[i.marcatodown=4]="marcatodown",i[i.invertedstrongaccent=5]="invertedstrongaccent",i[i.staccato=6]="staccato",i[i.staccatissimo=7]="staccatissimo",i[i.spiccato=8]="spiccato",i[i.tenuto=9]="tenuto",i[i.fermata=10]="fermata",i[i.invertedfermata=11]="invertedfermata",i[i.breathmark=12]="breathmark",i[i.caesura=13]="caesura",i[i.lefthandpizzicato=14]="lefthandpizzicato",i[i.naturalharmonic=15]="naturalharmonic",i[i.snappizzicato=16]="snappizzicato",i[i.upbow=17]="upbow",i[i.downbow=18]="downbow",i[i.scoop=19]="scoop",i[i.plop=20]="plop",i[i.doit=21]="doit",i[i.falloff=22]="falloff",i[i.stress=23]="stress",i[i.unstress=24]="unstress",i[i.detachedlegato=25]="detachedlegato",i[i.otherarticulation=26]="otherarticulation",i[i.bend=27]="bend",i))(ArticulationEnum||{}),StemDirectionType=(i=>(i[i.Undefined=-1]="Undefined",i[i.Up=0]="Up",i[i.Down=1]="Down",i[i.None=2]="None",i[i.Double=3]="Double",i))(StemDirectionType||{}),SystemLinePosition=(i=>(i[i.MeasureBegin=0]="MeasureBegin",i[i.MeasureEnd=1]="MeasureEnd",i))(SystemLinePosition||{});class GraphicalLabel extends Clickable{constructor(e,r,s,o,a=void 0){super(),this.CenteringXShift=0,this.label=e,this.boundingBox=new BoundingBox$1(this,a),this.label.fontHeight=r,this.label.textAlignment=s,this.rules=o,this.rules.MpatMode&&this.label.text==="TRIO"&&(this.label.fontFamily="Arial")}get Label(){return this.label}toString(){return`${this.label.text} (${this.boundingBox.RelativePosition.x},${this.boundingBox.RelativePosition.y})`}setLabelPositionAndShapeBorders(){var c,u;if(this.Label.text.trim()==="")return;this.TextLines=[];const e=(u=(c=this.rules)==null?void 0:c.LabelMarginBorderFactor)!=null?u:.1,r=this.Label.text.split(/[\n\r]+/g),s=r.length;let o=0;for(let m=0;m0&&this.TextLines.length>1&&(a+=this.rules.SpacingBetweenTextLines*s/10);const l=this.PositionAndShape;switch(this.Label.textAlignment){case TextAlignmentEnum.CenterBottom:l.BorderTop=-a,l.BorderLeft=-o/2,l.BorderBottom=0,l.BorderRight=o/2;break;case TextAlignmentEnum.CenterCenter:l.BorderTop=-a/2,l.BorderLeft=-o/2,l.BorderBottom=a/2,l.BorderRight=o/2;break;case TextAlignmentEnum.CenterTop:l.BorderTop=0,l.BorderLeft=-o/2,l.BorderBottom=a,l.BorderRight=o/2;break;case TextAlignmentEnum.LeftBottom:l.BorderTop=-a,l.BorderLeft=0,l.BorderBottom=0,l.BorderRight=o;break;case TextAlignmentEnum.LeftCenter:l.BorderTop=-a/2,l.BorderLeft=0,l.BorderBottom=a/2,l.BorderRight=o;break;case TextAlignmentEnum.LeftTop:l.BorderTop=0,l.BorderLeft=0,l.BorderBottom=a,l.BorderRight=o;break;case TextAlignmentEnum.RightBottom:l.BorderTop=-a,l.BorderLeft=-o,l.BorderBottom=0,l.BorderRight=0;break;case TextAlignmentEnum.RightCenter:l.BorderTop=-a/2,l.BorderLeft=-o,l.BorderBottom=a/2,l.BorderRight=0;break;case TextAlignmentEnum.RightTop:l.BorderTop=0,l.BorderLeft=-o,l.BorderBottom=a,l.BorderRight=0;break}l.BorderMarginTop=l.BorderTop-a*e,l.BorderMarginLeft=l.BorderLeft-a*e,l.BorderMarginBottom=l.BorderBottom+a*e,l.BorderMarginRight=l.BorderRight+a*e}}class Label{constructor(e="",r=TextAlignmentEnum.CenterBottom,s=void 0,o=!0){this.IsCreditLabel=!1,this.isLyricText=!1,this.text=e,this.print=o,this.textAlignment=r,this.font=s,this.fontFamily=void 0}set font(e){this.fontEnumValue=e,this.fontFamily=FontStringNames[e]}get font(){return this.fontEnumValue}ToString(){return this.text}}const SpeedTag={Grava:40,Largo:46,Lento:52,Adagio:56,Larghetto:60,Andante:66,Anderato:69,Andantino:69,Moderato:88,Allegretto:108,"Allegro Moderato":108,Allegro:132,Vivace:152,Vivo:160,Vivacissimo:168,Presto:184,Prestissimo:208},SpecialMarks=["纯律","纯律结束"],HideWords=["跳过下一个","b","#","§","º","X"],GradientWords=["poco rit.","rall.","rit.","accel.","molto rit.","molto rall","lentando","poco accel.","calando"],GRADIENT_SPEED_CLOSE_TAG="结束范围速度",GRADIENT_SPEED_RESET_TAG="a tempo",SpecialWords=[GRADIENT_SPEED_CLOSE_TAG],SpeedKeyword="速度 ",SpeedHiddenKeyword="仅文本速度 ";function isSpeedKeyword(i){return i.indexOf(SpeedKeyword)===0}function isSpeedHiddenKeyword(i){return i.indexOf(SpeedHiddenKeyword)===0}function formatSpeedKeyword(i){return i.replace(SpeedHiddenKeyword,"").replace(SpeedKeyword,"")}function isGradientWords(i){return GradientWords.includes(i)}function isSpecialMark(i){return[...Object.keys(SpeedTag),...SpecialMarks,...SpecialWords,...HideWords].map(e=>e.trim().toLocaleUpperCase()).includes(i.toLocaleUpperCase().trim())}function isTopFont(i){return[TextAlignmentEnum.CenterTop,TextAlignmentEnum.RightTop].includes(i)}var MusicSymbol=(i=>(i[i.Unused_first_Symbol=0]="Unused_first_Symbol",i[i.BLACK_HEAD=1]="BLACK_HEAD",i[i.UPWARDS_TAIL=2]="UPWARDS_TAIL",i[i.DOWNWARDS_TAIL=3]="DOWNWARDS_TAIL",i[i.UPWARDS_DOUBLE_TAIL=4]="UPWARDS_DOUBLE_TAIL",i[i.DOWNWARDS_DOUBLE_TAIL=5]="DOWNWARDS_DOUBLE_TAIL",i[i.UPWARDS_TRIPLE_TAIL=6]="UPWARDS_TRIPLE_TAIL",i[i.DOWNWARDS_TRIPLE_TAIL=7]="DOWNWARDS_TRIPLE_TAIL",i[i.UPWARDS_QUAD_TAIL=8]="UPWARDS_QUAD_TAIL",i[i.DOWNWARDS_QUAD_TAIL=9]="DOWNWARDS_QUAD_TAIL",i[i.ROUND_HEAD=10]="ROUND_HEAD",i[i.WHITE_HEAD=11]="WHITE_HEAD",i[i.G_CLEF=12]="G_CLEF",i[i.F_CLEF=13]="F_CLEF",i[i.C_CLEF=14]="C_CLEF",i[i.BREVE=15]="BREVE",i[i.BREVE_REST=16]="BREVE_REST",i[i.COMMON_TIME=17]="COMMON_TIME",i[i.CUT_TIME=18]="CUT_TIME",i[i.WHOLE_REST=19]="WHOLE_REST",i[i.HALF_REST=20]="HALF_REST",i[i.QUARTER_REST=21]="QUARTER_REST",i[i.EIGHTH_REST=22]="EIGHTH_REST",i[i.SIXTEENTH_REST=23]="SIXTEENTH_REST",i[i.THIRTYSECOND_REST=24]="THIRTYSECOND_REST",i[i.SIXTYFOURTH_REST=25]="SIXTYFOURTH_REST",i[i.FLAT=26]="FLAT",i[i.SHARP=27]="SHARP",i[i.NATURAL=28]="NATURAL",i[i.DOUBLE_FLAT=29]="DOUBLE_FLAT",i[i.DOUBLE_SHARP=30]="DOUBLE_SHARP",i[i.ZERO=31]="ZERO",i[i.ONE=32]="ONE",i[i.TWO=33]="TWO",i[i.THREE=34]="THREE",i[i.FOUR=35]="FOUR",i[i.FIVE=36]="FIVE",i[i.SIX=37]="SIX",i[i.SEVEN=38]="SEVEN",i[i.EIGHT=39]="EIGHT",i[i.NINE=40]="NINE",i[i.DOT=41]="DOT",i[i.FERMATA=42]="FERMATA",i[i.INVERTED_FERMATA=43]="INVERTED_FERMATA",i[i.SPICCATO=44]="SPICCATO",i[i.TENUTO=45]="TENUTO",i[i.MARCATO=46]="MARCATO",i[i.MARCATISSIMO=47]="MARCATISSIMO",i[i.INVERTED_MARCATISSIMO=48]="INVERTED_MARCATISSIMO",i[i.P=49]="P",i[i.F=50]="F",i[i.S=51]="S",i[i.Z=52]="Z",i[i.M=53]="M",i[i.R=54]="R",i[i.SEGNO=55]="SEGNO",i[i.CODA=56]="CODA",i[i.DRUM_CLEF=57]="DRUM_CLEF",i[i.G_CLEF_SUB8=58]="G_CLEF_SUB8",i[i.G_CLEF_SUPER8=59]="G_CLEF_SUPER8",i[i.G_CLEF_SUB15=60]="G_CLEF_SUB15",i[i.G_CLEF_SUPER15=61]="G_CLEF_SUPER15",i[i.F_CLEF_SUB8=62]="F_CLEF_SUB8",i[i.F_CLEF_SUPER8=63]="F_CLEF_SUPER8",i[i.F_CLEF_SUB15=64]="F_CLEF_SUB15",i[i.F_CLEF_SUPER15=65]="F_CLEF_SUPER15",i[i.DOWN_BOW=66]="DOWN_BOW",i[i.MORDENT=67]="MORDENT",i[i.INVERTED_MORDENT=68]="INVERTED_MORDENT",i[i.TURN=69]="TURN",i[i.INVERTED_TURN=70]="INVERTED_TURN",i[i.LEFTHAND_PIZZICATO=71]="LEFTHAND_PIZZICATO",i[i.RELEASE_PED=72]="RELEASE_PED",i[i.ENGAGE_PED=73]="ENGAGE_PED",i[i.VA8=74]="VA8",i[i.VB8=75]="VB8",i[i.TRILL=76]="TRILL",i[i.MA15=77]="MA15",i[i.MB15=78]="MB15",i[i.HIGH=79]="HIGH",i[i.PLAY=80]="PLAY",i[i.MIC=81]="MIC",i[i.SNAP_PIZZICATO=82]="SNAP_PIZZICATO",i[i.NATURAL_HARMONIC=83]="NATURAL_HARMONIC",i[i.EditPen=84]="EditPen",i[i.PEDAL_BRACKET=85]="PEDAL_BRACKET",i[i.PEDAL_MIXED=86]="PEDAL_MIXED",i[i.PEDAL_SYMBOL=87]="PEDAL_SYMBOL",i))(MusicSymbol||{}),MusicSymbolDrawingStyle=(i=>(i[i.Normal=0]="Normal",i[i.Disabled=1]="Disabled",i[i.Selected=2]="Selected",i[i.Clickable=3]="Clickable",i[i.PlaybackSymbols=4]="PlaybackSymbols",i[i.FollowSymbols=5]="FollowSymbols",i[i.QFeedbackNotFound=6]="QFeedbackNotFound",i[i.QFeedbackOk=7]="QFeedbackOk",i[i.QFeedbackPerfect=8]="QFeedbackPerfect",i[i.Debug1=9]="Debug1",i[i.Debug2=10]="Debug2",i[i.Debug3=11]="Debug3",i))(MusicSymbolDrawingStyle||{}),PhonicScoreModes=(i=>(i[i.Following=0]="Following",i[i.Midi=1]="Midi",i[i.Manual=2]="Manual",i))(PhonicScoreModes||{});class LabelRenderSpecs{}class MusicSheetDrawer{constructor(e,r){this.drawableBoundingBoxElement="None",this.skyLineVisible=!1,this.bottomLineVisible=!1,this.needSpecialArrTs=[],this.phonicScoreMode=PhonicScoreModes.Manual,this.textMeasurer=e,this.splitScreenLineColor=-1,this.drawingParameters=r,this.rules=r.Rules}set Mode(e){this.phonicScoreMode=e}drawSheet(e){if(this.graphicalMusicSheet=e,this.rules=e.ParentMusicSheet.Rules,this.drawSplitScreenLine(),this.drawingParameters.drawCursors)for(const s of e.Cursors){if(!s)continue;const o=new BoundingBox$1(s);o.AbsolutePosition=s.Start,o.BorderBottom=s.End.y-s.Start.y,o.BorderRight=s.Width/2,o.BorderLeft=-s.Width/2,this.isVisible(o)&&this.drawLineAsVerticalRectangle(s,GraphicalLayers.Cursor)}this.drawingParameters.drawScrollIndicator&&this.drawScrollIndicator();const r=Math.min(this.graphicalMusicSheet.MusicPages.length,this.rules.MaxPageToDrawNumber);for(let s=0;sq[0]).filter(Boolean))||[],U=[];let $=!1;for(let q=0;qq.x-W.x))==null?void 0:I[0])==null?void 0:M.measure;break}}}catch(_){console.log("🚀 ~ error",_)}let R=0;V?R=((T=V.stave)==null?void 0:T.end_x)||0:R=((F=s.sourceNote.SourceMeasure.VerticalMeasureList[0])==null?void 0:F.getVFStave()).end_x;const Q=0;a.ScreenPosition.x=R,a.ScreenPosition.y=O===0?(e.PositionAndShape.Parent.AbsolutePosition.y-3-Q)*10:O*10}const u=["C","G","D","A","E","B","F#","C#","G#","F","Bb","Eb","Ab","Db","Gb","Cb","Fb","D#","A#","E#"];u.includes(o.text)&&(a.ScreenPosition.y=(e.PositionAndShape.Parent.AbsolutePosition.y+e.PositionAndShape.Parent.BorderTop+e.PositionAndShape.Parent.BorderMarginTop)*10),["play","listen"].includes(o.text.toLocaleLowerCase())&&o.textAlignment===TextAlignmentEnum.LeftBottom&&(a.ScreenPosition.y=(e.PositionAndShape.Parent.AbsolutePosition.y-1+e.PositionAndShape.Parent.BorderBottom)*10);const m=["ffp","p-f","sfzp","szf","sffzp"];for(let O=0;O0&&(isTopFont(e.Label.textAlignment)||[TextAlignmentEnum.CenterBottom].includes(e.Label.textAlignment))){let O=-1,B=!1;for(const V of(c==null?void 0:c.AbstractExpressions)||[])if(V.Label===e?O=(D=V==null?void 0:V.parentMeasure)==null?void 0:D.measureListIndex:(N=V.expression)!=null&&N.TempoInBpm&&(B=V.expression.TempoInBpm>0),B&&O>-1){a.ScreenPosition.y-=4*10;break}}this.renderLabel(e,r,a)}calculateLabel(e){var c,u;const r=new LabelRenderSpecs,s=e.Label;r.ScreenPosition=this.applyScreenTransformation(e.PositionAndShape.AbsolutePosition),r.FontHeightInPixel=this.calculatePixelDistance(s.fontHeight);const o=this.calculatePixelDistance(e.PositionAndShape.Size.width);switch(r.BitmapWidth=Math.ceil(o),r.BitmapHeight=e.TextLines?Math.ceil(r.FontHeightInPixel*(.2+e.TextLines.length)):10,s.textAlignment){case TextAlignmentEnum.LeftTop:break;case TextAlignmentEnum.LeftCenter:r.ScreenPosition.y-=r.BitmapHeight/2;break;case TextAlignmentEnum.LeftBottom:r.ScreenPosition.y-=r.BitmapHeight;break;case TextAlignmentEnum.CenterTop:r.ScreenPosition.x-=r.BitmapWidth/2;break;case TextAlignmentEnum.CenterCenter:r.ScreenPosition.x-=r.BitmapWidth/2,r.ScreenPosition.y-=r.BitmapHeight/2;break;case TextAlignmentEnum.CenterBottom:r.ScreenPosition.x-=r.BitmapWidth/2,r.ScreenPosition.y-=r.BitmapHeight,s.text==="筒音作5"&&this.rules.DYMusicScoreType==="jianpu"&&(r.ScreenPosition.x=80);break;case TextAlignmentEnum.RightTop:r.ScreenPosition.x-=r.BitmapWidth;break;case TextAlignmentEnum.RightCenter:r.ScreenPosition.x-=r.BitmapWidth,r.ScreenPosition.y-=r.BitmapHeight/2;break;case TextAlignmentEnum.RightBottom:r.ScreenPosition.x-=r.BitmapWidth,r.ScreenPosition.y-=r.BitmapHeight;break;default:throw new ArgumentOutOfRangeException("")}const a=e.PositionAndShape.Parent.DataObject,l=[1,3,7,9,15,20,22,24,28,30,36,41];this.rules.DYMusicScoreId&&this.rules.DYMusicScoreId==="1722157850347765762"&&(s.text==="."&&(r.ScreenPosition.x=142,r.ScreenPosition.y=134),s.text==="T"&&(this.needSpecialArrTs.push(r),((u=(c=a==null?void 0:a.measures)==null?void 0:c[0])==null?void 0:u.MeasureNumber)===1?r.ScreenPosition.y+=20:r.ScreenPosition.y-=20));for(let m in this.needSpecialArrTs)l.includes(Number(m))&&(this.needSpecialArrTs[m].ScreenPosition.x-=20);return r}applyScreenTransformations(e){const r=[];for(const s of e)r.push(this.applyScreenTransformation(s));return r}drawSplitScreenLine(){}renderRectangle(e,r,s,o=void 0,a=1){throw new Error("not implemented")}drawScrollIndicator(){}drawSelectionStartSymbol(e){}drawSelectionEndSymbol(e){}renderLabel(e,r,s){throw new Error("not implemented")}renderSystemToScreen(e,r,s){}drawSkyLine(e){}drawBottomLine(e){}drawInstrumentBrace(e,r){}drawGroupBracket(e,r){}isVisible(e){return!0}drawMusicSystem(e){const r=this.getSystemAbsBoundingRect(e),s=this.getSytemBoundingBoxInPixels(r);this.drawMusicSystemComponents(e,s,r)}getSytemBoundingBoxInPixels(e){const r=this.applyScreenTransformationForRect(e);return r.x=Math.round(r.x),r.y=Math.round(r.y),r}getSystemAbsBoundingRect(e){const r=e.PositionAndShape.BoundingRectangle;return new RectangleF2D(e.PositionAndShape.AbsolutePosition.x+e.PositionAndShape.BorderLeft-1,e.PositionAndShape.AbsolutePosition.y+e.PositionAndShape.BorderTop-1,r.width+6,r.height+2)}drawMusicSystemComponents(e,r,s){const o=this.graphicalMusicSheet.SelectionStartSymbol,a=this.graphicalMusicSheet.SelectionEndSymbol;this.drawingParameters.drawSelectionStartSymbol&&o!==void 0&&this.isVisible(o.PositionAndShape)&&this.drawSelectionStartSymbol(o),this.drawingParameters.drawSelectionEndSymbol&&a!==void 0&&this.isVisible(a.PositionAndShape)&&this.drawSelectionEndSymbol(a);for(const u of e.StaffLines)this.drawStaffLine(u),this.rules.RenderLyrics&&(u.LyricsDashes.length>0&&this.drawDashes(u.LyricsDashes),u.LyricLines.length>0&&this.drawLyricLines(u.LyricLines,u));for(const u of e.SystemLines)this.drawSystemLineObject(u);if(this.rules.RenderSystemLabelsAfterFirstPage||e.Parent===e.Parent.Parent.MusicPages[0])for(const u of e.Labels)u.SVGNode=this.drawLabel(u,GraphicalLayers.Notes);const l=this.graphicalMusicSheet.ParentMusicSheet.Instruments,c=l.filter(u=>u.Visible).length;for(const u of e.InstrumentBrackets)this.drawInstrumentBrace(u,e);if(l.length>0)if(c>1)for(const u of e.GroupBrackets)this.drawGroupBracket(u,e);else for(const u of e.GroupBrackets)u.Visible=!1;if(!this.leadSheet)for(const u of e.MeasureNumberLabels)u.SVGNode=this.drawLabel(u,GraphicalLayers.Notes);for(const u of e.StaffLines)this.drawStaffLineSymbols(u);this.drawingParameters.drawMarkedAreas&&this.drawMarkedAreas(e)}activateSystemRendering(e,r,s,o){return!0}drawSystemLineObject(e){}drawStaffLine(e){for(const r of e.Measures)this.drawMeasure(r),r.parentSourceMeasure&&(r.parentSourceMeasure.WasRendered=!0);this.rules.RenderLyrics&&e.LyricsDashes.length>0&&this.drawDashes(e.LyricsDashes),this.drawOctaveShifts(e),this.drawPedals(e),this.drawWavyLines(e),this.drawExpressions(e),this.skyLineVisible&&this.drawSkyLine(e),this.bottomLineVisible&&this.drawBottomLine(e)}drawLyricLines(e,r){r.LyricLines.forEach(s=>{s.Start.y+=r.PositionAndShape.AbsolutePosition.y,s.End.y+=r.PositionAndShape.AbsolutePosition.y,s.Start.x+=r.PositionAndShape.AbsolutePosition.x,s.End.x+=r.PositionAndShape.AbsolutePosition.x,this.drawGraphicalLine(s,this.rules.LyricUnderscoreLineWidth,s.colorHex)})}drawExpressions(e){}drawGraphicalLine(e,r,s="black"){return this.drawLine(e.Start,e.End,s,r)}drawLine(e,r,s="#FF0000FF",o){}drawDashes(e){e.forEach(r=>r.SVGNode=this.drawLabel(r,GraphicalLayers.Notes))}drawOctaveShifts(e){}drawStaffLines(e){if(e.StaffLines){const r=e.PositionAndShape.AbsolutePosition;for(let s=0;s<5;s++)this.drawLineAsHorizontalRectangleWithOffset(e.StaffLines[s],r,GraphicalLayers.Notes)}}drawSymbol(e,r,s,o=1,a=GraphicalLayers.Notes){}get leadSheet(){return this.graphicalMusicSheet.LeadSheet}set leadSheet(e){this.graphicalMusicSheet.LeadSheet=e}drawPage(e){if(this.isVisible(e.PositionAndShape)){for(const r of e.MusicSystems)this.isVisible(r.PositionAndShape)&&this.drawMusicSystem(r);if(e===e.Parent.MusicPages[0])for(const r of e.Labels)r.SVGNode=this.drawLabel(r,GraphicalLayers.Notes);this.drawableBoundingBoxElement&&this.drawBoundingBoxes(e.PositionAndShape,0,this.drawableBoundingBoxElement)}}drawBoundingBoxes(e,r=0,s="all"){const o=e.DataObject.constructor.name;let a=!1;s==="all"&&(a=!0),(a||o===s)&&this.drawBoundingBox(e,void 0,!0,o,r),r++,e.ChildElements.forEach(l=>this.drawBoundingBoxes(l,r,s))}drawBoundingBox(e,r=void 0,s=!1,o=void 0,a=0){let l=new RectangleF2D(e.AbsolutePosition.x+e.BorderMarginLeft,e.AbsolutePosition.y+e.BorderMarginTop,e.BorderMarginRight-e.BorderMarginLeft,e.BorderMarginBottom-e.BorderMarginTop);s&&(this.drawLineAsHorizontalRectangle(new GraphicalLine(new PointF2D(e.AbsolutePosition.x-1,e.AbsolutePosition.y),new PointF2D(e.AbsolutePosition.x+1,e.AbsolutePosition.y),.1,OutlineAndFillStyleEnum.BaseWritingColor,r),a-1),this.drawLineAsVerticalRectangle(new GraphicalLine(new PointF2D(e.AbsolutePosition.x,e.AbsolutePosition.y-1),new PointF2D(e.AbsolutePosition.x,e.AbsolutePosition.y+1),.1,OutlineAndFillStyleEnum.BaseWritingColor,r),a-1)),l=this.applyScreenTransformationForRect(l);const c=this.renderRectangle(l,GraphicalLayers.Background,a,r,.5);if(o){const u=new Label(o),m=new LabelRenderSpecs;m.BitmapWidth=l.width,m.BitmapHeight=l.height,m.FontHeightInPixel=l.height,m.ScreenPosition=new PointF2D(l.x,l.y+12),this.renderLabel(new GraphicalLabel(u,.8,TextAlignmentEnum.CenterCenter,this.rules),a,m)}return c}drawMarkedAreas(e){for(const r of e.GraphicalMarkedAreas)r&&(r.systemRectangle&&this.drawRectangle(r.systemRectangle,GraphicalLayers.Background),r.settings&&(r.settings.SVGNode=this.drawLabel(r.settings,GraphicalLayers.Comment)),r.labelRectangle&&this.drawRectangle(r.labelRectangle,GraphicalLayers.Background),r.label&&(r.label.SVGNode=this.drawLabel(r.label,GraphicalLayers.Comment)))}drawStaffLineSymbols(e){const r=e.ParentStaff.ParentInstrument,s=e.PositionAndShape.AbsolutePosition.x,o=e.PositionAndShape.AbsolutePosition.y+2,a=e.PositionAndShape.BorderRight;r.highlight&&this.drawingParameters.drawHighlights&&this.drawLineAsHorizontalRectangle(new GraphicalLine(new PointF2D(s,o),new PointF2D(s+a,o),4,OutlineAndFillStyleEnum.Highlighted),GraphicalLayers.Highlight);let l=MusicSymbolDrawingStyle.Disabled,c=MusicSymbol.PLAY,u=this.drawingParameters.drawActivitySymbols;switch(this.phonicScoreMode){case PhonicScoreModes.Midi:c=MusicSymbol.PLAY,this.midiPlaybackAvailable&&e.ParentStaff.audible&&(l=MusicSymbolDrawingStyle.PlaybackSymbols);break;case PhonicScoreModes.Following:c=MusicSymbol.MIC,e.ParentStaff.following&&(l=MusicSymbolDrawingStyle.FollowSymbols);break;default:u=!1;break}if(u){const m=new PointF2D(s+a+2,o);this.drawSymbol(c,l,m)}if(this.drawingParameters.drawErrors)for(const m of e.Measures){const g=m.PositionAndShape,d=g.AbsolutePosition.x,y=g.AbsolutePosition.y+2;m.hasError&&this.graphicalMusicSheet.ParentMusicSheet.DrawErroneousMeasures&&this.drawLineAsHorizontalRectangle(new GraphicalLine(new PointF2D(d,y),new PointF2D(d+g.BorderRight,y),4,OutlineAndFillStyleEnum.ErrorUnderlay),GraphicalLayers.MeasureError)}}}class VexFlowTextMeasurer{constructor(e){this.fontSize=20,this.fontSizeStandard=this.fontSize;const r=document.createElement("canvas");this.context=r.getContext("2d"),this.rules=e}computeTextWidthToHeightRatio(e,r,s,o=void 0,a=this.fontSize){return this.context.font=VexFlowConverter.font(a,s,r,this.rules,o),this.context.measureText(e).width/a}setFontSize(e=this.fontSizeStandard){return this.fontSize=e,e}}class AbstractGraphicalExpression extends GraphicalObject{constructor(e,r,s){super(),this.expression=r,this.parentMeasure=s,this.boundingBox=new BoundingBox$1(this,e.PositionAndShape),this.parentStaffLine=e,this.parentStaffLine.AbstractExpressions.push(this),this.rules=e.ParentMusicSystem.rules}get Label(){return this.label}get ParentStaffLine(){return this.parentStaffLine}get SourceExpression(){return this.expression}get Placement(){return this.expression.Placement}}class GraphicalInstantaneousTempoExpression extends AbstractGraphicalExpression{constructor(e,r){super(r.PositionAndShape.Parent.DataObject,e,e.parentMeasure),this.label=r}get GraphicalLabel(){return this.label}updateSkyBottomLine(){}}class GraphicalInstantaneousDynamicExpression extends AbstractGraphicalExpression{constructor(e,r,s){super(r,e,s.parentSourceMeasure),this.mInstantaneousDynamicExpression=e,this.mMeasure=s}updateSkyBottomLine(){const e=this.parentStaffLine.SkyBottomLineCalculator,r=this.PositionAndShape.RelativePosition.x+this.PositionAndShape.BorderMarginLeft,s=this.PositionAndShape.RelativePosition.x+this.PositionAndShape.BorderMarginRight;let o=0;switch(this.Placement){case PlacementEnum.Above:o=this.PositionAndShape.RelativePosition.y+this.PositionAndShape.BorderMarginTop,e.updateSkyLineInRange(r,s,o);break;case PlacementEnum.Below:o=this.PositionAndShape.RelativePosition.y+this.PositionAndShape.BorderMarginBottom,e.updateBottomLineInRange(r,s,o);break;default:loglevelExports.error("Placement for GraphicalInstantaneousDynamicExpression is unknown")}}}class GraphicalContinuousDynamicExpression extends AbstractGraphicalExpression{constructor(e,r,s){super(r,e,s),this.lines=[],this.isSplittedPart=!1,this.notToBeRemoved=!1}get StartMeasure(){return this.startMeasure}set StartMeasure(e){this.startMeasure=e}get EndMeasure(){return this.endMeasure}set EndMeasure(e){this.endMeasure=e}get EndStaffLine(){return this.endMeasure?this.endMeasure.ParentStaffLine:void 0}get IsSplittedPart(){return this.isSplittedPart}set IsSplittedPart(e){this.isSplittedPart=e}get IsVerbal(){return this.ContinuousDynamic.Label&&this.ContinuousDynamic.Label.length>0}get NotToBeRemoved(){return this.notToBeRemoved}set NotToBeRemoved(e){this.notToBeRemoved=e}get Lines(){return this.lines}get ContinuousDynamic(){return this.SourceExpression}updateSkyBottomLine(){var o;const e=this.parentStaffLine.SkyBottomLineCalculator,r=this.IsVerbal?this.label.PositionAndShape.RelativePosition.x+this.label.PositionAndShape.BorderMarginLeft:0,s=this.IsVerbal?this.label.PositionAndShape.RelativePosition.x+this.label.PositionAndShape.BorderMarginRight:0;switch(!this.IsSoftAccent&&!this.IsVerbal&&this.lines.length<2&&loglevelExports.warn("Not enough lines for SkyBottomLine calculation"),this.IsVerbal||this.ContinuousDynamic.DynamicType!==ContDynamicEnum.crescendo&&this.ContinuousDynamic.DynamicType!==ContDynamicEnum.diminuendo&&loglevelExports.warn("GraphicalContinuousDynamicExpression.updateSkyBottomLine(): unhandled continuous dynamic type. start measure: "+((o=this.startMeasure)==null?void 0:o.MeasureNumber)),this.Placement){case PlacementEnum.Above:if(this.IsSoftAccent)e.updateSkyLineWithWedge(this.lines[0].Start,this.lines[0].End),e.updateSkyLineWithWedge(this.lines[2].End,this.lines[2].Start),e.updateSkyLineWithLine(this.lines[0].End,this.lines[2].End,this.lines[0].End.y);else if(!this.IsVerbal)this.ContinuousDynamic.DynamicType===ContDynamicEnum.crescendo?e.updateSkyLineWithWedge(this.lines[0].Start,this.lines[0].End):this.ContinuousDynamic.DynamicType===ContDynamicEnum.diminuendo&&e.updateSkyLineWithWedge(this.lines[0].End,this.lines[0].Start);else{const a=this.label.PositionAndShape.BorderMarginTop+this.label.PositionAndShape.RelativePosition.y;e.updateSkyLineInRange(r,s,a)}break;case PlacementEnum.Below:if(!this.IsVerbal)this.ContinuousDynamic.DynamicType===ContDynamicEnum.crescendo?e.updateBottomLineWithWedge(this.lines[1].Start,this.lines[1].End):this.ContinuousDynamic.DynamicType===ContDynamicEnum.diminuendo&&e.updateBottomLineWithWedge(this.lines[1].End,this.lines[1].Start);else{const a=this.label.PositionAndShape.BorderMarginBottom+this.label.PositionAndShape.RelativePosition.y;e.updateBottomLineInRange(r,s,a)}break;default:loglevelExports.error("Placement for GraphicalContinuousDynamicExpression is unknown")}}createCrescendoLines(e,r,s,o=this.rules.WedgeOpeningLength,a=this.rules.WedgeLineWidth){const l=new PointF2D(e,s),c=new PointF2D(r,s-o/2),u=new PointF2D(r,s+o/2);this.addWedgeLines(l,c,u,a)}createFirstHalfCrescendoLines(e,r,s,o=this.rules.WedgeMeasureEndOpeningLength,a=this.rules.WedgeLineWidth){const l=new PointF2D(e,s),c=new PointF2D(r,s-o/2),u=new PointF2D(r,s+o/2);this.addWedgeLines(l,c,u,a)}createSecondHalfCrescendoLines(e,r,s,o=this.rules.WedgeMeasureBeginOpeningLength,a=this.rules.WedgeOpeningLength,l=this.rules.WedgeLineWidth){const c=new PointF2D(e,s-o/2),u=new PointF2D(e,s+o/2),m=new PointF2D(r,s-a/2),g=new PointF2D(r,s+a/2);this.addDoubleLines(c,m,u,g,l)}recalculateCrescendoLines(e,r,s){const o=Math.abs(this.lines[0].Start.y-this.lines[1].Start.y)>1e-4;this.lines.clear(),o?this.createSecondHalfCrescendoLines(e,r,s):this.isSplittedPart?this.createFirstHalfCrescendoLines(e,r,s):this.createCrescendoLines(e,r,s)}createDiminuendoLines(e,r,s,o=this.rules.WedgeOpeningLength,a=this.rules.WedgeLineWidth){const l=new PointF2D(e,s-o/2),c=new PointF2D(e,s+o/2),u=new PointF2D(r,s);this.addWedgeLines(u,l,c,a)}createFirstHalfDiminuendoLines(e,r,s,o=this.rules.WedgeOpeningLength,a=this.rules.WedgeMeasureEndOpeningLength,l=this.rules.WedgeLineWidth){const c=new PointF2D(e,s-o/2),u=new PointF2D(e,s+o/2),m=new PointF2D(r,s-a/2),g=new PointF2D(r,s+a/2);this.addDoubleLines(c,m,u,g,l)}createSecondHalfDiminuendoLines(e,r,s,o=this.rules.WedgeMeasureBeginOpeningLength,a=this.rules.WedgeLineWidth){const l=new PointF2D(e,s-o/2),c=new PointF2D(e,s+o/2),u=new PointF2D(r,s);this.addWedgeLines(u,l,c,a)}recalculateDiminuendoLines(e,r,s){const o=Math.abs(this.lines[0].End.y-this.lines[1].End.y)>1e-4;this.lines.clear(),o?this.createFirstHalfDiminuendoLines(e,r,s):this.isSplittedPart?this.createSecondHalfDiminuendoLines(e,r,s):this.createDiminuendoLines(e,r,s)}createFirstHalfLines(e,r,s,o=this.rules.WedgeOpeningLength,a=this.rules.WedgeMeasureEndOpeningLength,l=this.rules.WedgeLineWidth){this.ContinuousDynamic.DynamicType===ContDynamicEnum.crescendo?this.createFirstHalfCrescendoLines(e,r,s,a,l):this.ContinuousDynamic.DynamicType===ContDynamicEnum.diminuendo&&this.createFirstHalfDiminuendoLines(e,r,s,o,a,l)}createSecondHalfLines(e,r,s,o=this.rules.WedgeMeasureBeginOpeningLength,a=this.rules.WedgeOpeningLength,l=this.rules.WedgeLineWidth){this.ContinuousDynamic.DynamicType===ContDynamicEnum.crescendo?this.createSecondHalfCrescendoLines(e,r,s,o,a,l):this.ContinuousDynamic.DynamicType===ContDynamicEnum.diminuendo&&this.createSecondHalfDiminuendoLines(e,r,s,o,l)}createLines(e,r,s,o=this.rules.WedgeOpeningLength,a=this.rules.WedgeLineWidth){this.ContinuousDynamic.DynamicType===ContDynamicEnum.crescendo?this.createCrescendoLines(e,r,s,o,a):this.ContinuousDynamic.DynamicType===ContDynamicEnum.diminuendo&&this.createDiminuendoLines(e,r,s,o,a)}calcPsi(){if(this.IsVerbal){this.PositionAndShape.calculateBoundingBox();return}this.PositionAndShape.RelativePosition=this.lines[0].Start,this.PositionAndShape.BorderMarginTop=this.lines[0].End.y-this.lines[0].Start.y,this.PositionAndShape.BorderMarginBottom=this.lines[1].End.y-this.lines[1].Start.y,this.PositionAndShape.Center.y=(this.PositionAndShape.BorderMarginTop+this.PositionAndShape.BorderMarginBottom)/2,this.IsSoftAccent?(this.PositionAndShape.BorderMarginLeft=0,this.PositionAndShape.BorderMarginRight=this.lines[3].Start.x-this.lines[0].Start.x):this.ContinuousDynamic.DynamicType===ContDynamicEnum.crescendo?(this.PositionAndShape.BorderMarginLeft=0,this.PositionAndShape.BorderMarginRight=this.lines[0].End.x-this.lines[0].Start.x):(this.PositionAndShape.BorderMarginLeft=this.lines[0].End.x-this.lines[0].Start.x,this.PositionAndShape.BorderMarginRight=0)}cleanUp(){this.lines.clear()}shiftYPosition(e){this.IsVerbal?(this.PositionAndShape.RelativePosition.y+=e,this.PositionAndShape.calculateBoundingBox()):(this.lines[0].Start.y+=e,this.lines[0].End.y+=e,this.lines[1].End.y+=e)}squeeze(e){this.IsVerbal||Math.abs(this.lines[0].End.x-this.lines[0].Start.x)0?this.lines[0].Start.x+=e:(this.lines[0].End.x+=e,this.lines[1].End.x+=e):e<0?this.lines[0].Start.x+=e:(this.lines[0].End.x+=e,this.lines[1].End.x+=e),this.calcPsi())}addWedgeLines(e,r,s,o){const a=new GraphicalLine(e,r,o),l=new GraphicalLine(e,s,o);this.rules.DefaultColorMusic&&(a.colorHex=this.rules.DefaultColorMusic,l.colorHex=this.rules.DefaultColorMusic),this.lines.push(a),this.lines.push(l)}addDoubleLines(e,r,s,o,a){const l=new GraphicalLine(e,r,a),c=new GraphicalLine(s,o,a);this.rules.DefaultColorMusic&&(l.colorHex=this.rules.DefaultColorMusic,c.colorHex=this.rules.DefaultColorMusic),this.lines.push(l),this.lines.push(c)}}class DrawingParameters{constructor(e=DrawingParametersEnum.default,r){this.drawCursors=!0,this.drawTitle=!0,this.drawSubtitle=!0,this.drawLyricist=!0,this.drawComposer=!0,this.drawCopyright=!1,this.drawCredits=!0,this.drawPartNames=!0,this.fingeringPosition=PlacementEnum.Left,this.drawHiddenNotes=!1,this.rules=r,this.rules||(this.rules=new EngravingRules),this.DrawingParametersEnum=e}set DrawingParametersEnum(e){switch(this.drawingParametersEnum=e,e){case DrawingParametersEnum.allon:this.setForAllOn();break;case DrawingParametersEnum.thumbnail:this.setForThumbnail();break;case DrawingParametersEnum.leadsheet:this.setForLeadsheet();break;case DrawingParametersEnum.compact:this.setForCompactMode();break;case DrawingParametersEnum.compacttight:this.setForCompactTightMode();break;case DrawingParametersEnum.default:default:this.setForDefault()}}get DrawingParametersEnum(){return this.drawingParametersEnum}setForAllOn(){this.drawHighlights=!0,this.drawErrors=!0,this.drawSelectionStartSymbol=!0,this.drawSelectionEndSymbol=!0,this.drawCursors=!0,this.drawActivitySymbols=!0,this.drawScrollIndicator=!0,this.drawAnnotations=!0,this.drawComments=!0,this.drawMarkedAreas=!0,this.DrawTitle=!0,this.DrawSubtitle=!0,this.DrawComposer=!0,this.DrawLyricist=!0,this.drawCredits=!0,this.DrawPartNames=!0,this.drawHiddenNotes=!0,this.rules.CompactMode=!1}setForDefault(){this.rules.loadDefaultValues(),this.setForAllOn(),this.drawHiddenNotes=!1}setForThumbnail(){this.drawHighlights=!1,this.drawErrors=!1,this.drawSelectionStartSymbol=!1,this.drawSelectionStartSymbol=!1,this.drawCursors=!1,this.drawActivitySymbols=!1,this.drawScrollIndicator=!1,this.drawAnnotations=!0,this.drawComments=!0,this.drawMarkedAreas=!0,this.drawHiddenNotes=!1}setForCompactMode(){this.rules.CompactMode=!0,this.DrawCredits=!1,this.drawHiddenNotes=!1}setForCompactTightMode(){this.setForCompactMode(),this.DrawPartNames=!1,this.rules.VoiceSpacingMultiplierVexflow=.65,this.rules.VoiceSpacingAddendVexflow=2,this.rules.MinSkyBottomDistBetweenStaves=1,this.rules.MinSkyBottomDistBetweenSystems=1,this.rules.BetweenStaffDistance=2.5,this.rules.StaffDistance=3.5,this.rules.MinimumDistanceBetweenSystems=1,this.rules.PageBottomMargin=0,this.rules.PageLeftMargin=2,this.rules.PageRightMargin=2}setForLeadsheet(){this.drawHighlights=!1,this.drawErrors=!1,this.drawSelectionStartSymbol=!0,this.drawSelectionEndSymbol=!0,this.drawCursors=!0,this.drawActivitySymbols=!1,this.drawScrollIndicator=!0,this.drawAnnotations=!0,this.drawComments=!0,this.drawMarkedAreas=!0}get DrawCredits(){return this.drawCredits}set DrawCredits(e){this.drawCredits=e,this.DrawComposer=e,this.DrawTitle=e,this.DrawSubtitle=e,this.DrawLyricist=e,this.DrawCopyright=e}get DrawTitle(){return this.drawTitle}set DrawTitle(e){this.drawTitle=e,this.rules.RenderTitle=e,e||(this.DrawSubtitle=!1)}get DrawSubtitle(){return this.drawSubtitle}set DrawSubtitle(e){this.drawSubtitle=e,this.rules.RenderSubtitle=e,e&&(this.DrawTitle=!0)}get DrawComposer(){return this.drawComposer}set DrawComposer(e){this.drawComposer=e,this.rules.RenderComposer=e}get DrawLyricist(){return this.drawLyricist}set DrawLyricist(e){this.drawLyricist=e,this.rules.RenderLyricist=e}get DrawCopyright(){return this.drawCopyright}set DrawCopyright(e){this.drawCopyright=e,this.rules.RenderCopyright=e}get DrawPartNames(){return this.drawPartNames}set DrawPartNames(e){this.drawPartNames=e,this.rules.RenderPartNames=e,this.rules.RenderPartNames||(this.rules.RenderPartAbbreviations=!1)}get FingeringPosition(){return this.fingeringPosition}set FingeringPosition(e){this.fingeringPosition=e,this.rules.FingeringPosition=e}get Rules(){return this.rules}set Rules(e){this.rules=e}}class GraphicalUnknownExpression extends AbstractGraphicalExpression{constructor(e,r,s,o,a=void 0){super(e,new AbstractExpression(s),o),this.label=r,this.sourceMultiExpression=a}updateSkyBottomLine(){const e=this.parentStaffLine.SkyBottomLineCalculator,r=this.label.PositionAndShape.RelativePosition.x+this.label.PositionAndShape.BorderMarginLeft,s=this.label.PositionAndShape.RelativePosition.x+this.label.PositionAndShape.BorderMarginRight;switch(this.Placement){case PlacementEnum.Above:const o=this.label.PositionAndShape.BorderMarginTop+this.label.PositionAndShape.RelativePosition.y;e.updateSkyLineInRange(r,s,o);break;case PlacementEnum.Below:const a=this.label.PositionAndShape.BorderMarginBottom+this.label.PositionAndShape.RelativePosition.y;e.updateBottomLineInRange(r,s,a);break;default:loglevelExports.error("Placement for GraphicalUnknownExpression is unknown")}}}const VF$c=Vex.Flow;class VexFlowBackend{getInnerElement(){return this.inner}getCanvas(){return this.canvas}getRenderElement(){let e=this.canvas;return this.getVexflowBackendType()===VF$c.Renderer.Backends.CANVAS&&(e=this.inner),e}getRenderer(){return this.renderer}removeAllChildrenFromContainer(e){for(;e.children.length!==0;)e.removeChild(e.children.item(0))}removeFromContainer(e){const r=this.getRenderElement();for(let s=0;s \r<`)),a.download="opensheetmusicdisplay_download.svg",a.innerHTML=window.location.href+"/download",document.body.appendChild(a)}}const unitInPixels=10;class VexFlowMusicSheetDrawer extends MusicSheetDrawer{constructor(e=new DrawingParameters){super(new VexFlowTextMeasurer(e.Rules),e),this.backends=[],this.zoom=1,this.pageIdx=0,this.getDotId=(r,s)=>s?String(r.Label.PositionAndShape.RelativePosition[s]):String(r.Label.PositionAndShape.RelativePosition.x)+String(r.Label.PositionAndShape.RelativePosition.y),this.hasDot=(r,s,o,a)=>{const l=s||Object.values(a);for(const c of l){if(o)return r.x===c.x&&r.y===c.y;if(r.x===c.x)return!0}return!1}}get Zoom(){return this.zoom}get Backends(){return this.backends}initializeBackendForPage(e){this.backend=this.backends[e.PageNumber-1]}drawSheet(e){var r,s,o;this.rules.DefaultVexFlowNoteFont==="gonville"&&(Vex.Flow.DEFAULT_FONT_STACK=[(r=Vex.Flow.Fonts)==null?void 0:r.Gonville,(s=Vex.Flow.Fonts)==null?void 0:s.Bravura,(o=Vex.Flow.Fonts)==null?void 0:o.Custom]),Vex.Flow.STAVE_LINE_THICKNESS=this.rules.StaffLineWidth*unitInPixels,Vex.Flow.STEM_WIDTH=this.rules.StemWidth*unitInPixels,Vex.Flow.DEFAULT_NOTATION_FONT_SCALE=this.rules.VexFlowDefaultNotationFontScale,Vex.Flow.DEFAULT_TAB_FONT_SCALE=this.rules.VexFlowDefaultTabFontScale,this.pageIdx=0;for(const a of e.MusicPages){if(a.PageNumber>this.rules.MaxPageToDrawNumber)break;const l=this.backends[this.pageIdx];l.graphicalMusicPage=a,l.scale(this.zoom),this.pageIdx+=1}this.pageIdx=0,this.backend=this.backends[0],super.drawSheet(e)}drawPage(e){e&&(this.backend=this.backends[e.PageNumber-1],super.drawPage(e),this.pageIdx+=1)}clear(){for(const e of this.backends)e.clear()}setZoom(e){this.zoom=e}calculatePixelDistance(e){return e*unitInPixels}drawStaffLine(e){const r=this.backend.getContext().openGroup();r&&r.classList.add("staffline"),super.drawStaffLine(e);const s=e.PositionAndShape.AbsolutePosition;this.rules.RenderSlurs&&this.drawSlurs(e,s),this.backend.getContext().closeGroup(),this.rules.RenderGlissandi&&this.drawGlissandi(e,s)}drawSlurs(e,r){var o,a,l,c;const s=(o=window.GYM)==null?void 0:o.vfcurveItem;for(let u=0;u(d.index?d.index===u:!0)&&d.MeasureNumberXML==m.staffEntries[m.staffEntries.length-1].parentMeasure.MeasureNumber);g&&(m.bezierEndControlPt.y+=(a=g==null?void 0:g.bezierEndControlPt)!=null&&a.y?g.bezierEndControlPt.y:0,m.bezierEndPt.y+=(l=g==null?void 0:g.bezierEndPt)!=null&&l.y?g.bezierEndPt.y:0,m.bezierStartControlPt.y+=(c=g==null?void 0:g.bezierStartControlPt)!=null&&c.y?g.bezierStartControlPt.y:0)}catch(g){console.log(g)}this.drawSlur(m,r)}}}drawGlissandi(e,r){for(const s of e.GraphicalGlissandi)this.drawGlissando(s,r)}drawGlissando(e,r){if(e.StaffLine.ParentStaff.isTab||e.calculateLine(this.rules),e.Line){const s=new PointF2D(e.Line.Start.x+r.x,e.Line.Start.y),o=new PointF2D(e.Line.End.x+r.x,e.Line.End.y);this.drawLine(s,o,e.Color,e.Width)}else{const s=e.vfTie;if(s){const o=this.backend.getContext();s.setContext(o),s.draw()}}}drawSlur(e,r){const s=[];let o,a,l,c;this.rules.DYMusicScoreType==="jianpu"?((e.placement>0||e.bezierStartPt.y>0)&&(e.bezierStartPt.y=-.8,e.bezierStartControlPt.y=-2.5),o=new PointF2D(e.bezierStartPt.x+r.x,e.bezierStartPt.y+r.y),a=new PointF2D(e.bezierStartControlPt.x+r.x,e.bezierStartControlPt.y+r.y),l=new PointF2D(e.bezierEndControlPt.x+r.x,e.bezierStartControlPt.y+r.y),c=new PointF2D(e.bezierEndPt.x+r.x,e.bezierStartPt.y+r.y)):(o=new PointF2D(e.bezierStartPt.x+r.x,e.bezierStartPt.y+r.y),a=new PointF2D(e.bezierStartControlPt.x+r.x,e.bezierStartControlPt.y+r.y),l=new PointF2D(e.bezierEndControlPt.x+r.x,e.bezierEndControlPt.y+r.y),c=new PointF2D(e.bezierEndPt.x+r.x,e.bezierEndPt.y+r.y)),s.push(this.applyScreenTransformation(o)),s.push(this.applyScreenTransformation(a)),s.push(this.applyScreenTransformation(l)),s.push(this.applyScreenTransformation(c)),e.placement===PlacementEnum.Above?(o.y-=.05,a.y-=.3,l.y-=.3,c.y-=.05):(o.y+=.05,a.y+=.3,l.y+=.3,c.y+=.05),s.push(this.applyScreenTransformation(o)),s.push(this.applyScreenTransformation(a)),s.push(this.applyScreenTransformation(l)),s.push(this.applyScreenTransformation(c)),e.SVGElement=this.backend.renderCurve(s)}drawMeasure(e){e.setAbsoluteCoordinates(e.PositionAndShape.AbsolutePosition.x*unitInPixels,e.PositionAndShape.AbsolutePosition.y*unitInPixels);const r=this.backend.getContext();try{e.draw(r)}catch(o){loglevelExports.warn("VexFlowMusicSheetDrawer.drawMeasure",o)}let s=0;for(const o of e.staffEntries)this.drawStaffEntry(o),s=this.drawBuzzRolls(o,s)}drawBuzzRolls(e,r){var s;for(const o of e.graphicalVoiceEntries)for(const a of o.notes)if((s=a.sourceNote.TremoloInfo)!=null&&s.tremoloUnmeasured){const l=this.rules.TremoloBuzzRollThickness,c=.9,u=.5,m=a;let g,d;const y=m.vfnote[0].getStemDirection();let A;if(this.backend instanceof SvgVexFlowBackend&&(A=m.getStemSVG()),(A==null?void 0:A.getBbox)!==void 0){const I=A.getBBox();g=new PointF2D(I.x/10,I.y/10),d=I.height/10}else d=m.vfnote[0].getStemLength()/10,g=new PointF2D(m.vfnote[0].getStem().x_begin/10,m.vfnote[0].getStem().y_top/10),y===1&&(g.y-=d);let S=g.y+d/3;m.vfnote[0].getBeamCount()>1&&(S=g.y+d/2,y===-1&&(S-=u+.2));const E=g.x-.5,x=S,C=[],P=[new PointF2D(0,-l),new PointF2D(c-l,0),new PointF2D(-c+l,-u),new PointF2D(0,-l),new PointF2D(c,0),new PointF2D(0,l),new PointF2D(-c+l,0),new PointF2D(c-l,u),new PointF2D(0,l),new PointF2D(-c,0)];let k=new PointF2D(E,x);C.push(k);for(const I of P)k=C.last(),C.push(new PointF2D(k.x+I.x,k.y-I.y));this.DrawPath(C,m.ParentMusicPage,!0,`buzzRoll${r}`),r++}return r}drawLine(e,r,s="#000000FF",o=.2){return e=this.applyScreenTransformation(e),r=this.applyScreenTransformation(r),this.backend.renderLine(e,r,s,o*unitInPixels)}DrawOverlayLine(e,r,s,o="#FF0000FF",a=.2,l){if(!s.PageNumber||s.PageNumber>this.backends.length||s.PageNumber<1){console.log("VexFlowMusicSheetDrawer.drawOverlayLine: invalid page number / music page number doesn't correspond to an existing backend.");return}const c=s.PageNumber-1,u=this.backends[c];return e=this.applyScreenTransformation(e),r=this.applyScreenTransformation(r),l||(l=`overlayLine ${e.x}/${e.y}`),u.renderLine(e,r,o,a*unitInPixels,l)}DrawPath(e,r,s=!0,o){const a=r.PageNumber-1,l=this.backends[a],c=[];for(const u of e)c.push(this.applyScreenTransformation(u));return l.renderPath(c,s,o)}drawSkyLine(e){const r=e.PositionAndShape.AbsolutePosition,s=e.PositionAndShape.Size.width;this.drawSampledLine(e.SkyLine,r,s)}drawBottomLine(e){const r=new PointF2D(e.PositionAndShape.AbsolutePosition.x,e.PositionAndShape.AbsolutePosition.y),s=e.PositionAndShape.Size.width;this.drawSampledLine(e.BottomLine,r,s,"#0000FFFF")}drawSampledLine(e,r,s,o="#FF0000FF"){const a=[];let l=0;for(let u=0;u0){const u=this.rules.SamplingUnit;let m=new PointF2D(c.x,c.y),g=new PointF2D(a[0]/u+c.x,c.y);this.drawLine(m,g,o);let d,y;e[0]>=0&&(d=new PointF2D(a[0]/u+c.x,c.y),y=new PointF2D(a[0]/u+c.x,c.y+e[a[0]]),this.drawLine(d,y,o));for(let A=1;A0)for(const r of e.FingeringEntries)r.SVGNode=this.drawLabel(r,GraphicalLayers.Notes);if(e.graphicalChordContainers!==void 0&&e.graphicalChordContainers.length>0)for(const r of e.graphicalChordContainers){const s=r.GraphicalLabel;s.SVGNode=this.drawLabel(s,GraphicalLayers.Notes)}this.rules.RenderLyrics&&e.LyricsEntries.length>0&&this.drawLyrics(e.LyricsEntries,GraphicalLayers.Notes)}drawLyrics(e,r){e.forEach(s=>{const o=s.GraphicalLabel;o.Label.colorDefault=this.rules.DefaultColorLyrics,o.SVGNode=this.drawLabel(o,r)})}drawInstrumentBrace(e,r){e.draw(this.backend.getContext())}drawGroupBracket(e,r){e.draw(this.backend.getContext())}drawOctaveShifts(e){for(const r of e.OctaveShifts)if(r){const s=r,o=this.backend.getContext(),a=s.getTextBracket();this.rules.DefaultColorMusic&&(a.render_options.color=this.rules.DefaultColorMusic),a.setContext(o);try{a.draw()}catch(l){loglevelExports.warn(l)}}}drawPedals(e){for(const r of e.Pedals)if(r){const s=r,o=this.backend.getContext(),a=s.getPedalMarking();a.render_options.color=this.rules.DefaultColorMusic,a.setContext(o),a.draw()}}drawWavyLines(e){for(const r of e.WavyLines)if(r){const s=r,o=this.backend.getContext(),a=s.getVibratoBracket();a.setContext(o),a.draw()}}getMaxExpressionsYAndDots(e){var u,m;const r=[];let s=0;for(const g of e.measures)r.push(g.measureNumber);const o={},a={},l={};for(const g of e.AbstractExpressions)if(g instanceof GraphicalUnknownExpression&&r.includes(g.parentMeasure.MeasureNumber)){const d=this.getDotId(g),y=this.getDotId(g,"x");a[d]||(a[d]=[]),l[y]||(l[y]=[]),this.hasDot(g.Label.PositionAndShape.RelativePosition,a[d],!0)||(a[d].push(g.Label.PositionAndShape.RelativePosition),l[y].push(g.Label.PositionAndShape.RelativePosition)),o[d]=g.Label.PositionAndShape.RelativePosition}let c=0;for(const g of e.AbstractExpressions){const d=(u=g.parentMeasure)==null?void 0:u.MeasureNumber;if(g instanceof GraphicalUnknownExpression&&r.includes(d)){const y=(m=g.parentMeasure.verticalMeasureList[0])==null?void 0:m.stave,A=(y==null?void 0:y.end_x)-(y==null?void 0:y.x),b=this.getDotId(g,"x");if((l[b]||[]).length===1&&c!==d){const S=g.Label.PositionAndShape.AbsolutePosition.y;s=s===0?S:Math.min(s,S)}(l[b]||[]).length!==1&&A/10Number.EPSILON){let o=Math.min(...e.Lines.map(l=>l.Start.x)),a=Math.min(...e.Lines.map(l=>l.Start.y));e.Lines[0].Start.x=o,e.Lines[1].Start.x=o,e.Lines[0].Start.y=a+this.rules.WedgeOpeningLength/2,e.Lines[1].Start.y=a+this.rules.WedgeOpeningLength*2,e.Lines[0].End.y+=this.rules.WedgeOpeningLength/2,e.Lines[1].End.y+=this.rules.WedgeOpeningLength}}catch(o){}const s=this.backend.getContext();s.openGroup("lineGroup");for(const o of e.Lines){const a=new PointF2D(e.ParentStaffLine.PositionAndShape.AbsolutePosition.x+o.Start.x,e.ParentStaffLine.PositionAndShape.AbsolutePosition.y+o.Start.y),l=new PointF2D(e.ParentStaffLine.PositionAndShape.AbsolutePosition.x+o.End.x,e.ParentStaffLine.PositionAndShape.AbsolutePosition.y+o.End.y);this.drawLine(a,l,(r=o.colorHex)!=null?r:"#000000",o.Width)}s.closeGroup()}}renderLabel(e,r,s){return this._renderLabel(e,s)}_renderLabel(e,r){var m,g;if(!e.Label.print)return;const s=e.Label.fontHeight*unitInPixels,{font:o}=e.Label;let a;this.rules.ColoringEnabled&&(a=e.Label.colorDefault,e.ColorXML&&(a=e.ColorXML),e.Label.color&&(a=e.Label.color.toString()),a||(a=this.rules.DefaultColorLabel));let{fontStyle:l,fontFamily:c}=e.Label;l||(l=this.rules.DefaultFontStyle),c||(c=this.rules.DefaultFontFamily);let u;for(let d=0;d<((m=e.TextLines)==null?void 0:m.length);d++){const y=e.TextLines[d],A=this.calculatePixelDistance(y.xOffset),b=new PointF2D(r.ScreenPosition.x+A,r.ScreenPosition.y),S=this.backend.renderText(s,l,o,y.text,r.FontHeightInPixel,b,a,e.Label.fontFamily,(g=e.Label)==null?void 0:g.lyricExtendNoteId);u?u.appendChild(S):u=S,r.ScreenPosition.y=r.ScreenPosition.y+r.FontHeightInPixel,e.TextLines.length>1&&(r.ScreenPosition.y+=this.rules.SpacingBetweenTextLines)}return u}renderRectangle(e,r,s,o,a){return this.backend.renderRectangle(e,s,o,a)}applyScreenTransformation(e){return new PointF2D(e.x*unitInPixels,e.y*unitInPixels)}applyScreenTransformationForRect(e){return new RectangleF2D(e.x*unitInPixels,e.y*unitInPixels,e.width*unitInPixels,e.height*unitInPixels)}}class TabNote extends Note$1{constructor(e,r,s,o,a,l,c,u){super(e,r,s,o,a),this.stringNumberTab=l,this.fretNumber=c,this.bendArray=u}get StringNumberTab(){return this.stringNumberTab}get FretNumber(){return this.fretNumber}get BendArray(){return this.bendArray}hasTabEffects(){var e;return((e=this.bendArray)==null?void 0:e.length)>0}}const VF$a=Vex.Flow,_VexFlowConverter=class{static durations(i,e){const r=[],s=i.clone();for(;s.RealValue>1e-4;){const o=s.RealValue;if(o>=2)r.push("1/2"),s.Sub(new Fraction$1(2,1));else if(o>=1)r.push("w"),s.Sub(new Fraction$1(1,1));else if(o<1&&o>=.5){if(e&&o>.5)return["w"];r.push("h"),s.Sub(new Fraction$1(1,2))}else if(o<.5&&o>=.25){if(e&&o>.25)return["h"];r.push("q"),s.Sub(new Fraction$1(1,4))}else if(o<.25&&o>=.125){if(e&&o>.125)return["q"];r.push("8"),s.Sub(new Fraction$1(1,8))}else if(o<.125&&o>=.0625){if(e&&o>.0625)return["8"];r.push("16"),s.Sub(new Fraction$1(1,16))}else if(o<.0625&&o>=.03125){if(e&&o>.03125)return["16"];r.push("32"),s.Sub(new Fraction$1(1,32))}else if(o<.03125&&o>=.015625){if(e&&o>.015625)return["32"];r.push("64"),s.Sub(new Fraction$1(1,64))}else{if(e)return["64"];r.push("128"),s.Sub(new Fraction$1(1,128))}}return r}static pitch(i,e,r,s=void 0,o=void 0){let a=o;o===void 0&&(a=3),e&&o===void 0&&(a=0,r.ClefType===ClefEnum.F&&(a=2),r.ClefType===ClefEnum.C&&(a=2));const l=NoteEnum[i.FundamentalNote].toLowerCase(),c=Pitch.accidentalVexflow(i.Accidental),u=i.Octave-r.OctaveOffset+a;let m="";return s&&(m=this.NoteHeadCode(s)),[l+"n/"+u+m,c,r]}static restToNotePitch(i,e){let r=i.Octave;switch(e){case ClefEnum.C:case ClefEnum.F:{r+=2;break}case ClefEnum.G:}return new Pitch(i.FundamentalNote,r,AccidentalEnum.NONE)}static NoteHeadCode(i){const e="/",r=i.Filled?"2":"1";switch(i.Shape){case NoteHeadShape.NORMAL:return"";case NoteHeadShape.DIAMOND:return e+"D"+r;case NoteHeadShape.TRIANGLE:return e+"T"+r;case NoteHeadShape.TRIANGLE_INVERTED:return e+"TI";case NoteHeadShape.X:return e+"X"+r;case NoteHeadShape.CIRCLEX:return e+"X3";case NoteHeadShape.RECTANGLE:return e+"R"+r;case NoteHeadShape.SQUARE:return e+"S"+r;case NoteHeadShape.SLASH:return"";default:return""}}static GhostNotes(i){const e=[],r=_VexFlowConverter.durations(i,!1);for(const s of r)e.push(new VF$a.GhostNote({duration:s}));return e}static StaveNote(i){var M,T,F,D,N,O,B,V,R,Q,_,K,G,U,$,q,W,xe,ue;i.sortForVexflow();const e=i.notes,r=i.parentStaffEntry.parentMeasure.parentSourceMeasure.Rules,s=e[0];let o=[],a;const l=[],c=s.graphicalNoteLength,u=s.sourceNote.NoteTuplet!==void 0;let m=_VexFlowConverter.durations(c,u)[0];_VexFlowConverter.idx+=1,s.sourceNote.TypeLength!==void 0&&s.sourceNote.TypeLength!==c&&s.sourceNote.TypeLength.RealValue!==0&&(m=_VexFlowConverter.durations(s.sourceNote.TypeLength,u)[0],s.numberOfDots=s.sourceNote.DotsXml);let g,d=s.numberOfDots,y=!1,A=0,b=!1,S;for(const Y of e){if(d=1&&Ie.length-1>=ae+1&&(De=(N=(D=Ie[ae-1])==null?void 0:D.graphicalVoiceEntries[0])==null?void 0:N.parentVoiceEntry,ie=(B=(O=Ie[ae+1])==null?void 0:O.graphicalVoiceEntries[0])==null?void 0:B.parentVoiceEntry,De&&ie)){const H=De.Notes[0],ve=ie.Notes[0];if((V=H.NoteBeam)!=null&&V.Notes.includes(ve)&&ve.ParentStaffEntry.ParentStaff.StafflineCount!==1){const pe=De.Notes.last().Pitch,ee=Y.Clef(),ne=_VexFlowConverter.pitch(_VexFlowConverter.restToNotePitch(pe.getTransposedPitch(-2),ee.ClefType),!1,ee);pe.FundamentalNote===4&&(o=[ne[0]])}}}}if((Y.sourceNote.IsWholeMeasureRest||c.RealValue===Y.sourceNote.SourceMeasure.ActiveTimeSignature.RealValue)&&(o=r.DYMusicScoreType==="staff"?["d/5"]:["R/5"],m="w",d=0,y=!0,A=r.WholeRestXShiftVexflow*unitInPixels),[...Y.sourceNote.ParentStaff.Voices].filter(Ee=>(Ee==null?void 0:Ee.VoiceId)!=1).length){const Ee=Y.parentVoiceEntry.parentStaffEntry.graphicalVoiceEntries,Ie=Y.parentVoiceEntry.parentVoiceEntry.ParentVoice.VoiceId;let De,ie;for(const ae of Ee)for(const H of ae.notes){if(H===Y||H.sourceNote.isRest()||!H.sourceNote.PrintObject){Y.lineShift=-2;continue}const ve=H.parentVoiceEntry.parentVoiceEntry.WantedStemDirection,pe=Ie===1||Ie===5,ee=pe?1:-1,me=H.sourceNote.Pitch.getHalfTone(),Be=ee===1&&me>De,oe=ee===-1&&me0){let ae=3;const H=Y.Clef();switch(H.ClefType){case ClefEnum.F:ae=5;break;case ClefEnum.C:ae=4;break}S=Pitch.fromHalftone(De),o=[_VexFlowConverter.pitch(S,!0,H,void 0,ae)[0]]}}break}Y.sourceNote.Notehead&&(Y.sourceNote.Notehead.Shape,NoteHeadShape.SLASH);const J=Y.vfpitch;if((Q=(R=J[2])==null?void 0:R.Parent)!=null&&Q.Instructions)for(let ce=0,ge=J[2].Parent.Instructions.length;ce0&&r.RenderLyrics&&r.LyricsUseXPaddingForLongLyrics){const ge=i.parentStaffEntry.parentMeasure,Ee=ge.staffEntries.indexOf(i.parentStaffEntry),Ie=[];for(let ae=Ee+1;ae.25){J=!1;break}if(ae.LyricsEntries.length>0)break;const ve=Fraction$1.minus(H,ie);ce+=ve.RealValue*32,ie=H}}if(r.RenderLyrics&&r.LyricsUseXPaddingForLongLyrics&&Y.length>0&&J){let ge=!1,Ee=0;for(const De of e)if(De.sourceNote.Length.RealValue<=.125){ge=!0;break}let Ie=!1;for(const De of Y){const ie=r.LyricsXPaddingWidthThreshold;let ae=De.GraphicalLabel.PositionAndShape.Size.width;if(De.hasDashFromLyricWord()&&(ae+=.5),ae>ie){Ee+=ae-ie;const H=i.parentStaffEntry,ve=H.parentMeasure.staffEntries,ee=ve.indexOf(H)===ve.length-1;ee&&(ce+=r.LyricsXPaddingReductionForLastNoteInMeasure),ge||(ce+=r.LyricsXPaddingReductionForLongNotes),(r.LyricsXPaddingForLastNoteInMeasure||!ee)&&ae>ie+ce&&(Ie=!0,Ee-=ce);break}}Ie&&(E.paddingRight=10*r.LyricsXPaddingFactorForLongLyrics*Ee)}}const P=i.notes[0].lineShift;if(P!==0&&(E.getKeyProps()[0].line+=P),e.length>1)for(let Y=0;Y1&&i.notes[0].sourceNote.ParentVoiceEntry.ParentVoice.VoiceId==1&&(E.getKeyProps()[0].line=4.5);const I=(q=window.GYM)==null?void 0:q.customBassDrum;if(I&&E.isRest()&&(E.getDuration()==="q"&&(E.getKeyProps()[0].line=I),E.getDuration()==="h"&&(E.getKeyProps()[0].line=I-1)),E.getKeyProps().forEach(({line:Y},J)=>i.notes[J].staffLine=Y),(r.LedgerLineWidth||r.LedgerLineStrokeStyle)&&(E.ledgerLineStyle||(E.ledgerLineStyle={}),r.LedgerLineWidth&&(E.ledgerLineStyle.lineWidth=r.LedgerLineWidth),r.LedgerLineStrokeStyle&&(E.ledgerLineStyle.strokeStyle=r.LedgerLineStrokeStyle)),r.ColoringEnabled){const Y=r.DefaultColorStem;let J=i.parentVoiceEntry.StemColor;!J&&Y&&(J=Y);const ce={fillStyle:J,strokeStyle:J};J&&(E.setStemStyle(ce),E.flag&&r.ColorFlags&&E.setFlagStyle(ce))}if(E.x_shift=A,i.parentVoiceEntry.IsGrace&&i.notes[0].sourceNote.NoteBeam&&(i.parentVoiceEntry.WantedStemDirection=i.notes[0].sourceNote.NoteBeam.Notes[0].ParentVoiceEntry.WantedStemDirection),i.parentVoiceEntry){let Y=i.parentVoiceEntry.WantedStemDirection;const J=((W=window.GYM)==null?void 0:W.stemDirectionNote)||[],ce=J==null?void 0:J.find(ge=>ge.id===i.notes[0].sourceNote.NoteToGraphicalNoteObjectId);switch(ce&&typeof(ce==null?void 0:ce.direction)=="number"&&(Y=ce.direction),Y){case StemDirectionType.Up:E.setStemDirection(VF$a.Stem.UP),i.parentVoiceEntry.StemDirection=StemDirectionType.Up;break;case StemDirectionType.Down:E.setStemDirection(VF$a.Stem.DOWN),i.parentVoiceEntry.StemDirection=StemDirectionType.Down;break}}for(let Y=0,J=e.length;Y0&&ge==="single"){const Ee=new VF$a.Tremolo(ce);Ee.extra_stroke_scale=r.TremoloStrokeScale,Ee.y_spacing_scale=r.TremoloYSpacingScale,E&&E.duration==="w"&&E.stem.setExtension(-9),E.addModifier(Y,Ee)}if(ce>0&&ge==="start"&&this.noteTremoloList.push(E),ce>0&&ge==="stop"){if(this.noteTremoloList.push(E),this.noteTremoloList.filter(De=>De.duration==="w").length===this.noteTremoloList.length)try{this.noteTremoloList[0].keyProps&&this.noteTremoloList[1].keyProps&&((xe=(this.noteTremoloList[0].keyProps[0].line>this.noteTremoloList[1].keyProps[0].line?this.noteTremoloList[1]:this.noteTremoloList[0]).stem)==null||xe.setResetHeight(30))}catch(De){console.error("设置都是全音符,stem的高度失败")}const Ie=new VF$a.Tremolo(ce,[...this.noteTremoloList]);Ie.extra_stroke_scale=1.2,Ie.y_spacing_scale=1.2,Ie.x_shift=-30,E.addModifier(Y,Ie),this.noteTremoloList=[]}this.glissandoList.length&&(E.setVibrato(this.glissandoList[0].vfnote[0]),this.glissandoList=[]),e[Y].sourceNote.glissandoType==="start"&&this.glissandoList.push(e[Y])}if(this.slideNote){try{E.setSlideNote(this.slideNote)}catch(Y){console.error(Y)}this.slideNote=null}if(i.notes[0].sourceNote.slideType==="start"&&(this.slideNote=E),C.Length.RealValue===.25&&C.Notehead&&C.Notehead.Filled===!1){const Y=E.getKeyProps();for(let J=0;J1){let Y=E.getKeyProps().filter(ce=>!ce.code&&ce.line>3);!((ue=window.GYM)==null?void 0:ue.stemDirectionNote)&&Y.length===o.length&&E.setStemDirection(-1)}r.DYMusicScoreType==="jianpu"&&window&&window.sett&&window.sett.keySignature&&E.addAccidental(0,new VF$a.Accidental("#"));try{const Y=["b","#","§","º","X"],J={b:"b","#":"#","§":"n",º:"bb",X:"##"};for(const ce of e){const ge=ce.sourceNote.voiceEntry.Timestamp;for(const Ee of ce.sourceNote.SourceMeasure.StaffLinkedExpressions)for(const Ie of Ee){const De=Fraction$1.Equal(ge,Ie.Timestamp),ae=Ie.EntriesList.map(H=>H.label).filter(H=>Y.includes(H)).map(H=>J[H]);if(De){for(const H of ae)H&&E.addAnnotation(0,new VF$a.Annotation(H));break}}}}catch(Y){}return E}static generateArticulations(i,e,r){var s,o,a,l,c,u;if(!(!i||i.getAttribute("type")==="GhostNote"))for(const m of e.sourceNote.ParentVoiceEntry.Articulations){let g=VF$a.Modifier.Position.ABOVE;i.getStemDirection()===VF$a.Stem.UP&&(g=VF$a.Modifier.Position.BELOW);let d;const y=m.articulationEnum;switch(r.ArticulationPlacementFromXML&&(m.placement===PlacementEnum.Above?g=VF$a.Modifier.Position.ABOVE:m.placement===PlacementEnum.Below&&(g=VF$a.Modifier.Position.BELOW)),y){case ArticulationEnum.accent:{d=new VF$a.Articulation("a>");const A=e.sourceNote.NoteSlurs;for(const b of A)b.StartNote===e.sourceNote&&(b.PlacementXml===PlacementEnum.Above?d.setYShift(-r.SlurStartArticulationYOffsetOfArticulation*10):b.PlacementXml===PlacementEnum.Below&&d.setYShift(r.SlurStartArticulationYOffsetOfArticulation*10));break}case ArticulationEnum.breathmark:{d=new VF$a.Articulation("abr"),m.placement===PlacementEnum.Above&&(g=VF$a.Modifier.Position.ABOVE),d.breathMarkDistance=r.BreathMarkDistance;break}case ArticulationEnum.downbow:{d=new VF$a.Articulation("am"),m.placement===void 0&&(g=VF$a.Modifier.Position.ABOVE,m.placement=PlacementEnum.Above);break}case ArticulationEnum.fermata:{d=new VF$a.Articulation("a@a"),g=VF$a.Modifier.Position.ABOVE,m.placement=PlacementEnum.Above;break}case ArticulationEnum.marcatodown:{d=new VF$a.Articulation("a|");break}case ArticulationEnum.marcatoup:{d=new VF$a.Articulation("a^"),g=VF$a.Modifier.Position.ABOVE;break}case ArticulationEnum.invertedfermata:{const A=e.sourceNote.ParentVoiceEntry,b=e.sourceNote;if(A!==b.ParentVoiceEntry.ParentSourceStaffEntry.VoiceEntries.last()){A.Articulations=A.Articulations.slice(A.Articulations.indexOf(m)),A.ParentSourceStaffEntry.VoiceEntries.last().Articulations.push(m);continue}d=new VF$a.Articulation("a@u"),g=VF$a.Modifier.Position.BELOW,m.placement=PlacementEnum.Below;break}case ArticulationEnum.lefthandpizzicato:{d=new VF$a.Articulation("a+");break}case ArticulationEnum.naturalharmonic:{d=new VF$a.Articulation("ah");break}case ArticulationEnum.snappizzicato:{d=new VF$a.Articulation("ao");break}case ArticulationEnum.staccatissimo:{d=new VF$a.Articulation("av");break}case ArticulationEnum.staccato:{d=new VF$a.Articulation("a.");break}case ArticulationEnum.tenuto:{d=new VF$a.Articulation("a-");break}case ArticulationEnum.upbow:{d=new VF$a.Articulation("a|"),m.placement===void 0&&(g=VF$a.Modifier.Position.ABOVE,m.placement=PlacementEnum.Above);break}case ArticulationEnum.strongaccent:{d=new VF$a.Articulation("a^");break}}d&&(!i.hasStem()&&!i.isRest()&&y==ArticulationEnum.accent&&i.getLineNumber()>=3&&(g=VF$a.Modifier.Position.ABOVE,(o=(s=i==null?void 0:i.modifiers)==null?void 0:s.filter(S=>["TREMOLO"].includes(S.getCategory().toLocaleUpperCase())))!=null&&o.length&&d.setYShift(-16)),y===ArticulationEnum.strongaccent&&(g=VF$a.Modifier.Position.ABOVE,(a=window.GYM)!=null&&a.customArtPosition&&(i.getStemDirection()===1?g=VF$a.Modifier.Position.ABOVE:(g=VF$a.Modifier.Position.BELOW,d=new VF$a.Articulation("a|")))),(l=window.GYM)!=null&&l.customAccentItem&&y===ArticulationEnum.accent&&(g=VF$a.Modifier.Position.ABOVE),(c=window.GYM)!=null&&c.customLefthandpizzicatoItem&&(y===ArticulationEnum.lefthandpizzicato||y===ArticulationEnum.naturalharmonic)&&(g=VF$a.Modifier.Position.ABOVE),y===ArticulationEnum.tenuto&&i.getDuration()==="w"&&((u=window.GYM)!=null&&u.customTenutoItem)&&(g=VF$a.Modifier.Position.ABOVE),d.setPosition(g),i.addModifier(0,d))}}static generateOrnaments(i,e){let r=VF$a.Modifier.Position.ABOVE;e.placement===PlacementEnum.Below&&(r=VF$a.Modifier.Position.BELOW);let s;switch(e.GetOrnament){case OrnamentEnum.DelayedInvertedTurn:{s=new VF$a.Ornament("turn_inverted"),s.setDelayed(!0);break}case OrnamentEnum.DelayedTurn:{s=new VF$a.Ornament("turn"),s.setDelayed(!0);break}case OrnamentEnum.InvertedMordent:{s=new VF$a.Ornament("mordent"),s.setDelayed(!1);break}case OrnamentEnum.InvertedTurn:{s=new VF$a.Ornament("turn_inverted"),s.setDelayed(!1);break}case OrnamentEnum.Mordent:{s=new VF$a.Ornament("mordent_inverted"),s.setDelayed(!1);break}case OrnamentEnum.Trill:{s=new VF$a.Ornament("tr"),s.setDelayed(!1);break}case OrnamentEnum.Turn:{s=new VF$a.Ornament("turn"),s.setDelayed(!1);break}default:{loglevelExports.warn("unhandled OrnamentEnum type: "+e.GetOrnament);return}}s&&(e.AccidentalBelow!==AccidentalEnum.NONE&&s.setLowerAccidental(Pitch.accidentalVexflow(e.AccidentalBelow)),e.AccidentalAbove!==AccidentalEnum.NONE&&s.setUpperAccidental(Pitch.accidentalVexflow(e.AccidentalAbove)),s.setPosition(r),i.addModifier(0,s))}static StrokeTypeFromArpeggioType(i){switch(i){case ArpeggioType.ARPEGGIO_DIRECTIONLESS:return VF$a.Stroke.Type.ARPEGGIO_DIRECTIONLESS;case ArpeggioType.BRUSH_DOWN:return VF$a.Stroke.Type.BRUSH_UP;case ArpeggioType.BRUSH_UP:return VF$a.Stroke.Type.BRUSH_DOWN;case ArpeggioType.RASQUEDO_DOWN:return VF$a.Stroke.Type.RASQUEDO_UP;case ArpeggioType.RASQUEDO_UP:return VF$a.Stroke.Type.RASQUEDO_DOWN;case ArpeggioType.ROLL_DOWN:return VF$a.Stroke.Type.ROLL_UP;case ArpeggioType.ROLL_UP:return VF$a.Stroke.Type.ROLL_DOWN;default:return VF$a.Stroke.Type.ARPEGGIO_DIRECTIONLESS}}static CreateTabNote(i){const e=[],r=i.notes.reverse(),s=[],o=i.notes[0].graphicalNoteLength,a=i.notes[0].sourceNote.NoteTuplet!==void 0;let l=_VexFlowConverter.durations(o,a)[0],c=0;for(const m of i.notes){const g=m.sourceNote;let d={str:g.StringNumberTab,fret:g.FretNumber};m.sourceNote instanceof TabNote||(loglevelExports.info(`invalid tab note: ${m.sourceNote.Pitch.ToString()} in measure ${i.parentStaffEntry.parentMeasure.MeasureNumber}, likely missing XML string+fret number.`),d={str:1,fret:0}),e.push(d),g.BendArray&&g.BendArray.forEach(function(y){let A;const b=y.bendalter-d.fret;b>1?A="Full":b===1?A="1/2":A="1/4",y.direction==="up"?s.push({type:VF$a.Bend.UP,text:A,width:10}):s.push({type:VF$a.Bend.DOWN,text:A,width:10})}),c(i[i.VA8=0]="VA8",i[i.VB8=1]="VB8",i[i.MA15=2]="MA15",i[i.MB15=3]="MB15",i[i.NONE=4]="NONE",i))(OctaveEnum||{});class AbstractTempoExpression extends AbstractExpression{constructor(e,r,s,o){super(r),this.label=e,this.staffNumber=s,this.parentMultiTempoExpression=o}get Label(){return this.label}set Label(e){this.label=e}get Placement(){return this.placement}set Placement(e){this.placement=e}get StaffNumber(){return this.staffNumber}set StaffNumber(e){this.staffNumber=e}get ParentMultiTempoExpression(){return this.parentMultiTempoExpression}static isStringInStringList(e,r){for(const s of e)if(AbstractTempoExpression.stringContainsSeparatedWord(r.toLowerCase().trim(),s.toLowerCase().trim()))return!0;return!1}static stringContainsSeparatedWord(e,r){return e===r||e.indexOf(" "+r)!==-1||e.indexOf(r+" ")!==-1}}const _InstantaneousTempoExpression=class extends AbstractTempoExpression{constructor(i,e,r,s,o,a=!1){super(i,e,r,o),this.isMetronomeMark=a,this.setTempoAndTempoType(s)}static getDefaultValueForTempoType(i){switch(i){case 1:return 20;case 2:return 30;case 3:return 48;case 4:return 52;case 5:return 63;case 6:return 70;case 7:return 75;case 8:return 88;case 9:return 92;case 10:return 96;case 11:return 106;case 12:return 112;case 13:return 118;case 14:return 130;case 15:return 140;case 16:return 155;case 17:return 170;case 18:return 184;case 19:return 200;default:throw new ArgumentOutOfRangeException("tempoEnum")}}static isInputStringInstantaneousTempo(i){return i?_InstantaneousTempoExpression.isStringInStringList(_InstantaneousTempoExpression.listInstantaneousTempoLarghissimo,i)||_InstantaneousTempoExpression.isStringInStringList(_InstantaneousTempoExpression.listInstantaneousTempoGrave,i)||_InstantaneousTempoExpression.isStringInStringList(_InstantaneousTempoExpression.listInstantaneousTempoLento,i)||_InstantaneousTempoExpression.isStringInStringList(_InstantaneousTempoExpression.listInstantaneousTempoLargo,i)||_InstantaneousTempoExpression.isStringInStringList(_InstantaneousTempoExpression.listInstantaneousTempoLarghetto,i)||_InstantaneousTempoExpression.isStringInStringList(_InstantaneousTempoExpression.listInstantaneousTempoAdagio,i)||_InstantaneousTempoExpression.isStringInStringList(_InstantaneousTempoExpression.listInstantaneousTempoAdagietto,i)||_InstantaneousTempoExpression.isStringInStringList(_InstantaneousTempoExpression.listInstantaneousTempoAndanteModerato,i)||_InstantaneousTempoExpression.isStringInStringList(_InstantaneousTempoExpression.listInstantaneousTempoAndante,i)||_InstantaneousTempoExpression.isStringInStringList(_InstantaneousTempoExpression.listInstantaneousTempoAndantino,i)||_InstantaneousTempoExpression.isStringInStringList(_InstantaneousTempoExpression.listInstantaneousTempoModerato,i)||_InstantaneousTempoExpression.isStringInStringList(_InstantaneousTempoExpression.listInstantaneousTempoAllegretto,i)||_InstantaneousTempoExpression.isStringInStringList(_InstantaneousTempoExpression.listInstantaneousTempoAllegroModerato,i)||_InstantaneousTempoExpression.isStringInStringList(_InstantaneousTempoExpression.listInstantaneousTempoAllegro,i)||_InstantaneousTempoExpression.isStringInStringList(_InstantaneousTempoExpression.listInstantaneousTempoVivace,i)||_InstantaneousTempoExpression.isStringInStringList(_InstantaneousTempoExpression.listInstantaneousTempoVivacissimo,i)||_InstantaneousTempoExpression.isStringInStringList(_InstantaneousTempoExpression.listInstantaneousTempoAllegrissimo,i)||_InstantaneousTempoExpression.isStringInStringList(_InstantaneousTempoExpression.listInstantaneousTempoPresto,i)||_InstantaneousTempoExpression.isStringInStringList(_InstantaneousTempoExpression.listInstantaneousTempoPrestissimo,i)||_InstantaneousTempoExpression.isStringInStringList(_InstantaneousTempoExpression.listInstantaneousTempoChangesGeneral,i):!1}get Label(){return this.label}set Label(i){this.label=i}get Placement(){return this.placement}set Placement(i){this.placement=i}get StaffNumber(){return this.staffNumber}set StaffNumber(i){this.staffNumber=i}get Enum(){return this.tempoEnum}get TempoInBpm(){return this.tempoInBpm}set TempoInBpm(i){this.tempoInBpm=i}get ParentMultiTempoExpression(){return this.parentMultiTempoExpression}getAbsoluteTimestamp(){return Fraction$1.plus(this.ParentMultiTempoExpression.SourceMeasureParent.AbsoluteTimestamp,this.ParentMultiTempoExpression.Timestamp)}getAbsoluteFloatTimestamp(){return Fraction$1.plus(this.ParentMultiTempoExpression.SourceMeasureParent.AbsoluteTimestamp,this.ParentMultiTempoExpression.Timestamp).RealValue}setTempoAndTempoType(i){if(!this.label){this.tempoInBpm=i,this.tempoEnum=23;return}if(_InstantaneousTempoExpression.isStringInStringList(_InstantaneousTempoExpression.listInstantaneousTempoLarghissimo,this.label)){i===0&&(i=_InstantaneousTempoExpression.getDefaultValueForTempoType(1)),this.tempoInBpm=i,this.tempoEnum=1;return}if(_InstantaneousTempoExpression.isStringInStringList(_InstantaneousTempoExpression.listInstantaneousTempoGrave,this.label)){i===0&&(i=_InstantaneousTempoExpression.getDefaultValueForTempoType(2)),this.tempoInBpm=i,this.tempoEnum=2;return}if(_InstantaneousTempoExpression.isStringInStringList(_InstantaneousTempoExpression.listInstantaneousTempoLento,this.label)){i===0&&(i=_InstantaneousTempoExpression.getDefaultValueForTempoType(3)),this.tempoInBpm=i,this.tempoEnum=3;return}if(_InstantaneousTempoExpression.isStringInStringList(_InstantaneousTempoExpression.listInstantaneousTempoLargo,this.label)){i===0&&(i=_InstantaneousTempoExpression.getDefaultValueForTempoType(4)),this.tempoInBpm=i,this.tempoEnum=4;return}if(_InstantaneousTempoExpression.isStringInStringList(_InstantaneousTempoExpression.listInstantaneousTempoLarghetto,this.label)){i===0&&(i=_InstantaneousTempoExpression.getDefaultValueForTempoType(5)),this.tempoInBpm=i,this.tempoEnum=5;return}if(_InstantaneousTempoExpression.isStringInStringList(_InstantaneousTempoExpression.listInstantaneousTempoAdagio,this.label)){i===0&&(i=_InstantaneousTempoExpression.getDefaultValueForTempoType(6)),this.tempoInBpm=i,this.tempoEnum=6;return}if(_InstantaneousTempoExpression.isStringInStringList(_InstantaneousTempoExpression.listInstantaneousTempoAdagietto,this.label)){i===0&&(i=_InstantaneousTempoExpression.getDefaultValueForTempoType(7)),this.tempoInBpm=i,this.tempoEnum=7;return}if(_InstantaneousTempoExpression.isStringInStringList(_InstantaneousTempoExpression.listInstantaneousTempoAndanteModerato,this.label)){i===0&&(i=_InstantaneousTempoExpression.getDefaultValueForTempoType(8)),this.tempoInBpm=i,this.tempoEnum=8;return}if(_InstantaneousTempoExpression.isStringInStringList(_InstantaneousTempoExpression.listInstantaneousTempoAndante,this.label)){i===0&&(i=_InstantaneousTempoExpression.getDefaultValueForTempoType(9)),this.tempoInBpm=i,this.tempoEnum=9;return}if(_InstantaneousTempoExpression.isStringInStringList(_InstantaneousTempoExpression.listInstantaneousTempoAndantino,this.label)){i===0&&(i=_InstantaneousTempoExpression.getDefaultValueForTempoType(10)),this.tempoInBpm=i,this.tempoEnum=10;return}if(_InstantaneousTempoExpression.isStringInStringList(_InstantaneousTempoExpression.listInstantaneousTempoModerato,this.label)){i===0&&(i=_InstantaneousTempoExpression.getDefaultValueForTempoType(11)),this.tempoInBpm=i,this.tempoEnum=11;return}if(_InstantaneousTempoExpression.isStringInStringList(_InstantaneousTempoExpression.listInstantaneousTempoAllegretto,this.label)){i===0&&(i=_InstantaneousTempoExpression.getDefaultValueForTempoType(12)),this.tempoInBpm=i,this.tempoEnum=12;return}if(_InstantaneousTempoExpression.isStringInStringList(_InstantaneousTempoExpression.listInstantaneousTempoAllegroModerato,this.label)){i===0&&(i=_InstantaneousTempoExpression.getDefaultValueForTempoType(13)),this.tempoInBpm=i,this.tempoEnum=13;return}if(_InstantaneousTempoExpression.isStringInStringList(_InstantaneousTempoExpression.listInstantaneousTempoAllegro,this.label)){i===0&&(i=_InstantaneousTempoExpression.getDefaultValueForTempoType(14)),this.tempoInBpm=i,this.tempoEnum=14;return}if(_InstantaneousTempoExpression.isStringInStringList(_InstantaneousTempoExpression.listInstantaneousTempoVivace,this.label)){i===0&&(i=_InstantaneousTempoExpression.getDefaultValueForTempoType(15)),this.tempoInBpm=i,this.tempoEnum=15;return}if(_InstantaneousTempoExpression.isStringInStringList(_InstantaneousTempoExpression.listInstantaneousTempoVivacissimo,this.label)){i===0&&(i=_InstantaneousTempoExpression.getDefaultValueForTempoType(16)),this.tempoInBpm=i,this.tempoEnum=16;return}if(_InstantaneousTempoExpression.isStringInStringList(_InstantaneousTempoExpression.listInstantaneousTempoAllegrissimo,this.label)){i===0&&(i=_InstantaneousTempoExpression.getDefaultValueForTempoType(17)),this.tempoInBpm=i,this.tempoEnum=17;return}if(_InstantaneousTempoExpression.isStringInStringList(_InstantaneousTempoExpression.listInstantaneousTempoPresto,this.label)){i===0&&(i=_InstantaneousTempoExpression.getDefaultValueForTempoType(18)),this.tempoInBpm=i,this.tempoEnum=18;return}if(_InstantaneousTempoExpression.isStringInStringList(_InstantaneousTempoExpression.listInstantaneousTempoPrestissimo,this.label)){i===0&&(i=_InstantaneousTempoExpression.getDefaultValueForTempoType(19)),this.tempoInBpm=i,this.tempoEnum=19;return}if(_InstantaneousTempoExpression.isStringInStringList(_InstantaneousTempoExpression.listInstantaneousTempoAddons,this.label)){this.tempoInBpm=0,this.tempoEnum=21;return}if(_InstantaneousTempoExpression.isStringInStringList(_InstantaneousTempoExpression.listInstantaneousTempoChangesGeneral,this.label)){this.tempoInBpm=0,this.tempoEnum=22;return}}};let InstantaneousTempoExpression=_InstantaneousTempoExpression;InstantaneousTempoExpression.listInstantaneousTempoLarghissimo=["Larghissimo","Sehr breit","very, very slow"];InstantaneousTempoExpression.listInstantaneousTempoGrave=["Grave","Schwer","slow and solemn"];InstantaneousTempoExpression.listInstantaneousTempoLento=["Lento","Lent","Langsam","slowly"];InstantaneousTempoExpression.listInstantaneousTempoLargo=["Largo","Breit","broadly"];InstantaneousTempoExpression.listInstantaneousTempoLarghetto=["Larghetto","Etwas breit","rather broadly"];InstantaneousTempoExpression.listInstantaneousTempoAdagio=["Adagio","Langsam","Ruhig","slow and stately"];InstantaneousTempoExpression.listInstantaneousTempoAdagietto=["Adagietto","Ziemlich ruhig","Ziemlich langsam","rather slow"];InstantaneousTempoExpression.listInstantaneousTempoAndanteModerato=["Andante moderato"];InstantaneousTempoExpression.listInstantaneousTempoAndante=["Andante","Gehend","Schreitend","at a walking pace"];InstantaneousTempoExpression.listInstantaneousTempoAndantino=["Andantino","Maestoso"];InstantaneousTempoExpression.listInstantaneousTempoModerato=["Moderato","Mäßig","Modéré","moderately"];InstantaneousTempoExpression.listInstantaneousTempoAllegretto=["Allegretto","Animato","fast"];InstantaneousTempoExpression.listInstantaneousTempoAllegroModerato=["Allegro moderato"];InstantaneousTempoExpression.listInstantaneousTempoAllegro=["Allegro","Rapide","Vite","Rasch","Schnell","Fröhlich"];InstantaneousTempoExpression.listInstantaneousTempoVivace=["Vivace","Allegro Assai","Lebhaft","Lebendig","lively and fast"];InstantaneousTempoExpression.listInstantaneousTempoVivacissimo=["Vivacissimo","Sehr lebhaft","Sehr lebendig"];InstantaneousTempoExpression.listInstantaneousTempoAllegrissimo=["Allegrissimo","very fast"];InstantaneousTempoExpression.listInstantaneousTempoPresto=["Presto","Sehr schnell","Geschwind"];InstantaneousTempoExpression.listInstantaneousTempoPrestissimo=["Prestissimo","äußerst schnell"];InstantaneousTempoExpression.listInstantaneousTempoChangesGeneral=["tempo primo","a tempo","tempo i","rubato","doppio movimento","rallentando","ritardando","ritard.","rit.","ritard","rall...","accelerando","accel"];InstantaneousTempoExpression.listInstantaneousTempoAddons=["assai","amoroso","cantabile","con brio","con dolore","con espressione","con fuoco","con moto","con spirito","spiritoso","espressivo","giocoso","giusto","grazioso","lesto","lugubre","maestoso","ma non troppo","marcato","molto","morendo","mosso","non tanto","piu","un poco","poco","quasi","risoluto","scherzando","sostenuto","teneramente","tempo giusto","tranquillo","sehr","lieblich","liebevoll","mit Leidenschaft","mit Liebe","amourös","gesanglich","mit Schwung","mit Feuer","mit Schmerz","mit Ausdruck","mit Bewegung","geistvoll","ausdrucksvoll","freudig","verspielt","angemessen","graziös","mit Grazie","flink","behände","traurig","klagend","majestätisch","aber nicht zu sehr","markant","gemäßigt","viel","sehr","ersterbend","bewegt","nicht zu sehr","mehr","ein wenig","gleichsam","entschlossen","zupackend","heiter","nachdrücklich","getragen","gewichtig","zart","zärtlich","im angemessenen Zeitmaß","ruhig","ein wenig","alla marcia","ad libitum","alla breve"];var TempoEnum=(i=>(i[i.none=0]="none",i[i.larghissimo=1]="larghissimo",i[i.grave=2]="grave",i[i.lento=3]="lento",i[i.largo=4]="largo",i[i.larghetto=5]="larghetto",i[i.adagio=6]="adagio",i[i.adagietto=7]="adagietto",i[i.andanteModerato=8]="andanteModerato",i[i.andante=9]="andante",i[i.andantino=10]="andantino",i[i.moderato=11]="moderato",i[i.allegretto=12]="allegretto",i[i.allegroModerato=13]="allegroModerato",i[i.allegro=14]="allegro",i[i.vivace=15]="vivace",i[i.vivacissimo=16]="vivacissimo",i[i.allegrissimo=17]="allegrissimo",i[i.presto=18]="presto",i[i.prestissimo=19]="prestissimo",i[i.lastRealTempo=20]="lastRealTempo",i[i.addon=21]="addon",i[i.changes=22]="changes",i[i.metronomeMark=23]="metronomeMark",i))(TempoEnum||{});const _MoodExpression=class extends AbstractExpression{constructor(i,e,r){super(e),this.label=i,this.staffNumber=r,this.setMoodType()}static isInputStringMood(i){return i?_MoodExpression.isStringInStringList(_MoodExpression.listMoodAffettuoso,i)||_MoodExpression.isStringInStringList(_MoodExpression.listMoodAgitato,i)||_MoodExpression.isStringInStringList(_MoodExpression.listMoodAnimato,i)||_MoodExpression.isStringInStringList(_MoodExpression.listMoodAppassionato,i)||_MoodExpression.isStringInStringList(_MoodExpression.listMoodBrillante,i)||_MoodExpression.isStringInStringList(_MoodExpression.listMoodCantabile,i)||_MoodExpression.isStringInStringList(_MoodExpression.listMoodDolce,i)||_MoodExpression.isStringInStringList(_MoodExpression.listMoodEnergico,i)||_MoodExpression.isStringInStringList(_MoodExpression.listMoodEroico,i)||_MoodExpression.isStringInStringList(_MoodExpression.listMoodEspressivo,i)||_MoodExpression.isStringInStringList(_MoodExpression.listMoodFurioso,i)||_MoodExpression.isStringInStringList(_MoodExpression.listMoodGiocoso,i)||_MoodExpression.isStringInStringList(_MoodExpression.listMoodGioioso,i)||_MoodExpression.isStringInStringList(_MoodExpression.listMoodGrandioso,i)||_MoodExpression.isStringInStringList(_MoodExpression.listMoodGrazioso,i)||_MoodExpression.isStringInStringList(_MoodExpression.listMoodLacrimoso,i)||_MoodExpression.isStringInStringList(_MoodExpression.listMoodLeggiero,i)||_MoodExpression.isStringInStringList(_MoodExpression.listMoodMaestoso,i)||_MoodExpression.isStringInStringList(_MoodExpression.listMoodMalinconico,i)||_MoodExpression.isStringInStringList(_MoodExpression.listMoodMarcato,i)||_MoodExpression.isStringInStringList(_MoodExpression.listMoodMarziale,i)||_MoodExpression.isStringInStringList(_MoodExpression.listMoodMesto,i)||_MoodExpression.isStringInStringList(_MoodExpression.listMoodMorendo,i)||_MoodExpression.isStringInStringList(_MoodExpression.listMoodNobilmente,i)||_MoodExpression.isStringInStringList(_MoodExpression.listMoodPatetico,i)||_MoodExpression.isStringInStringList(_MoodExpression.listMoodPesante,i)||_MoodExpression.isStringInStringList(_MoodExpression.listMoodSaltando,i)||_MoodExpression.isStringInStringList(_MoodExpression.listMoodSautille,i)||_MoodExpression.isStringInStringList(_MoodExpression.listMoodScherzando,i)||_MoodExpression.isStringInStringList(_MoodExpression.listMoodSostenuto,i)||_MoodExpression.isStringInStringList(_MoodExpression.listMoodSpiccato,i)||_MoodExpression.isStringInStringList(_MoodExpression.listMoodTenerezza,i)||_MoodExpression.isStringInStringList(_MoodExpression.listMoodTranquillamente,i)||_MoodExpression.isStringInStringList(_MoodExpression.listMoodTrionfante,i):!1}get Label(){return this.label}set Label(i){this.label=i}get Mood(){return this.moodType}set Mood(i){this.moodType=i}get StaffNumber(){return this.staffNumber}set StaffNumber(i){this.staffNumber=i}get Placement(){return this.placement}set Placement(i){this.placement=i}setMoodType(){_MoodExpression.isStringInStringList(_MoodExpression.listMoodAffettuoso,this.label)?this.moodType=0:_MoodExpression.isStringInStringList(_MoodExpression.listMoodAgitato,this.label)?this.moodType=1:_MoodExpression.isStringInStringList(_MoodExpression.listMoodAnimato,this.label)?this.moodType=3:_MoodExpression.isStringInStringList(_MoodExpression.listMoodAppassionato,this.label)?this.moodType=2:_MoodExpression.isStringInStringList(_MoodExpression.listMoodBrillante,this.label)?this.moodType=4:_MoodExpression.isStringInStringList(_MoodExpression.listMoodCantabile,this.label)?this.moodType=5:_MoodExpression.isStringInStringList(_MoodExpression.listMoodDolce,this.label)?this.moodType=6:_MoodExpression.isStringInStringList(_MoodExpression.listMoodEnergico,this.label)?this.moodType=7:_MoodExpression.isStringInStringList(_MoodExpression.listMoodEroico,this.label)?this.moodType=8:_MoodExpression.isStringInStringList(_MoodExpression.listMoodEspressivo,this.label)?this.moodType=9:_MoodExpression.isStringInStringList(_MoodExpression.listMoodFurioso,this.label)?this.moodType=10:_MoodExpression.isStringInStringList(_MoodExpression.listMoodGiocoso,this.label)?this.moodType=11:_MoodExpression.isStringInStringList(_MoodExpression.listMoodGioioso,this.label)?this.moodType=12:_MoodExpression.isStringInStringList(_MoodExpression.listMoodGrandioso,this.label)?this.moodType=14:_MoodExpression.isStringInStringList(_MoodExpression.listMoodGrazioso,this.label)?this.moodType=15:_MoodExpression.isStringInStringList(_MoodExpression.listMoodLacrimoso,this.label)?this.moodType=13:_MoodExpression.isStringInStringList(_MoodExpression.listMoodLeggiero,this.label)?this.moodType=16:_MoodExpression.isStringInStringList(_MoodExpression.listMoodMaestoso,this.label)?this.moodType=17:_MoodExpression.isStringInStringList(_MoodExpression.listMoodMalinconico,this.label)?this.moodType=18:_MoodExpression.isStringInStringList(_MoodExpression.listMoodMarcato,this.label)?this.moodType=19:_MoodExpression.isStringInStringList(_MoodExpression.listMoodMarziale,this.label)?this.moodType=20:_MoodExpression.isStringInStringList(_MoodExpression.listMoodMesto,this.label)?this.moodType=21:_MoodExpression.isStringInStringList(_MoodExpression.listMoodMorendo,this.label)?this.moodType=22:_MoodExpression.isStringInStringList(_MoodExpression.listMoodNobilmente,this.label)?this.moodType=23:_MoodExpression.isStringInStringList(_MoodExpression.listMoodPatetico,this.label)?this.moodType=24:_MoodExpression.isStringInStringList(_MoodExpression.listMoodPesante,this.label)?this.moodType=25:_MoodExpression.isStringInStringList(_MoodExpression.listMoodSaltando,this.label)?this.moodType=27:_MoodExpression.isStringInStringList(_MoodExpression.listMoodSautille,this.label)?this.moodType=26:_MoodExpression.isStringInStringList(_MoodExpression.listMoodScherzando,this.label)?this.moodType=28:_MoodExpression.isStringInStringList(_MoodExpression.listMoodSostenuto,this.label)?this.moodType=29:_MoodExpression.isStringInStringList(_MoodExpression.listMoodSpiccato,this.label)?this.moodType=30:_MoodExpression.isStringInStringList(_MoodExpression.listMoodTenerezza,this.label)?this.moodType=31:_MoodExpression.isStringInStringList(_MoodExpression.listMoodTranquillamente,this.label)?this.moodType=32:_MoodExpression.isStringInStringList(_MoodExpression.listMoodTrionfante,this.label)&&(this.moodType=33)}};let MoodExpression=_MoodExpression;MoodExpression.listMoodAffettuoso=["affettuoso"];MoodExpression.listMoodAgitato=["agitato"];MoodExpression.listMoodAppassionato=["appassionato"];MoodExpression.listMoodAnimato=["animato","lively"];MoodExpression.listMoodBrillante=["brillante"];MoodExpression.listMoodCantabile=["cantabile"];MoodExpression.listMoodDolce=["dolce"];MoodExpression.listMoodEnergico=["energico"];MoodExpression.listMoodEroico=["eroico"];MoodExpression.listMoodEspressivo=["espressivo"];MoodExpression.listMoodFurioso=["furioso"];MoodExpression.listMoodGiocoso=["giocoso"];MoodExpression.listMoodGioioso=["gioioso"];MoodExpression.listMoodLacrimoso=["lacrimoso"];MoodExpression.listMoodGrandioso=["grandioso"];MoodExpression.listMoodGrazioso=["grazioso"];MoodExpression.listMoodLeggiero=["leggiero"];MoodExpression.listMoodMaestoso=["maestoso"];MoodExpression.listMoodMalinconico=["malinconico"];MoodExpression.listMoodMarcato=["marcato"];MoodExpression.listMoodMarziale=["marziale"];MoodExpression.listMoodMesto=["mesto"];MoodExpression.listMoodMorendo=["morendo"];MoodExpression.listMoodNobilmente=["nobilmente"];MoodExpression.listMoodPatetico=["patetico"];MoodExpression.listMoodPesante=["pesante"];MoodExpression.listMoodSautille=["sautille"];MoodExpression.listMoodSaltando=["saltando"];MoodExpression.listMoodScherzando=["scherzando"];MoodExpression.listMoodSostenuto=["sostenuto"];MoodExpression.listMoodSpiccato=["spiccato"];MoodExpression.listMoodTenerezza=["tenerezza"];MoodExpression.listMoodTranquillamente=["tranquillamente"];MoodExpression.listMoodTrionfante=["trionfante"];class UnknownExpression extends AbstractExpression{constructor(e,r,s,o){super(r),this.label=e,this.staffNumber=o,s===void 0&&(s=TextAlignmentEnum.LeftBottom),this.textAlignment=s}get Label(){return this.label}get Placement(){return this.placement}set Placement(e){this.placement=e}get StaffNumber(){return this.staffNumber}set StaffNumber(e){this.staffNumber=e}get TextAlignment(){return this.textAlignment}}class MultiExpression{constructor(e,r){this.unknownList=[],this.moodList=[],this.expressions=[],this.sourceMeasure=e,this.timestamp=r}get SourceMeasureParent(){return this.sourceMeasure}set SourceMeasureParent(e){this.sourceMeasure=e}get StaffNumber(){return this.staffNumber}set StaffNumber(e){this.staffNumber=e}get Timestamp(){return this.timestamp}set Timestamp(e){this.timestamp=e}get AbsoluteTimestamp(){return Fraction$1.plus(this.timestamp,this.sourceMeasure.AbsoluteTimestamp)}get InstantaneousDynamic(){return this.instantaneousDynamic}set InstantaneousDynamic(e){this.instantaneousDynamic=e}get EndingContinuousDynamic(){return this.endingContinuousDynamic}set EndingContinuousDynamic(e){this.endingContinuousDynamic=e}get StartingContinuousDynamic(){return this.startingContinuousDynamic}set StartingContinuousDynamic(e){this.startingContinuousDynamic=e}get MoodList(){return this.moodList}get UnknownList(){return this.unknownList}get EntriesList(){return this.expressions}get OctaveShiftStart(){return this.octaveShiftStart}set OctaveShiftStart(e){this.octaveShiftStart=e}get OctaveShiftEnd(){return this.octaveShiftEnd}set OctaveShiftEnd(e){this.octaveShiftEnd=e}get CombinedExpressionsText(){return this.combinedExpressionsText}set CombinedExpressionsText(e){this.combinedExpressionsText=e}getPlacementOfFirstEntry(){let e=PlacementEnum.Above;return this.expressions.length>0&&(this.expressions[0].expression instanceof InstantaneousDynamicExpression?e=this.expressions[0].expression.Placement:this.expressions[0].expression instanceof ContinuousDynamicExpression?e=this.expressions[0].expression.Placement:this.expressions[0].expression instanceof MoodExpression?e=this.expressions[0].expression.Placement:this.expressions[0].expression instanceof UnknownExpression&&(e=this.expressions[0].expression.Placement)),e}getFontstyleOfFirstEntry(){var r;let e=FontStyles.Regular;return this.expressions.length>0&&(this.expressions[0].expression instanceof ContinuousDynamicExpression||this.expressions[0].expression instanceof MoodExpression?e=FontStyles.Italic:this.expressions[0].expression instanceof UnknownExpression&&(e=(r=this.expressions[0].expression.fontStyle)!=null?r:FontStyles.Regular)),e}addExpression(e,r){e instanceof InstantaneousDynamicExpression?(this.instantaneousDynamic&&this.removeExpressionFromEntryList(this.InstantaneousDynamic),this.instantaneousDynamic=e,this.instantaneousDynamic.ParentMultiExpression=this):e instanceof ContinuousDynamicExpression?this.startingContinuousDynamic=e:e instanceof MoodExpression?this.moodList.push(e):e instanceof UnknownExpression&&this.unknownList.push(e),this.addExpressionToEntryList(e,r)}CompareTo(e){return this.Timestamp.RealValue>e.Timestamp.RealValue?1:this.Timestamp.RealValue=5&&i<=12}get TempoType(){return this.tempoType}set TempoType(i){this.tempoType=i}get StartTempo(){return this.startTempo}set StartTempo(i){this.startTempo=i}get EndTempo(){return this.endTempo}set EndTempo(i){this.endTempo=i}get AbsoluteEndTimestamp(){return this.absoluteEndTimestamp}set AbsoluteEndTimestamp(i){this.absoluteEndTimestamp=i}get AbsoluteTimestamp(){return this.ParentMultiTempoExpression.AbsoluteTimestamp}getAbsoluteFloatTimestamp(){return this.ParentMultiTempoExpression.AbsoluteTimestamp.RealValue}getInterpolatedTempo(i){const e=Fraction$1.plus(this.parentMultiTempoExpression.SourceMeasureParent.AbsoluteTimestamp,this.parentMultiTempoExpression.Timestamp);if(i.lt(e))return-1;if(this.absoluteEndTimestamp.lt(i))return-2;const r=Fraction$1.minus(i,e).RealValue/Fraction$1.minus(this.absoluteEndTimestamp,e).RealValue;return Math.max(0,Math.min(250,this.startTempo+(this.endTempo-this.startTempo)*r))}setTempoType(){_ContinuousTempoExpression.isStringInStringList(_ContinuousTempoExpression.listContinuousTempoFaster,this.label)?this.tempoType=0:_ContinuousTempoExpression.isStringInStringList(_ContinuousTempoExpression.listContinuousTempoSlower,this.label)&&(this.tempoType=9)}};let ContinuousTempoExpression=_ContinuousTempoExpression;ContinuousTempoExpression.listContinuousTempoFaster=["accelerando","piu mosso","poco piu","stretto"];ContinuousTempoExpression.listContinuousTempoSlower=["poco meno","meno mosso","piu lento","calando","allargando","rallentando","ritardando","ritenuto","ritard.","ritard","rit.","rit","riten.","riten"];class MultiTempoExpression{constructor(e,r){this.expressions=[],this.sourceMeasure=e,this.timestamp=r}get Timestamp(){return this.timestamp}get AbsoluteTimestamp(){return Fraction$1.plus(this.sourceMeasure.AbsoluteTimestamp,this.timestamp)}get SourceMeasureParent(){return this.sourceMeasure}set SourceMeasureParent(e){this.sourceMeasure=e}get InstantaneousTempo(){return this.instantaneousTempo}get ContinuousTempo(){return this.continuousTempo}get EntriesList(){return this.expressions}get CombinedExpressionsText(){return this.combinedExpressionsText}set CombinedExpressionsText(e){this.combinedExpressionsText=e}getPlacementOfFirstEntry(){let e=PlacementEnum.Above;return this.expressions.length>0&&(this.expressions[0].Expression instanceof InstantaneousTempoExpression?e=this.expressions[0].Expression.Placement:this.expressions[0].Expression instanceof ContinuousTempoExpression&&(e=this.expressions[0].Expression.Placement)),e}getFontstyleOfFirstEntry(){let e=FontStyles.Regular;return this.expressions[0].Expression instanceof InstantaneousTempoExpression?e=FontStyles.Bold:this.expressions[0].Expression instanceof ContinuousTempoExpression&&(e=FontStyles.Italic),e}addExpression(e,r){if(this.checkIfAlreadyExists(e))return;e instanceof InstantaneousTempoExpression?this.instantaneousTempo=e:e instanceof ContinuousTempoExpression&&(this.continuousTempo=e);const s=new TempoExpressionEntry;s.prefix=r,s.Expression=e,s.label=e.Label,this.expressions.push(s)}CompareTo(e){return this.Timestamp.RealValue>e.Timestamp.RealValue?1:this.Timestamp.RealValue0){if(this.rules.MaxSystemToDrawNumber===this.musicSystems.length)return this.finalizeCurrentSystem(this.measureList[this.measureList.length-1],!this.rules.StretchLastSystemLine,!1),this.musicSystems;this.finalizeCurrentAndCreateNewSystem(this.measureList[this.measureList.length-1],!this.rules.StretchLastSystemLine,!1)}return this.musicSystems}calculateSystemYLayout(){for(const e of this.musicSystems)this.optimizeDistanceBetweenStaffLines(e);this.calculateMusicSystemsRelativePositions()}setMeasureWidth(e,r,s,o){for(let a=0,l=e.length;a0&&(c.beginInstructionsWidth=s),o>0&&(c.endInstructionsWidth=o)}}finalizeCurrentAndCreateNewSystem(e,r=!1,s=!0,o=!1){this.finalizeCurrentSystem(e,r,s,o),this.currentSystemParams=new SystemBuildParameters,e!==void 0&&this.measureListIndex=1){const r=this.currentSystemParams.currentSystem.GraphicalMeasures[this.currentSystemParams.currentSystem.GraphicalMeasures.length-1];let s=0;const o=e[e.length-1];o.endLine===SystemLinesEnum.DotsBoldBoldDots&&(o.endLine=SystemLinesEnum.DotsThinBold,s=r[0].getLineWidth(SystemLinesEnum.DotsBoldBoldDots)/2-r[0].getLineWidth(SystemLinesEnum.DotsThinBold)),this.currentSystemParams.currentSystemFixWidth-=s;for(let a=0,l=r.length;a1){l=!0;break}}let c=0;for(let u=0;u=0&&this.measureList[M]){const F=(P=this.measureList[M][0])==null?void 0:P.parentSourceMeasure;F!=null&&F.ImplicitMeasure&&(F!=null&&F.RhythmPrinted)&&(k=!1)}k&&(r.addRhythmAtBegin(m,s),r.parentSourceMeasure.RhythmPrinted=m,A=!0)}return(d||y||A)&&(l+=r.beginInstructionsWidth,A&&(l+=this.rules.RhythmRightMargin)),l}addInstructionsAtMeasureEnd(e,r,s){if(!e||!e.Instructions||e.Instructions.length===0)return 0;for(let o=0,a=e.Instructions.length;o0&&(this.currentSystemParams.systemMeasures.push({beginLine:SystemLinesEnum.None,endLine:SystemLinesEnum.None}),this.currentSystemParams.currentWidth+=o,this.currentSystemParams.currentSystemFixWidth+=o)}addExtraInstructionMeasure(e,r,s){const o=this.currentSystemParams.currentSystem,a=MusicSheetCalculator.symbolFactory.createExtraGraphicalMeasure(o.StaffLines[e]);r&&a.addKeyAtBegin(r,this.activeKeys[e],this.activeClefs[e]),s!==void 0&&s.PrintObject&&a.addRhythmAtBegin(s),a.PositionAndShape.BorderLeft=0,a.PositionAndShape.BorderTop=0,a.PositionAndShape.BorderBottom=this.rules.StaffHeight;const l=this.rules.MeasureLeftMargin+a.beginInstructionsWidth+this.rules.MeasureRightMargin;return a.PositionAndShape.BorderRight=l,o.StaffLines[e].Measures.push(a),l}addStaveMeasuresToSystem(e){if(e[0]){const r=[];for(let o=0;o1){const c=Math.min(this.graphicalMusicSheet.ParentMusicSheet.SourceMeasures.length-1,e.measureListIndex+e.multipleRestMeasures-1);e=this.graphicalMusicSheet.ParentMusicSheet.SourceMeasures[c]}}finally{}const r=this.graphicalMusicSheet.ParentMusicSheet.SourceMeasures,s=r[this.measureListIndex];let o=!1;return s.allRests&&(o=(l=(a=r[this.measureListIndex+s.multipleRestMeasures-1])==null?void 0:a.endsWithLineRepetition)==null?void 0:l.call(a)),this.nextMeasureBeginsLineRepetition()&&this.thisMeasureEndsLineRepetition()?SystemLinesEnum.DotsBoldBoldDots:this.thisMeasureEndsLineRepetition()||o?SystemLinesEnum.DotsThinBold:this.nextMeasureHasKeyInstructionChange()||this.thisMeasureEndsWordRepetition()||this.nextMeasureBeginsWordRepetition()?SystemLinesEnum.DoubleThin:e&&e.endingBarStyleEnum!==void 0?e.endingBarStyleEnum:SystemLinesEnum.SingleThin}getLineWidth(e,r,s){let o=e.getLineWidth(r);return r===SystemLinesEnum.DotsBoldBoldDots&&(o/=2),s&&r===SystemLinesEnum.BoldThinDots&&(o+=this.rules.DistanceBetweenLastInstructionAndRepetitionBarline),o}previousMeasureEndsLineRepetition(){if(this.measureListIndex===0)return!1;for(let e=0,r=this.measureList[this.measureListIndex-1].length;e=this.graphicalMusicSheet.ParentMusicSheet.SourceMeasures.length||!this.measureList[e])return!1;for(let r=0,s=this.measureList[e].length;r=u)l=g,u=g.multipleRestMeasureNumber;else break}return l.endsWithLineRepetition()}}return!1}nextMeasureBeginsWordRepetition(){const e=this.measureListIndex+1;if(e>=this.graphicalMusicSheet.ParentMusicSheet.SourceMeasures.length||e>this.measureList.length-1)return!1;for(let r=0,s=this.measureList[e].length;r1)for(let c=1;ca&&(a=g)}for(let c=0;cthis.rules.PageHeight-this.rules.PageBottomMargin&&(o++,o<=4&&console.log(`warning: could not fit a single system on page ${e.PageNumber} and measure number ${s.GraphicalMeasures[0][0].MeasureNumber}. The PageFormat may be too small for this sheet." Will not give further warnings for all pages, only total.`))}else{const u=this.musicSystems[c-1],m=u.StaffLines[u.StaffLines.length-1],g=m.PositionAndShape;let d=this.findRequiredDistanceWithSkyBottomLine(u,s);d=Math.max(a,d),d+=this.rules.MinSkyBottomDistBetweenSystems,((l=window==null?void 0:window.appName)==null?void 0:l.toLocaleUpperCase())==="GYM"&&(d=d<16?16:d);const y=this.hasExpressionCounts(s);y.TempoCount>0&&this.rules.MetronomeMarksDrawn&&(d+=2),y.OtherCount>0&&this.rules.MetronomeMarksDrawn&&(d+=2),d=Math.max(d,this.rules.MinimumDistanceBetweenSystems+m.StaffHeight);const A=r+g.RelativePosition.y+d,b=A+s.PositionAndShape.BorderMarginBottom;if(!(this.rules.NewPageAtXMLNewPageAttribute&&u.breaksPage)&&b0&&console.log(`total amount of pages that couldn't fit a single music system: ${o} of ${e.PageNumber}`)}findRequiredDistanceWithSkyBottomLine(e,r){const s=e.StaffLines[e.StaffLines.length-1],o=r.StaffLines[0],a=s.BottomLine,l=o.SkyLine,c=s.PositionAndShape,u=o.PositionAndShape,m=1/this.rules.SamplingUnit;let g=0;for(let d=0;d=l.length)break;const b=Math.max(0,A-6),S=Math.min(l.length-1,A+6);let E=0;for(let C=b;C<=S;C++)E=Math.min(E,l[C]);const x=y-E;g=Math.max(x,g)}return g===0&&(g=c.BorderBottom-u.BorderTop),g}}class SystemBuildParameters{constructor(){this.systemMeasures=[],this.systemMeasureIndex=0,this.currentWidth=0,this.currentSystemFixWidth=0,this.currentSystemVarWidth=0,this.maxLabelLength=0}IsSystemStartMeasure(){return this.systemMeasureIndex===0}}class OctaveShiftParams{constructor(e,r,s){this.getOpenOctaveShift=e,this.getAbsoluteStartTimestamp=r,this.getAbsoluteEndTimestamp=s}}class AccidentalCalculator{constructor(){this.keySignatureNoteAlterationsDict=new Dictionary,this.currentAlterationsComparedToKeyInstructionList=[],this.currentInMeasureNoteAlterationsDict=new Dictionary}get ActiveKeyInstruction(){return this.activeKeyInstruction}set ActiveKeyInstruction(e){this.activeKeyInstruction=e,this.reactOnKeyInstructionChange()}doCalculationsAtEndOfMeasure(){this.currentInMeasureNoteAlterationsDict.clear(),this.currentAlterationsComparedToKeyInstructionList.clear();for(const e of this.keySignatureNoteAlterationsDict.keys())this.currentInMeasureNoteAlterationsDict.setValue(e,this.keySignatureNoteAlterationsDict.getValue(e))}checkAccidental(e,r){if(!r)return;const s=r.FundamentalNote+r.Octave*12,o=this.currentAlterationsComparedToKeyInstructionList.indexOf(s)>=0;if(this.currentInMeasureNoteAlterationsDict.containsKey(s)){if(o&&this.currentAlterationsComparedToKeyInstructionList.splice(this.currentAlterationsComparedToKeyInstructionList.indexOf(s),1),this.currentInMeasureNoteAlterationsDict.getValue(s)!==r.AccidentalHalfTones){this.keySignatureNoteAlterationsDict.containsKey(s)&&this.keySignatureNoteAlterationsDict.getValue(s)!==r.AccidentalHalfTones?(this.currentAlterationsComparedToKeyInstructionList.push(s),this.currentInMeasureNoteAlterationsDict.setValue(s,r.AccidentalHalfTones)):r.Accidental!==AccidentalEnum.NONE&&this.currentInMeasureNoteAlterationsDict.remove(s);const a=this.currentInMeasureNoteAlterationsDict.getValue(s);if(r.Accidental===AccidentalEnum.NONE&&(Math.abs(a)===.5?r=new Pitch(r.FundamentalNote,r.Octave,AccidentalEnum.NONE):r=new Pitch(r.FundamentalNote,r.Octave,AccidentalEnum.NATURAL)),this.isAlterAmbiguousAccidental(r.Accidental)&&!r.AccidentalXml)return;MusicSheetCalculator.symbolFactory.addGraphicalAccidental(e,r)}}else if(r.Accidental!==AccidentalEnum.NONE){if(o||this.currentAlterationsComparedToKeyInstructionList.push(s),this.currentInMeasureNoteAlterationsDict.setValue(s,r.AccidentalHalfTones),this.isAlterAmbiguousAccidental(r.Accidental)&&!r.AccidentalXml)return;MusicSheetCalculator.symbolFactory.addGraphicalAccidental(e,r)}else o&&(r=new Pitch(r.FundamentalNote,r.Octave,AccidentalEnum.NATURAL),this.currentAlterationsComparedToKeyInstructionList.splice(this.currentAlterationsComparedToKeyInstructionList.indexOf(s),1),MusicSheetCalculator.symbolFactory.addGraphicalAccidental(e,r))}isAlterAmbiguousAccidental(e){return e===AccidentalEnum.SLASHFLAT||e===AccidentalEnum.QUARTERTONEFLAT}reactOnKeyInstructionChange(){const e=this.activeKeyInstruction.AlteratedNotes;let r;this.activeKeyInstruction.Key>0?r=AccidentalEnum.SHARP:r=AccidentalEnum.FLAT,this.keySignatureNoteAlterationsDict.clear(),this.currentAlterationsComparedToKeyInstructionList.length=0;for(let s=-9;s<9;s++)for(let o=0;o0?(s=m-1,e.push({startIndex:r,endIndex:s}),r=m):y.HasEndLine&&this.rules.NewPartAndSystemAfterFinalBarline&&(s=m,e.push({startIndex:r,endIndex:s}),r=m+1)}r0?Number(O):6,k===O||P+F>b&&k%2===0?(a.push(k),P=T,k=1):k++}else P>b?(a.push(k),P=T,k=1):k++;T>b?D=I+1:D=Math.ceil(D),x===D?C+=1:(o.push(C),x=D,C=1)}o.push(C),a.push(k),a=a.filter(Boolean)}return a.length>1&&a[a.length-1]===1&&(a[a.length-2]=a[a.length-2]-1,a[a.length-1]=a[a.length-1]+1),console.log(a,o),this.buildPreparedMusicSystems(a)}buildPreparedMusicSystems(e){let r=!1;this.currentSystemParams=new SystemBuildParameters,this.currentSystemParams.currentSystem=this.initMusicSystem();for(let s=0,o=this.measureList.length;s0&&this.rules.RenderMultipleRestMeasures){d.isReducedToMultiRest=!0,d.multipleRestMeasureNumber=1;const A=d.multipleRestMeasures-1;m+=A;for(let b=1;b<=A;b++){const S=e.SourceMeasures.indexOf(d)+b;if(S>=e.SourceMeasures.length)break;const E=e.SourceMeasures[S];E.multipleRestMeasureNumber=b+1,E.isReducedToMultiRest=!0,r.push([void 0])}}}if(this.rules.AutoGenerateMultipleRestMeasuresFromRestMeasures&&this.rules.RenderMultipleRestMeasures){let m,g=0;for(let d=0,y=e.SourceMeasures.length;d0){m.isReducedToMultiRest=!0,m.multipleRestMeasureNumber=1,g++,A.multipleRestMeasureNumber=g,A.isReducedToMultiRest=!0;for(let b=0;b1){m.multipleRestMeasures=g;const b=this.createGraphicalMeasuresForSourceMeasure(m,s,a,c,o);r[m.measureListIndex]=b,g=0,m=void 0}else g=0,m=void 0}if(g>1){m.multipleRestMeasures=g,m.isReducedToMultiRest=!0;const d=this.createGraphicalMeasuresForSourceMeasure(m,s,a,c,o);r[m.measureListIndex]=d,g=0,m=void 0}}const u=o.map(m=>m.ClefType===ClefEnum.percussion);this.handleStaffEntries(u),this.calculateVerticalContainersList(),this.setIndicesToVerticalGraphicalContainers()}calculate(){this.musicSystems=[],this.clearSystemsAndMeasures(),this.clearRecreatedObjects(),this.createGraphicalTies(),this.calculateSheetLabelBoundingBoxes(),this.calculateXLayout(this.graphicalMusicSheet,this.maxInstrNameLabelLength()),this.graphicalMusicSheet.MusicPages.length=0,this.calculateMusicSystems(),GraphicalMusicSheet.transformRelativeToAbsolutePosition(this.graphicalMusicSheet)}calculateXLayout(e,r){var s;if(this.graphicalMusicSheet.MeasureList.length>0){let o=0,a;for(let l=0;lo&&(o=c),MusicSheetCalculator.setMeasuresMinStaffEntriesWidth(a,c)}if(this.rules.FixedMeasureWidth){let l=o;this.rules.FixedMeasureWidthFixedValue&&(l=this.rules.FixedMeasureWidthFixedValue);for(let c=0;c1;if(a===1&&r.Measures[0].parentSourceMeasure.ImplicitMeasure&&(c=!1),c)return;(l.MeasureNumber===0||l.MeasureNumber===1)&&(s=l.MeasureNumber),l!==r.Measures[0]&&this.rules.MeasureNumberLabelXOffset?o=this.rules.MeasureNumberLabelXOffset:o=0;const u=this.rules.UseXMLMeasureNumbers&&l.MeasureNumber===1&&l.parentSourceMeasure.getPrintedMeasureNumber()!==1;((l.MeasureNumber===s||l.MeasureNumber>=s+this.rules.MeasureNumberLabelOffset)&&!l.parentSourceMeasure.ImplicitMeasure||u)&&((l.MeasureNumber!==1||l.MeasureNumber===1&&l!==r.Measures[0]||u)&&this.calculateSingleMeasureNumberPlacement(l,r,e,o),s=l.MeasureNumber)}}calculateSingleMeasureNumberPlacement(e,r,s,o=0){const a=e.parentSourceMeasure.getPrintedMeasureNumber().toString(),l=new Label(a),c=new GraphicalLabel(l,this.rules.MeasureNumberLabelHeight,TextAlignmentEnum.LeftBottom,this.rules),u=r.SkyBottomLineCalculator;c.setLabelPositionAndShapeBorders(),c.PositionAndShape.Parent=s.PositionAndShape;const m=r.PositionAndShape.RelativePosition.x+e.PositionAndShape.RelativePosition.x-c.PositionAndShape.BorderMarginLeft+o;let g,d=m,y=m-c.PositionAndShape.BorderLeft+c.PositionAndShape.BorderRight;d-=r.PositionAndShape.RelativePosition.x,y-=r.PositionAndShape.RelativePosition.x;const A=d+.5,b=y-.5,S=u.getSkyLineMinInRange(A,b);if(e===r.Measures[0]){let E=0;if(s.GroupBrackets.length>0)for(const x of s.GroupBrackets)E=Math.min(E,x.PositionAndShape.BorderTop);else e.ParentStaff.ParentInstrument.Parent&&(E=-1);g=Math.min(S,E)}else g=S;g=Math.min(0,g),c.PositionAndShape.RelativePosition=new PointF2D(m,g),s.MeasureNumberLabels.push(c)}calculateMeasureNumberSkyline(e){const r=e.StaffLines[0];for(const s of e.MeasureNumberLabels){let o=s.PositionAndShape.RelativePosition.x,a=o-s.PositionAndShape.BorderLeft+s.PositionAndShape.BorderRight;o-=r.PositionAndShape.RelativePosition.x,a-=r.PositionAndShape.RelativePosition.x,r.SkyBottomLineCalculator.updateSkyLineInRange(o,a,s.PositionAndShape.RelativePosition.y+s.PositionAndShape.BorderMarginTop)}}layoutGraphicalTie(e,r,s){throw new Error(this.abstractNotImplementedErrorMessage)}calculateSingleStaffLineLyricsPosition(e,r){let s=0,o=this.rules.StaffHeight;const a=new Map,l=[],c=e.SkyBottomLineCalculator;let u=e.Measures.length;for(let g=0;g0){l.push(S),s=Math.max(s,S.LyricsEntries.length);const x=S.PositionAndShape.RelativePosition.x+y.x;let C=Number.MAX_VALUE,P=Number.MIN_VALUE;for(let I=0;I0){const g=e.PositionAndShape.Size.width;let d=l[0].PositionAndShape.RelativePosition.x+l[0].PositionAndShape.BorderMarginLeft+l[0].parentMeasure.PositionAndShape.RelativePosition.x;d=d>g?g:d,c.updateBottomLineInRange(d,g,m)}return l}calculateLyricsExtendsAndDashes(e){for(let r=0,s=e.length;r0||e.UnknownList.length>0){let g="";for(let S=0,E=e.EntriesList.length;S-50){let S=c/10;S+=this.rules.PlaceWordsInsideStafflineYOffset,b.PositionAndShape.RelativePosition.y=S}new GraphicalUnknownExpression(d,b,A,(m=a[s])==null?void 0:m.parentSourceMeasure,e)}}clearRecreatedObjects(){for(let e=0,r=this.staffEntriesWithGraphicalTies.length;ee.length-1&&(loglevelExports.debug("minimum measure to draw index out of range. resetting min measure index to limit."),this.rules.MinMeasureToDrawIndex=e.length-1);const r=[];for(let l=this.rules.MinMeasureToDrawIndex,c=e.length;l0){let x=0;l.staffEntries[0].relInMeasureTimestamp.RealValue===0&&(x=l.staffEntries[0].PositionAndShape.RelativePosition.x,l.MeasureNumber===1&&(x+=this.rules.ChordSymbolWholeMeasureRestXOffsetMeasure1));const C=l.PositionAndShape.Size.width-l.endInstructionsWidth,P=u.relInMeasureTimestamp.RealValue/l.parentSourceMeasure.Duration.RealValue;let k=x+(C-x)*P+g.PositionAndShape.BorderMarginLeft;c&&(k=Math.max(k,c.PositionAndShape.RelativePosition.x+c.GraphicalLabel.PositionAndShape.Size.width+this.rules.ChordSymbolXSpacing)),g.PositionAndShape.RelativePosition.x=k,g.PositionAndShape.Parent=l.staffEntries[0].PositionAndShape.Parent}const d=g.PositionAndShape,y=d.Parent;if(y.DataObject instanceof GraphicalMeasure&&u.relInMeasureTimestamp.RealValue===0&&(d.RelativePosition.x=Math.max(l.beginInstructionsWidth,d.RelativePosition.x),l.MeasureNumber===1&&d.RelativePosition.x>3&&(d.RelativePosition.x+=this.rules.ChordSymbolWholeMeasureRestXOffsetMeasure1)),u.PositionAndShape.RelativePosition.x===0){const x=e.GraphicalMeasures[a];for(const C of x){let P=!1;for(const k of C.staffEntries)if(k.relInMeasureTimestamp===u.relInMeasureTimestamp&&k.PositionAndShape.RelativePosition.x!==0){d.RelativePosition.x=k.PositionAndShape.RelativePosition.x,P=!0;break}if(P)break}}const A=d.BorderMarginLeft+y.AbsolutePosition.x+d.RelativePosition.x,b=d.BorderMarginRight+y.AbsolutePosition.x+d.RelativePosition.x;(!this.rules.ChordSymbolYAlignment||o>0)&&(o=s.getSkyLineMinInRange(A,b));let S=0;m===0?(S+=this.rules.ChordSymbolYOffset,S+=.1):S+=this.rules.ChordSymbolYPadding,S*=-1;const E=g.GraphicalLabel;E.PositionAndShape.RelativePosition.y=o+S,E.setLabelPositionAndShapeBorders(),E.PositionAndShape.calculateBoundingBox(),s.updateSkyLineInRange(A,b,o+E.PositionAndShape.BorderMarginTop),c=g}}}}calculateAlignedChordSymbolsOffset(e,r){let s=Number.MAX_SAFE_INTEGER;for(const o of e)for(const a of o.graphicalChordContainers){const l=a.PositionAndShape,c=l.Parent;let u=l.BorderMarginLeft+c.AbsolutePosition.x,m=l.BorderMarginRight+c.AbsolutePosition.x;c.DataObject instanceof GraphicalMeasure&&(u+=c.DataObject.beginInstructionsWidth,m+=c.DataObject.beginInstructionsWidth),s=Math.min(s,r.getSkyLineMinInRange(u,m))}return s}layoutMeasureWithWholeRest(e,r,s){}layoutBeams(e){}layoutArticulationMarks(e,r,s){}layoutOrnament(e,r,s){}calculateRestNotePlacementWithinGraphicalBeam(e,r,s,o,a){}calculateTupletNumbers(){if(!this.rules.TupletNumberLimitConsecutiveRepetitions)return;let e=-1,r,s=0,o,a;const l={};for(const c of this.graphicalMusicSheet.ParentMusicSheet.Instruments)for(const u of c.Voices){s=0,l[u.VoiceId]={};for(const m of u.VoiceEntries)if(m.Notes.length>0){const g=m.Notes[0];if(!g.NoteTuplet||g.NoteTuplet.shouldBeBracketed(this.rules.TupletsBracketedUseXMLValue,this.rules.TupletsBracketed,this.rules.TripletsBracketed)){e=-1,s=0,o=void 0,r=void 0;continue}if(g.NoteTuplet===a)continue;let d=g.TypeLength;if(d||(loglevelExports.warn("note missing TypeLength"),d=g.NoteTuplet.Fractions[0]),g.NoteTuplet!==o&&l[u.VoiceId][g.NoteTuplet.TupletLabelNumber]&&l[u.VoiceId][g.NoteTuplet.TupletLabelNumber][d.RealValue]){g.NoteTuplet.RenderTupletNumber=!1,a=g.NoteTuplet;continue}(g.NoteTuplet.TupletLabelNumber!==e||!d.Equals(r)||g.NoteTuplet.Bracket)&&(e=g.NoteTuplet.TupletLabelNumber,r=d,s=0),o=g.NoteTuplet,s++,s<=this.rules.TupletNumberMaxConsecutiveRepetitions&&(g.NoteTuplet.RenderTupletNumber=!0),s>this.rules.TupletNumberMaxConsecutiveRepetitions&&(g.NoteTuplet.RenderTupletNumber=!1,this.rules.TupletNumberAlwaysDisableAfterFirstMax&&(l[u.VoiceId][e]||(l[u.VoiceId][e]={}),l[u.VoiceId][e][d.RealValue]=!0)),a=o}}}calculateSlurs(){}calculateGlissandi(){}calculateDynamicExpressionsForMultiExpression(e,r,s){}calculateGraphicalVerbalContinuousDynamic(e,r){const s=e.Label,o=r.x+s.PositionAndShape.BorderMarginLeft,a=r.x+s.PositionAndShape.BorderMarginRight,l=e.ContinuousDynamic.Placement,u=e.ParentStaffLine.SkyBottomLineCalculator;let m;l===PlacementEnum.Below?(m=u.getBottomLineMaxInRange(o,a),s.PositionAndShape.RelativePosition=new PointF2D(r.x,m-s.PositionAndShape.BorderMarginTop)):(m=u.getSkyLineMinInRange(o,a),s.PositionAndShape.RelativePosition=new PointF2D(r.x,m-s.PositionAndShape.BorderMarginBottom))}calculateGraphicalContinuousDynamic(e,r){var $;const s=e.IsSoftAccent,o=e.ParentStaffLine.ParentStaff.idInMusicSheet,a=this.graphicalMusicSheet.getGraphicalMeasureFromSourceMeasureAndIndex(e.ContinuousDynamic.EndMultiExpression.SourceMeasureParent,o);if(!a){loglevelExports.warn("MusicSheetCalculator.calculateGraphicalContinuousDynamic: No endMeasure found");return}e.EndMeasure=a;const l=e.ParentStaffLine,c=a.ParentStaffLine,u=c&&l===c;let m=!1;c?m=c==null?void 0:c.isPartOfMultiStaffInstrument():l&&(m=l==null?void 0:l.isPartOfMultiStaffInstrument());const g=Fraction$1.createFromFraction(e.ContinuousDynamic.EndMultiExpression.AbsoluteTimestamp),d=this.graphicalMusicSheet.GetVerticalContainerFromTimestamp(g),y=d.getFirstNonNullStaffEntry().parentMeasure,A=y.PositionAndShape.AbsolutePosition.x+y.PositionAndShape.BorderRight;let b=new Fraction$1(0,0,0);for(const q of d.StaffEntries){const W=($=q==null?void 0:q.sourceStaffEntry)==null?void 0:$.calculateMaxNoteLength(!1);W!=null&&W.gt(b)&&(b=W)}const S=!s&&e.ContinuousDynamic.DynamicType===ContDynamicEnum.diminuendo,E=this.getRelativePositionInStaffLineFromTimestamp(g,o,c,m,0,S),x=Fraction$1.plus(g,b),C=this.getRelativePositionInStaffLineFromTimestamp(x,o,c,m,0,e.ContinuousDynamic.DynamicType===ContDynamicEnum.diminuendo),P=this.rules.SoftAccentWedgePadding,k=d.getFirstNonNullStaffEntry().PositionAndShape.Size.width,I=this.rules.SoftAccentSizeFactor;s?(r.x-=k/2*I+P,E.x=r.x+k/2*I):C.x>E.x&&C.xF){const ue=T.StaffLines[q].PositionAndShape.RelativePosition.y-l.PositionAndShape.RelativePosition.y-this.rules.StaffHeight;G=this.rules.StaffHeight+ue/2}else G=this.rules.WedgePlacementBelowY;G-=this.rules.WedgeOpeningLength/2,u||(U=G);let W=D.getBottomLineMaxInRange(V,Q);if(W>G&&(G=W),FU&&(U=W),U+=this.rules.WedgeOpeningLength/2,U+=this.rules.WedgeVerticalMargin),G+=this.rules.WedgeOpeningLength/2,G+=this.rules.WedgeVerticalMargin}else if(N===PlacementEnum.Above){if(l.ParentStaff.ParentInstrument.Staves.length===1)G=this.rules.WedgePlacementAboveY;else{let W=0;F>0&&(W=F-1);const xe=T.StaffLines[W];G=-(l.PositionAndShape.RelativePosition.y-xe.PositionAndShape.RelativePosition.y-this.rules.StaffHeight)/2}G+=this.rules.WedgeOpeningLength/2,u||(U=G);let q=D.getSkyLineMinInRange(V,Q);if(q1&&F>0){const W=l.findClosestStaffEntry(V),xe=l.findClosestStaffEntry(Q);W&&xe&&W.parentVerticalContainer}u||(q=c.SkyBottomLineCalculator.getSkyLineMinInRange(R,_),que&&(ue=Y),ue+=this.rules.WedgeOpeningLength/2,ue+=this.rules.WedgeVerticalMargin}else if(N===PlacementEnum.Above){const Y=xe.SkyBottomLineCalculator.getSkyLineMinInRange(R,_);Y-d/2?u=-d/2:u=m-e.PositionAndShape.BorderMarginBottom}else u=m-e.PositionAndShape.BorderMarginBottom;e.PositionAndShape.RelativePosition=new PointF2D(r.x,u)}else if(e.Placement===PlacementEnum.Below){const m=c.getBottomLineMaxInRange(a,l),g=o.ParentStaff.ParentInstrument.Staves[o.ParentStaff.ParentInstrument.Staves.length-1];if(o.isPartOfMultiStaffInstrument()&&o.ParentStaff!==g){const y=o.ParentMusicSystem.StaffLines[o.ParentMusicSystem.StaffLines.indexOf(o)+1].PositionAndShape.RelativePosition.y-o.PositionAndShape.RelativePosition.y-this.rules.StaffHeight,A=e.PositionAndShape.BorderMarginBottom;m+Ae.PositionAndShape.Size.width&&(A=e.PositionAndShape.Size.width-this.rules.MeasureRightMargin,y=A-g.PositionAndShape.MarginSize.width,r.x=y-g.PositionAndShape.BorderMarginLeft);let b;const S=e.SkyBottomLineCalculator;return a===PlacementEnum.Below?b=S.getBottomLineMaxInRange(y,A)+u:b=S.getSkyLineMinInRange(y,A)-u,g.PositionAndShape.RelativePosition=new PointF2D(r.x,b),a===PlacementEnum.Below?S.updateBottomLineInRange(y,A,g.PositionAndShape.BorderMarginBottom+b):S.updateSkyLineInRange(y,A,g.PositionAndShape.BorderMarginTop+b),g}calculateTempoExpressionsForMultiTempoExpression(e,r,s,o){metronomeMarks={};const a=Fraction$1.plus(e.AbsoluteTimestamp,r.Timestamp),l=this.graphicalMusicSheet.MeasureList[s];let c=new PointF2D;if(r.ContinuousTempo||r.InstantaneousTempo){if(this.rules.MinMeasureToDrawIndex>0||!l[0])return;let u=l[0].ParentStaffLine,m=l[0].PositionAndShape.RelativePosition.x,g=0;for(let d=0;d0){u=l[d].ParentStaffLine,m=l[d].PositionAndShape.RelativePosition.x,g=d;break}if(c=this.getRelativePositionInStaffLineFromTimestamp(a,g,u,u.isPartOfMultiStaffInstrument(),m),r.EntriesList.length>0&&r.EntriesList[0].Expression instanceof InstantaneousTempoExpression){const d=r.EntriesList[0].Expression;if(d.Placement=PlacementEnum.Above,u.Measures[0].staffEntries.length>0&&Math.abs(c.x-u.Measures[0].staffEntries[0].PositionAndShape.RelativePosition.x)===0&&u.ParentMusicSystem===this.musicSystems[0]){const y=u.Measures[0].FirstInstructionStaffEntry;if(y){const A=y.GraphicalInstructions.last();c.x=A.PositionAndShape.RelativePosition.x}this.rules.CompactMode&&(c.x=u.PositionAndShape.RelativePosition.x+u.Measures[0].PositionAndShape.RelativePosition.x)}}for(const d of r.EntriesList){let y=TextAlignmentEnum.CenterBottom;this.rules.CompactMode&&(y=TextAlignmentEnum.LeftBottom);const A=this.calculateLabel(u,c,d.label,r.getFontstyleOfFirstEntry(),d.Expression.Placement,this.rules.UnknownTextHeight,y,this.rules.TempoYSpacing);if(d.Expression.ColorXML&&this.rules.ExpressionsUseXMLColor&&(A.ColorXML=d.Expression.ColorXML),d.Expression instanceof InstantaneousTempoExpression){for(const S of u.AbstractExpressions)S instanceof GraphicalInstantaneousTempoExpression&&(S.SourceExpression.Label,d.Expression.Label);new GraphicalInstantaneousTempoExpression(d.Expression,A).ParentStaffLine||loglevelExports.warn("Adding staffline didn't work"),d.Expression.Enum===TempoEnum.metronomeMark&&(metronomeMarks[s]=d.Expression)}else d.Expression instanceof ContinuousTempoExpression;if(o===e.TempoExpressions.length-1)for(const b of Object.values(metronomeMarks))this.createMetronomeMark(b,s);else if(d.Expression instanceof ContinuousTempoExpression){for(const b of u.AbstractExpressions)b instanceof GraphicalInstantaneousTempoExpression&&(b.SourceExpression.Label,d.Expression.Label);u.AbstractExpressions.push(new GraphicalInstantaneousTempoExpression(d.Expression,A))}}}}createMetronomeMark(e,r){throw new Error(this.abstractNotImplementedErrorMessage)}graphicalMeasureCreatedCalculations(e){}clearSystemsAndMeasures(){for(let e=0,r=this.graphicalMusicSheet.MusicPages.length;e-1&&y.PositionAndShape.ChildElements.splice(A,1),y.FirstInstructionStaffEntry=void 0,y.beginInstructionsWidth=0}if(y.LastInstructionStaffEntry){const A=y.PositionAndShape.ChildElements.indexOf(y.LastInstructionStaffEntry.PositionAndShape);A>-1&&y.PositionAndShape.ChildElements.splice(A,1),y.LastInstructionStaffEntry=void 0,y.endInstructionsWidth=0}}m.Measures=[],m.PositionAndShape.ChildElements=[]}l.StaffLines.length=0,l.PositionAndShape.ChildElements=[]}s.MusicSystems=[],s.PositionAndShape.ChildElements=[]}this.graphicalMusicSheet.MusicPages=[]}handleVoiceEntry(e,r,s,o,a,l,c,u,m,g=void 0,d=void 0){e.StemDirectionXml!==StemDirectionType.Undefined&&this.rules.SetWantedStemDirectionByXml&&e.StemDirectionXml!==void 0?e.WantedStemDirection=e.StemDirectionXml:this.calculateStemDirectionFromVoices(e);const y=r.findOrCreateGraphicalVoiceEntry(e);y.octaveShiftValue=u;const A=r.tabStaffEntry;let b;A&&(b=A.findOrCreateGraphicalVoiceEntry(e));for(let S=0,E=e.Notes.length;S-1)continue;let C;if(e.IsGrace?C=MusicSheetCalculator.symbolFactory.createGraceNote(x,y,a,this.rules,u):(C=MusicSheetCalculator.symbolFactory.createNote(x,y,a,u,this.rules,void 0),MusicSheetCalculator.stafflineNoteCalculator.trackNote(C)),x.Pitch&&this.checkNoteForAccidental(C,s,a,u),this.resetYPositionForLeadSheet(C.PositionAndShape),r.addGraphicalNoteToListAtCorrectYPosition(y,C),C.PositionAndShape.calculateBoundingBox(),this.leadSheet||(x.NoteBeam!==void 0&&x.PrintObject&&(!(x instanceof TabNote)||this.rules.TabBeamsRendered)&&this.handleBeam(C,x.NoteBeam,c),x.NoteTuplet!==void 0&&x.PrintObject&&this.handleTuplet(C,x.NoteTuplet,l)),b){const P=MusicSheetCalculator.symbolFactory.createNote(x,b,a,u,this.rules,void 0);A.addGraphicalNoteToListAtCorrectYPosition(b,P),P.PositionAndShape.calculateBoundingBox(),this.leadSheet||x.NoteTuplet&&this.handleTuplet(P,x.NoteTuplet,l)}}return e.Articulations.length>0&&this.handleVoiceEntryArticulations(e.Articulations,e,r),e.TechnicalInstructions.length>0&&this.handleVoiceEntryTechnicalInstructions(e.TechnicalInstructions,e,r),e.LyricsEntries.size()>0&&this.handleVoiceEntryLyrics(e,r,o),e.OrnamentContainer&&this.handleVoiceEntryOrnaments(e.OrnamentContainer,e,r),u}resetYPositionForLeadSheet(e){this.leadSheet&&(e.RelativePosition=new PointF2D(e.RelativePosition.x,0))}layoutVoiceEntries(e,r){if(e.PositionAndShape.RelativePosition=new PointF2D(0,0),!this.leadSheet)for(const s of e.graphicalVoiceEntries){const o=s.notes;if(o.length===0)continue;const a=o[0].sourceNote.ParentVoiceEntry,l=o[0].sourceNote.Pitch!==void 0;this.layoutVoiceEntry(a,o,e,l)}}maxInstrNameLabelLength(){var r;let e=0;for(const s of this.graphicalMusicSheet.ParentMusicSheet.Instruments)if((r=s.NameLabel)!=null&&r.print&&s.Voices.length>0&&s.Voices[0].Visible){let o=s.NameLabel;this.rules.RenderPartNames||(o=new Label("",o.textAlignment,o.font));const a=new GraphicalLabel(o,this.rules.InstrumentLabelTextHeight,TextAlignmentEnum.LeftCenter,this.rules);a.setLabelPositionAndShapeBorders(),e=Math.max(e,a.PositionAndShape.MarginSize.width)}return this.rules.RenderPartNames?e:0}calculateSheetLabelBoundingBoxes(){var o;const e=this.graphicalMusicSheet.ParentMusicSheet,r=this.rules.DefaultColorTitle;if(e.Title!==void 0&&this.rules.RenderTitle){const a=new GraphicalLabel(e.Title,this.rules.SheetTitleHeight,TextAlignmentEnum.CenterBottom,this.rules);a.Label.IsCreditLabel=!0,a.Label.colorDefault=r,this.graphicalMusicSheet.Title=a,a.setLabelPositionAndShapeBorders()}else this.rules.RenderTitle||(this.graphicalMusicSheet.Title=void 0);if(e.Subtitle!==void 0&&this.rules.RenderSubtitle){const a=new GraphicalLabel(e.Subtitle,this.rules.SheetSubtitleHeight,TextAlignmentEnum.CenterCenter,this.rules);a.Label.IsCreditLabel=!0,a.Label.colorDefault=r,this.graphicalMusicSheet.Subtitle=a,a.setLabelPositionAndShapeBorders()}else this.rules.RenderSubtitle||(this.graphicalMusicSheet.Subtitle=void 0);if(e.Composer!==void 0&&this.rules.RenderComposer){const a=new GraphicalLabel(e.Composer,this.rules.SheetComposerHeight,TextAlignmentEnum.RightCenter,this.rules);a.Label.IsCreditLabel=!0,a.Label.colorDefault=r,this.graphicalMusicSheet.Composer=a,a.setLabelPositionAndShapeBorders()}else this.rules.RenderComposer||(this.graphicalMusicSheet.Composer=void 0);if(e.Lyricist!==void 0&&this.rules.RenderLyricist){const a=new GraphicalLabel(e.Lyricist,this.rules.SheetAuthorHeight,TextAlignmentEnum.RightCenter,this.rules);a.Label.IsCreditLabel=!0,a.Label.colorDefault=r,this.graphicalMusicSheet.Lyricist=a,a.setLabelPositionAndShapeBorders()}else this.rules.RenderLyricist||(this.graphicalMusicSheet.Lyricist=void 0);if(e.Copyright!==void 0&&this.rules.RenderCopyright){const a=new GraphicalLabel(e.Copyright,this.rules.SheetCopyrightHeight,TextAlignmentEnum.CenterBottom,this.rules);a.Label.IsCreditLabel=!0,a.Label.colorDefault=r,this.graphicalMusicSheet.Copyright=a,a.setLabelPositionAndShapeBorders()}else this.rules.RenderCopyright||(this.graphicalMusicSheet.Copyright=void 0);const s=(o=this.graphicalMusicSheet.musicSheet.sourceMeasures)==null?void 0:o[0];if(s&&s.FirstInstructionsStaffEntries.length>0){const a=s.FirstInstructionsStaffEntries[0];let l,c;for(let u=0,m=a.Instructions.length;u0&&g.graphicalVoiceEntries[0].notes.length===1){const d=g.graphicalVoiceEntries[0].notes[0];!d.sourceNote.Pitch&&new Fraction$1(1,2).lt(d.sourceNote.Length)&&this.layoutMeasureWithWholeRest(d,g,m)}}}}}}optimizeRestNotePlacement(e,r){if(e.graphicalVoiceEntries.length===0)return;const s=e.graphicalVoiceEntries[0].notes;if(s.length===0)return;const o=s[0],a=o.sourceNote.isRest();if(e.graphicalVoiceEntries.length===2){let l=!1;const c=e.graphicalVoiceEntries[1].notes;c.length>0&&(l=c[0].sourceNote.isRest()),a&&l?this.calculateTwoRestNotesPlacementWithCollisionDetection(e):(a||l)&&this.calculateRestNotePlacementWithCollisionDetectionFromGraphicalNote(e)}else if(a&&e!==r.staffEntries[0]&&e!==r.staffEntries[r.staffEntries.length-1]){const l=r.staffEntries.indexOf(e),c=r.staffEntries[l-1],u=r.staffEntries[l+1];if(c.graphicalVoiceEntries.length===1){const m=c.graphicalVoiceEntries[0].notes[0];if(m.sourceNote.NoteBeam!==void 0&&u.graphicalVoiceEntries.length===1){const g=u.graphicalVoiceEntries[0].notes[0];g.sourceNote.NoteBeam!==void 0&&m.sourceNote.NoteBeam===g.sourceNote.NoteBeam&&(this.calculateRestNotePlacementWithinGraphicalBeam(e,o,m,u,g),e.PositionAndShape.calculateBoundingBox())}}}}getRelativePositionInStaffLineFromTimestamp(e,r,s,o,a=0,l=!1){let c=new PointF2D,u,m;const g=this.graphicalMusicSheet.VerticalGraphicalStaffEntryContainers.length,d=this.graphicalMusicSheet.GetInterpolatedIndexInVerticalContainers(e),y=Math.min(Math.floor(d),g-1),A=Math.min(Math.ceil(d),g-1);if(y<0||r<0)return c;if(u=this.getFirstLeftNotNullStaffEntryFromContainer(y,r,o),m=this.getFirstRightNotNullStaffEntryFromContainer(A,r,o),u&&m){let b=u.parentMeasure.PositionAndShape.RelativePosition.x;a>0&&(b=a);let S=u.PositionAndShape.RelativePosition.x+b,E=m.PositionAndShape.RelativePosition.x+m.parentMeasure.PositionAndShape.RelativePosition.x;const x=e.RealValue>m.getAbsoluteTimestamp().RealValue;a>0?E=m.PositionAndShape.RelativePosition.x+b:l&&(u.getAbsoluteTimestamp().RealValue===e.RealValue||x)&&(S=u.PositionAndShape.RelativePosition.x+u.PositionAndShape.BorderLeft+b,E=S);let C=0;if(u!==m){const P=u.getAbsoluteTimestamp(),k=m.getAbsoluteTimestamp();C=Fraction$1.minus(e,P).RealValue/Fraction$1.minus(k,P).RealValue}u.parentMeasure.ParentStaffLine!==m.parentMeasure.ParentStaffLine&&(u.parentMeasure.ParentStaffLine===s?E=s.PositionAndShape.Size.width:S=s.PositionAndShape.RelativePosition.x),c=new PointF2D(S+(E-S)*C,0)}return c}getRelativeXPositionFromTimestamp(e){const r=this.graphicalMusicSheet.VerticalGraphicalStaffEntryContainers.length,s=this.graphicalMusicSheet.GetInterpolatedIndexInVerticalContainers(e),o=Math.max(0,Math.min(Math.round(s),r-1)),a=this.graphicalMusicSheet.VerticalGraphicalStaffEntryContainers[o].getFirstNonNullStaffEntry();return a.PositionAndShape.RelativePosition.x+a.parentMeasure.PositionAndShape.RelativePosition.x}calculatePageLabels(e){var g,d;this.rules.RenderSingleHorizontalStaffline&&(e.PositionAndShape.BorderRight=e.PositionAndShape.Size.width,e.PositionAndShape.calculateBoundingBox(),this.graphicalMusicSheet.ParentMusicSheet.pageWidth=e.PositionAndShape.Size.width);let r=10,s=-1;if(e.MusicSystems.length>0){const y=e.MusicSystems[0];r=y.PositionAndShape.RelativePosition.y+y.PositionAndShape.BorderTop;const A=e.MusicSystems[e.MusicSystems.length-1];s=A.PositionAndShape.RelativePosition.y+A.PositionAndShape.BorderBottom}if(this.graphicalMusicSheet.Title&&this.rules.RenderTitle){const y=this.graphicalMusicSheet.Title;y.PositionAndShape.Parent=e.PositionAndShape;const A=new PointF2D;A.x=this.graphicalMusicSheet.ParentMusicSheet.pageWidth/2,A.y=this.rules.TitleTopDistance+this.rules.SheetTitleHeight,y.PositionAndShape.RelativePosition=A,e.Labels.push(y)}if(this.graphicalMusicSheet.Subtitle&&this.rules.RenderTitle&&this.rules.RenderSubtitle){const y=this.graphicalMusicSheet.Subtitle;y.PositionAndShape.Parent=e.PositionAndShape;const A=new PointF2D;A.x=this.graphicalMusicSheet.ParentMusicSheet.pageWidth/2,A.y=this.rules.TitleTopDistance+this.rules.SheetTitleHeight+this.rules.SheetMinimumDistanceBetweenTitleAndSubtitle;const b=(g=y.TextLines)==null?void 0:g.length;b>1&&(A.y+=y.PositionAndShape.BorderBottom*(b-1)/b),y.PositionAndShape.RelativePosition=A,e.Labels.push(y)}const o=this.graphicalMusicSheet.Composer;let a;const c=this.graphicalMusicSheet.Composer&&this.rules.RenderComposer&&this.graphicalMusicSheet.Lyricist&&this.rules.RenderLyricist?2:0;if(o&&this.rules.RenderComposer){o.PositionAndShape.Parent=e.PositionAndShape,o.setLabelPositionAndShapeBorders();const y=new PointF2D;y.x=this.graphicalMusicSheet.ParentMusicSheet.pageWidth-this.rules.PageRightMargin,y.y=r,y.y-=this.rules.SystemComposerDistance;const A=(d=o.TextLines)==null?void 0:d.length;A>1&&(y.y-=o.PositionAndShape.BorderBottom*(A-1)/A),a=y.y,y.y-=c,o.PositionAndShape.RelativePosition=y,e.Labels.push(o)}const u=this.graphicalMusicSheet.Lyricist;if(u&&this.rules.RenderLyricist){u.PositionAndShape.Parent=e.PositionAndShape,u.setLabelPositionAndShapeBorders();const y=new PointF2D;y.x=this.graphicalMusicSheet.ParentMusicSheet.pageWidth-this.rules.PageRightMargin,y.y=r,y.y-=this.rules.SystemLyricistDistance,y.y+=u.PositionAndShape.BorderBottom,y.y=Math.min(y.y,a!=null?a:Number.MAX_SAFE_INTEGER),y.y+=c,u.PositionAndShape.RelativePosition=y,e.Labels.push(u)}const m=this.graphicalMusicSheet.Copyright;if(m&&this.rules.RenderCopyright){m.PositionAndShape.Parent=e.PositionAndShape,m.setLabelPositionAndShapeBorders();const y=new PointF2D;y.x=e.PositionAndShape.Size.width/2,y.y=s+this.rules.SheetCopyrightMargin,y.y-=m.PositionAndShape.BorderTop,m.PositionAndShape.RelativePosition=y,e.Labels.push(m)}}createGraphicalTies(){for(let e=0;e=0&&this.staffEntriesWithGraphicalTies.push(a)}a=c}}setTieDirections(e){if(!e)return;const r=e.ties;if(r.length===1){const s=r[0];if(s.TieDirection===PlacementEnum.NotYetDefined){const o=s.Notes[0].ParentVoiceEntry.ParentVoice.VoiceId;(o===2||o===6)&&(s.TieDirection=PlacementEnum.Below)}}if(r.length>1){let s;for(const o of r){const a=o.Notes[0];(!s||a.Pitch.getHalfTone()>s.Pitch.getHalfTone())&&(s=a)}for(const o of r)o.TieDirection===PlacementEnum.NotYetDefined&&(o.Notes[0]===s?o.TieDirection=PlacementEnum.Above:o.TieDirection=PlacementEnum.Below)}}createAccidentalCalculators(){const e=[],r=this.graphicalMusicSheet.ParentMusicSheet.getFirstSourceMeasure();if(r)for(let s=0;s1)return;d=MusicSheetCalculator.symbolFactory.createGraphicalMeasure(e,g)}if(d.hasError=e.getErrorInMeasure(u),e.FirstInstructionsStaffEntries[u])for(let x=0,C=e.FirstInstructionsStaffEntries[u].Instructions.length;x0){const M=C.Instructions[0];MusicSheetCalculator.symbolFactory.createInStaffClef(P,M)}this.rules.RenderChordSymbols&&((E=C.ChordContainers)==null?void 0:E.length)>0&&(C.ParentStaff.ParentInstrument.HasChordSymbols=!0,MusicSheetCalculator.symbolFactory.createChordSymbols(C,P,o.ActiveKeyInstruction,this.graphicalMusicSheet.ParentMusicSheet.Transpose))}}if(o.doCalculationsAtEndOfMeasure(),e.LastInstructionsStaffEntries[u]){const x=e.LastInstructionsStaffEntries[u];for(let C=0,P=x.Instructions.length;C=1&&d.staffEntries.length===0){const x=new SourceStaffEntry(new VerticalSourceStaffEntryContainer(d.parentSourceMeasure,d.parentSourceMeasure.AbsoluteTimestamp,d.parentSourceMeasure.CompleteNumberOfStaves),g);if(g.Voices.length===0){const F=new Voice(d.ParentStaff.ParentInstrument,-1);g.Voices.push(F)}const C=new VoiceEntry(new Fraction$1(0,1),g.Voices[0],x);let P=e.Duration;P.RealValue===0&&(P=e.ActiveTimeSignature.clone());const k=new Note$1(C,x,P,void 0,e,!0);k.IsWholeMeasureRest=!0,k.PrintObject=this.rules.FillEmptyMeasuresWithWholeRest===FillEmptyMeasuresWithWholeRests.YesVisible,C.addNote(k);const I=MusicSheetCalculator.symbolFactory.createStaffEntry(x,d);d.addGraphicalStaffEntry(I),I.relInMeasureTimestamp=C.Timestamp;const M=MusicSheetCalculator.symbolFactory.createVoiceEntry(C,I);I.graphicalVoiceEntries.push(M);const T=MusicSheetCalculator.symbolFactory.createNote(k,M,new ClefInstruction,OctaveEnum.NONE,this.rules);MusicSheetCalculator.stafflineNoteCalculator.trackNote(T),M.notes.push(T)}d.hasOnlyRests=!0;for(const x of d.staffEntries)if(d.hasOnlyRests=x.hasOnlyRests(),!d.hasOnlyRests)break;return d}checkNoteForAccidental(e,r,s,o){let a=e.sourceNote.Pitch;const l=e.parentVoiceEntry.parentStaffEntry.parentMeasure.getTransposedHalftones();l!==0&&e.sourceNote.ParentStaffEntry.ParentStaff.ParentInstrument.MidiInstrumentId!==MidiInstrument.Percussion&&(a=e.Transpose(r.ActiveKeyInstruction,s,l,o),e.sourceNote.TransposedPitch=a),e.sourceNote.halfTone=a.getHalfTone(),r.checkAccidental(e,a)}handleStaffEntries(e){for(let r=0,s=this.graphicalMusicSheet.MeasureList.length;r0&&!this.rules.PercussionUseCajon2NoteSystem&&e[a]&&(this.rules.PercussionOneLineCutoff===-1||MusicSheetCalculator.stafflineNoteCalculator.getStafflineUniquePositionCount(a)0&&u.graphicalVoiceEntries[0].notes.length>0&&(this.layoutVoiceEntries(u,a),this.layoutStaffEntry(u));this.graphicalMeasureCreatedCalculations(c)}}}}calculateSkyBottomLines(){for(const e of this.musicSystems)for(const r of e.StaffLines)r.SkyBottomLineCalculator.calculateLines()}calculateExpressionAlignements(){}calculateStaffEntryArticulationMarks(){for(let e=0,r=this.musicSystems.length;e0&&this.layoutArticulationMarks(S.Articulations,S,y)}}}}}}calculateOrnaments(){for(let e=0,r=this.musicSystems.length;e0&&o.LyricVersesNumbers.sort()}for(let r=0,s=this.musicSystems.length;r=0&&(o=r.GraphicalLyricsEntries[s+1]),!o)return;const a=e.StaffEntryParent.parentMeasure.ParentStaffLine,l=o.StaffEntryParent.parentMeasure.ParentStaffLine,c=e.StaffEntryParent,u=o.StaffEntryParent;if(e.StaffEntryParent.parentMeasure.ParentStaffLine===o.StaffEntryParent.parentMeasure.ParentStaffLine){const m=c.parentMeasure.PositionAndShape.RelativePosition.x+c.PositionAndShape.RelativePosition.x+e.GraphicalLabel.PositionAndShape.RelativePosition.x+e.GraphicalLabel.PositionAndShape.BorderMarginRight-e.GraphicalLabel.CenteringXShift,g=u.parentMeasure.PositionAndShape.RelativePosition.x+u.PositionAndShape.RelativePosition.x+e.GraphicalLabel.PositionAndShape.RelativePosition.x+o.GraphicalLabel.PositionAndShape.BorderMarginLeft,d=e.GraphicalLabel.PositionAndShape.RelativePosition.y;let y=1;g-m>this.rules.MinimumDistanceBetweenDashes*3&&(y=Math.floor((g-m)/this.rules.MinimumDistanceBetweenDashes)-1),y===1?this.calculateSingleDashForLyricWord(a,m,g,d):this.calculateDashes(a,m,g,d)}else{const m=c.parentMeasure.PositionAndShape.RelativePosition.x+c.PositionAndShape.RelativePosition.x+e.GraphicalLabel.PositionAndShape.BorderMarginRight,g=a.Measures[a.Measures.length-1],d=g.PositionAndShape.RelativePosition.x+g.PositionAndShape.Size.width;let y=e.GraphicalLabel.PositionAndShape.RelativePosition.y;if(this.calculateDashes(a,m,d,y),l&&l.Measures[0]&&u.parentMeasure.ParentStaffLine&&!(u===u.parentMeasure.staffEntries[0]&&u.parentMeasure===u.parentMeasure.ParentStaffLine.Measures[0])){const A=l.Measures[0].staffEntries[0].PositionAndShape.RelativePosition.x,b=u.parentMeasure.PositionAndShape.RelativePosition.x+u.PositionAndShape.RelativePosition.x+o.GraphicalLabel.PositionAndShape.BorderMarginLeft;y=o.GraphicalLabel.PositionAndShape.RelativePosition.y,this.calculateDashes(l,A,b,y)}}}calculateDashes(e,r,s,o){let a=s-r;if(ar;)a=this.calculateRightAndLeftDashesForLyricWord(e,r,s,o),r+=c,s-=c,u++;a>c*2&&this.calculateSingleDashForLyricWord(e,r,s,o)}}calculateSingleDashForLyricWord(e,r,s,o){const a=new Label("-");a.colorDefault=this.rules.DefaultColorLyrics;let l=this.rules.LyricsHeight;s-r<.8&&(l*=.8,o-=.1*l);const c=new GraphicalLabel(a,l,TextAlignmentEnum.CenterBottom,this.rules);c.setLabelPositionAndShapeBorders(),e.LyricsDashes.push(c),this.staffLinesWithLyricWords.indexOf(e)===-1&&this.staffLinesWithLyricWords.push(e),c.PositionAndShape.Parent=e.PositionAndShape;const u=new PointF2D(r+(s-r)/2,o);c.PositionAndShape.RelativePosition=u}calculateLyricExtend(e){let r=e.GraphicalLabel.PositionAndShape.RelativePosition.y;const s=e.StaffEntryParent,o=s.parentMeasure.ParentStaffLine;let a,l;const c=s.parentMeasure.ParentStaff.idInMusicSheet;for(let u=s.parentVerticalContainer.Index+1;u0)break;a=m,l=a.parentMeasure.ParentStaffLine,l||(l=s.parentMeasure.ParentStaffLine)}}if(!(!a||!l))if(o===l&&a.parentMeasure.ParentStaffLine){const u=s.parentMeasure.PositionAndShape.RelativePosition.x+s.PositionAndShape.RelativePosition.x+e.GraphicalLabel.PositionAndShape.BorderMarginRight,m=a.parentMeasure.PositionAndShape.RelativePosition.x+a.PositionAndShape.RelativePosition.x+a.PositionAndShape.BorderMarginRight;r-=e.GraphicalLabel.PositionAndShape.Size.height/4,this.calculateSingleLyricWordWithUnderscore(o,u,m,r)}else{const u=o.Measures[o.Measures.length-1].PositionAndShape,m=s.parentMeasure.PositionAndShape.RelativePosition.x+s.PositionAndShape.RelativePosition.x+e.GraphicalLabel.PositionAndShape.BorderMarginRight,g=u.RelativePosition.x+u.Size.width;if(r-=e.GraphicalLabel.PositionAndShape.Size.height/4,this.calculateSingleLyricWordWithUnderscore(o,m,g,r),!a)return;if(a.parentMeasure.ParentStaffLine&&a.parentMeasure.staffEntries&&!(a===a.parentMeasure.staffEntries[0]&&a.parentMeasure===a.parentMeasure.ParentStaffLine.Measures[0])){const d=l.Measures[0].staffEntries[0].PositionAndShape.RelativePosition.x,y=a.parentMeasure.PositionAndShape.RelativePosition.x+a.PositionAndShape.RelativePosition.x+a.PositionAndShape.BorderMarginRight;this.calculateSingleLyricWordWithUnderscore(l,d,y,r)}}}calculateSingleLyricWordWithUnderscore(e,r,s,o){const a=new PointF2D(r,o),l=new PointF2D(s,o),c=new GraphicalLine(a,l,this.rules.LyricUnderscoreLineWidth);c.colorHex=this.rules.DefaultColorLyrics,e.LyricLines.push(c),this.staffLinesWithLyricWords.indexOf(e)===-1&&this.staffLinesWithLyricWords.push(e)}calculateRightAndLeftDashesForLyricWord(e,r,s,o){const a=new Label("-");a.colorDefault=this.rules.DefaultColorLyrics;const l=new GraphicalLabel(a,this.rules.LyricsHeight,TextAlignmentEnum.CenterBottom,this.rules);l.setLabelPositionAndShapeBorders(),e.LyricsDashes.push(l),this.staffLinesWithLyricWords.indexOf(e)===-1&&this.staffLinesWithLyricWords.push(e),l.PositionAndShape.Parent=e.PositionAndShape;const c=new PointF2D(r,o);l.PositionAndShape.RelativePosition=c;const u=new Label("-"),m=new GraphicalLabel(u,this.rules.LyricsHeight,TextAlignmentEnum.CenterBottom,this.rules);m.setLabelPositionAndShapeBorders(),e.LyricsDashes.push(m),m.PositionAndShape.Parent=e.PositionAndShape;const g=new PointF2D(s,o);return m.PositionAndShape.RelativePosition=g,m.PositionAndShape.RelativePosition.x-l.PositionAndShape.RelativePosition.x}calculateDynamicExpressions(){const e=Math.min(this.graphicalMusicSheet.ParentMusicSheet.SourceMeasures.length-1,this.rules.MaxMeasureToDrawIndex),r=Math.min(this.rules.MinMeasureToDrawIndex,this.graphicalMusicSheet.ParentMusicSheet.SourceMeasures.length);for(let s=r;s<=e;s++){const o=this.graphicalMusicSheet.ParentMusicSheet.SourceMeasures[s];this.dynamicExpressionMap.clear();for(let a=0;a=0;o--)if(this.graphicalMusicSheet.VerticalGraphicalStaffEntryContainers[o].StaffEntries[r])return this.graphicalMusicSheet.VerticalGraphicalStaffEntryContainers[o].StaffEntries[r]}getFirstRightNotNullStaffEntryFromContainer(e,r,s){if(this.graphicalMusicSheet.VerticalGraphicalStaffEntryContainers[e].StaffEntries[r])return this.graphicalMusicSheet.VerticalGraphicalStaffEntryContainers[e].StaffEntries[r];for(let o=e+1;o0||r.StaffLinkedExpressions[s][o].UnknownList.length>0)&&this.calculateMoodAndUnknownExpression(r.StaffLinkedExpressions[s][o],e,s)}}calculateStemDirectionFromVoices(e){if(e.ParentSourceStaffEntry.Link!==void 0)if(e===e.ParentSourceStaffEntry.VoiceEntries[0]){e.WantedStemDirection=StemDirectionType.Up;return}else{e.WantedStemDirection=StemDirectionType.Down;return}else e.ParentVoice instanceof LinkedVoice?e.WantedStemDirection=StemDirectionType.Down:e.ParentSourceStaffEntry.VoiceEntries.length>1&&(e.WantedStemDirection=StemDirectionType.Up)}setBeamNotesWantedStemDirections(e){if(!(e.Notes.length>0))return;const r=e.Notes[0].NoteBeam;if(r){for(const s of r.Notes)if(s.ParentVoiceEntry.WantedStemDirection!==StemDirectionType.Undefined&&s.ParentVoiceEntry.ParentSourceStaffEntry.ParentStaff.Id===e.ParentSourceStaffEntry.ParentStaff.Id){e.WantedStemDirection=s.ParentVoiceEntry.WantedStemDirection;break}}}}class InstrumentalGroup{constructor(e,r,s){this.instrumentalGroups=[],this.name=e,this.musicSheet=r,this.parent=s}get InstrumentalGroups(){return this.instrumentalGroups}get Parent(){return this.parent}get Name(){return this.name}set Name(e){this.name=e}get GetMusicSheet(){return this.musicSheet}}class Instrument extends InstrumentalGroup{constructor(e,r,s,o){super(void 0,s,o),this.Transpose=0,this.voices=[],this.staves=[],this.hasLyrics=!1,this.hasChordSymbols=!1,this.playbackTranspose=0,this.lyricVersesNumbers=[],this.subInstruments=[],this.id=e,this.idString=r,this.nameLabel=new Label(r)}get Voices(){return this.voices}get Staves(){return this.staves}get NameLabel(){return this.nameLabel}get HasLyrics(){return this.hasLyrics}set HasLyrics(e){this.hasLyrics=e}get HasChordSymbols(){return this.hasChordSymbols}set HasChordSymbols(e){this.hasChordSymbols=e}get LyricVersesNumbers(){return this.lyricVersesNumbers}set LyricVersesNumbers(e){this.lyricVersesNumbers=e}get Name(){return this.nameLabel.text}set Name(e){this.nameLabel.text=e}get IdString(){return this.idString}get Id(){return this.id}get MidiInstrumentId(){return this.subInstruments[0].midiInstrumentID}set MidiInstrumentId(e){this.subInstruments[0].midiInstrumentID=e}get Volume(){return this.subInstruments[0].volume}set Volume(e){for(let r=0,s=this.subInstruments.length;r0?this.Voices[0].Visible:!1}set Visible(e){for(let r=0,s=this.Voices.length;r-1&&this.parent.MusicSystems.splice(r,1)}this.parent=e,this.boundingBox.Parent=e.PositionAndShape}get NextSystem(){const e=this.Parent.MusicSystems.indexOf(this);return e!==this.Parent.MusicSystems.length?this.Parent.MusicSystems[e+1]:void 0}get StaffLines(){return this.staffLines}get GraphicalMeasures(){return this.graphicalMeasures}get MeasureNumberLabels(){return this.measureNumberLabels}get Labels(){return this.labels.values()}get ObjectsToRedraw(){return this.objectsToRedraw}get InstrumentBrackets(){return this.instrumentBrackets}get GroupBrackets(){return this.groupBrackets}get GraphicalMarkedAreas(){return this.graphicalMarkedAreas}get SystemLines(){return this.systemLines}get Id(){return this.id}createSystemLeftLine(e,r,s){let o=-e/2;s&&(o=this.maxLabelLength+r-e/2);const a=this.staffLines[0].Measures[0];let l;this.staffLines.length>1&&(l=this.staffLines[this.staffLines.length-1].Measures[0]);const c=this.createSystemLine(o,e,SystemLinesEnum.SingleThin,SystemLinePosition.MeasureBegin,this,a,l);this.SystemLines.push(c),c.PositionAndShape.RelativePosition=new PointF2D(o,0),c.PositionAndShape.BorderLeft=0,c.PositionAndShape.BorderRight=e,c.PositionAndShape.BorderTop=c.PositionAndShape.Parent.BorderTop,c.PositionAndShape.BorderBottom=c.PositionAndShape.Parent.BorderBottom,this.createLinesForSystemLine(c)}createVerticalLineForMeasure(e,r,s,o,a,l){const c=l.ParentStaffLine,u=new PointF2D(c.PositionAndShape.RelativePosition.x,c.PositionAndShape.RelativePosition.y),m=c.ParentStaff.ParentInstrument.Staves;if(c.ParentStaff===m[0]){let g;m.length>1&&(g=this.getBottomStaffLine(c).Measures[a]);const d=this.createSystemLine(e,r,s,o,this,l,g),y=u.x+e;d.PositionAndShape.RelativePosition=new PointF2D(y,0),d.PositionAndShape.BorderLeft=0,d.PositionAndShape.BorderRight=r,this.SystemLines.push(d)}}setYPositionsToVerticalLineObjectsAndCreateLines(e){}calculateBorders(e){}alignBeginInstructions(){}GetLeftBorderAbsoluteXPosition(){return this.StaffLines[0].PositionAndShape.AbsolutePosition.x+this.StaffLines[0].Measures[0].beginInstructionsWidth}GetRightBorderAbsoluteXPosition(){return this.StaffLines[0].PositionAndShape.AbsolutePosition.x+this.StaffLines[0].StaffLines[0].End.x}AddGraphicalMeasures(e){for(let r=0,s=e.length;r1){let l,c;for(let u=0,m=this.staffLines.length;uthis.maxLabelLength&&(this.maxLabelLength=g.PositionAndShape.Size.width,r=a)}this.updateMusicSystemStaffLineXPosition(r)}setMusicSystemLabelsYPosition(){this.labels.forEach((e,r)=>{let s=0,o=0;for(let a=0;a0&&(r.PositionAndShape.RelativePosition=new PointF2D(0,s/o+2))})}checkStaffEntriesForStaffEntryLink(){let e=!1,r=!1;for(let s=0;s=0;s--){if(r=e.InstrumentalGroups[s],r instanceof Instrument){if(r.Visible===!0)return r;continue}return this.findLastVisibleInstrumentInInstrumentalGroup(r)}}updateMusicSystemStaffLineXPosition(e){for(let r=0,s=this.StaffLines.length;r0){const a=(o=window.GYM)==null?void 0:o.multitrack;a&&a>1&&(hideTrackTune=!0)}else hideTrackTune=!1;const s=VexFlowConverter.TimeSignature(e);hideTrackTune||this.stave.addModifier(s,VF$7.StaveModifier.Position.BEGIN,{numerator:e.Rhythm.Numerator,denominator:e.Rhythm.Denominator}),(!this.ShowTimeSignature||this.isTabMeasure&&!this.rules.TabTimeSignatureRendered)&&(s.setStyle({fillStyle:"#00000000"}),s.hidden=!0),this.updateInstructionWidth()}addClefAtEnd(e,r=!0){const s=VexFlowConverter.Clef(e,"small");if(!(!r&&this.stave.endClef)){this.stave.setEndClef(s.type,s.size,s.annotation);for(const o of this.stave.getModifiers())if(r){const a=o.originalStrokeStyle,l=o.originalFillStyle;o.getStyle()&&(a&&l?(o.getStyle().strokeStyle=a,o.getStyle().fillStyle=l):(o.getStyle().strokeStyle=null,o.getStyle().fillStyle=null))}else if(o.getCategory()==="clefs"&&o.getPosition()===VF$7.StaveModifier.Position.END&&o.type===s.type){const a="#12345600",l=o.getStyle();l&&(o.originalStrokeStyle=l.strokeStyle,o.originalFillStyle=l.fillStyle),o.setStyle({strokeStyle:a,fillStyle:a})}return this.parentSourceMeasure.hasEndClef=!0,this.updateInstructionWidth()}}addMeasureLine(e,r,s=!0){switch(r){case SystemLinePosition.MeasureBegin:switch(e){case SystemLinesEnum.BoldThinDots:s||(this.stave.modifiers[0].draw=function(o){switch(o.checkContext(),this.setRendered(),this.type){case VF$7.Barline.type.SINGLE:this.drawVerticalBar(o,this.x,!1);break;case VF$7.Barline.type.DOUBLE:this.drawVerticalBar(o,this.x,!0);break;case VF$7.Barline.type.END:this.drawVerticalEndBar(o,this.x);break;case VF$7.Barline.type.REPEAT_BEGIN:this.drawRepeatBar(o,this.x,!0);break;case VF$7.Barline.type.REPEAT_END:this.drawRepeatBar(o,this.x,!1);break;case VF$7.Barline.type.REPEAT_BOTH:this.drawRepeatBar(o,this.x,!1),this.drawRepeatBar(o,this.x,!0);break}}),this.stave.setBegBarType(VF$7.Barline.type.REPEAT_BEGIN);break}break;case SystemLinePosition.MeasureEnd:switch(e){case SystemLinesEnum.DotsBoldBoldDots:this.stave.setEndBarType(VF$7.Barline.type.REPEAT_BOTH);break;case SystemLinesEnum.DotsThinBold:this.stave.setEndBarType(VF$7.Barline.type.REPEAT_END);break;case SystemLinesEnum.DoubleThin:this.stave.setEndBarType(VF$7.Barline.type.DOUBLE);break;case SystemLinesEnum.ThinBold:this.stave.setEndBarType(VF$7.Barline.type.END);break;case SystemLinesEnum.None:this.stave.setEndBarType(VF$7.Barline.type.NONE);break}break}}addMeasureNumber(){const e=this.MeasureNumber.toString(),r=3;this.stave.setText(e,r,{justification:1,shift_x:0,shift_y:0})}addWordRepetition(e){let r,s=VF$7.StaveModifier.Position.END;const o=this.beginInstructionsWidth;switch(e.type){case RepetitionInstructionEnum.Segno:r=VF$7.Repetition.type.SEGNO_LEFT,s=VF$7.StaveModifier.Position.LEFT;break;case RepetitionInstructionEnum.Coda:r=VF$7.Repetition.type.CODA_LEFT,s=VF$7.StaveModifier.Position.LEFT;break;case RepetitionInstructionEnum.DaCapo:r=VF$7.Repetition.type.DC;break;case RepetitionInstructionEnum.DalSegno:r=VF$7.Repetition.type.DS;break;case RepetitionInstructionEnum.Fine:r=VF$7.Repetition.type.FINE;break;case RepetitionInstructionEnum.ToCoda:r=VF$7.Repetition.type.TO_CODA;break;case RepetitionInstructionEnum.DaCapoAlFine:r=VF$7.Repetition.type.DC_AL_FINE;break;case RepetitionInstructionEnum.DaCapoAlCoda:r=VF$7.Repetition.type.DC_AL_CODA;break;case RepetitionInstructionEnum.DalSegnoAlFine:r=VF$7.Repetition.type.DS_AL_FINE;break;case RepetitionInstructionEnum.DalSegnoAlCoda:r=VF$7.Repetition.type.DS_AL_CODA;break}if(r){if(this.stave.getModifiers().find(u=>u.symbol_type===r))return;const c=new VF$7.Repetition(r,o,-this.rules.RepetitionSymbolsYOffset);c.xShiftAsPercentOfStaveWidth=this.rules.RepetitionEndInstructionXShiftAsPercentOfStaveWidth,this.stave.addModifier(c,s);return}this.addVolta(e)}addVolta(e){var s;let r=VF$7.Volta.type.BEGIN;if(e.type===RepetitionInstructionEnum.Ending){switch(e.alignment){case AlignmentType.Begin:this.parentSourceMeasure.endsRepetitionEnding()?r=VF$7.Volta.type.BEGIN_END:r=VF$7.Volta.type.BEGIN;break;case AlignmentType.End:if(this.parentSourceMeasure.beginsRepetitionEnding())return;r=VF$7.Volta.type.END;break}const o=this.ParentStaffLine.SkyBottomLineCalculator,a=this.PositionAndShape.AbsolutePosition.x+this.PositionAndShape.BorderMarginLeft+.4,l=Math.max(this.PositionAndShape.AbsolutePosition.x+this.PositionAndShape.BorderMarginRight,a+.4),c=o.getSkyLineMinInRange(a,l)-2;let u=-6.1+this.rules.VoltaOffset,m=this.rules.VoltaOffset;if(c0){loglevelExports.trace(`Ghost Found in between (measure ${this.MeasureNumber})`);const d=this.createGhostGves(g);s.splice(l,0,...d),l+=d.length}}else{const g=Fraction$1.minus(u,this.parentSourceMeasure.AbsoluteTimestamp);if(g.RealValue>0){loglevelExports.trace(`Ghost Found at start (measure ${this.MeasureNumber})`);const d=this.createGhostGves(g);s.splice(0,0,...d),l+=d.length}}r=m}const o=Fraction$1.plus(this.parentSourceMeasure.AbsoluteTimestamp,this.parentSourceMeasure.Duration),a=Fraction$1.minus(o,r);if(a.RealValue>0){loglevelExports.trace(`Ghost Found at end (measure ${this.MeasureNumber})`);const l=this.createGhostGves(a);s=s.concat(l)}return s}createGhostGves(e){const r=VexFlowConverter.GhostNotes(e),s=[];for(const o of r){const a=new VexFlowVoiceEntry(void 0,void 0,this.rules);a.vfStaveNote=o,s.push(a)}return s}handleBeam(e,r){const s=e.sourceNote.ParentVoiceEntry.ParentVoice.VoiceId;let o=this.beams[s];o||(o=this.beams[s]=[]);let a;for(const c of o)c[0]===r&&(a=c);a||(a=[r,[]],o.push(a));const l=e.parentVoiceEntry;a[1].indexOf(l)<0&&a[1].push(l)}handleTuplet(e,r){const s=e.sourceNote.ParentVoiceEntry.ParentVoice.VoiceId;r=e.sourceNote.NoteTuplet;let o=this.tuplets[s];o||(o=this.tuplets[s]=[]);let a;for(const c of o)c[0]===r&&(a=c);a||(a=[r,[]],o.push(a));const l=e.parentVoiceEntry;a[1].indexOf(l)<0&&a[1].push(l)}finalizeBeams(){if(this.vfbeams={},this.isTabMeasure&&!this.rules.TabBeamsRendered)return;const e=[];for(const r in this.beams)if(this.beams.hasOwnProperty(r)){let s=this.vfbeams[r];s||(s=this.vfbeams[r]=[]);for(const o of this.beams[r]){let a=!1;for(const A of o[0].Notes)if(A.Length.RealValue>=new Fraction$1(1,4).RealValue&&(!A.TypeLength||A.TypeLength.RealValue>.125)){a=!0;break}if(a){loglevelExports.debug("Beam between note >= quarter, likely tremolo, currently unsupported. continuing.");continue}const l=[],c=o[0],u=o[1];let m=!0;for(const A of u)A.parentVoiceEntry.ParentVoice===c.Notes[0].ParentVoiceEntry.ParentVoice&&(m=A.parentVoiceEntry.WantedStemDirection===StemDirectionType.Undefined);let g=!1,d;const y=[];for(const A of u){const b=A.vfStaveNote;b&&(l.push(b),e.push(b)),A.parentVoiceEntry.IsGrace&&(g=!0),A.parentVoiceEntry.StemColor&&this.rules.ColoringEnabled&&y.push(A.parentVoiceEntry.StemColor)}if(l.length>1){const A=new VF$7.Beam(l,m);if(g&&(A.render_options.beam_width=3,A.render_options.partial_beam_length=4),y.length>=2&&this.rules.ColorBeams){d=y[0];for(const b of y)if(b!==d){d=void 0;break}A.setStyle({fillStyle:d,strokeStyle:d})}this.rules.FlatBeams&&(A.render_options.flat_beams=!0,A.render_options.flat_beam_offset=this.rules.FlatBeamOffset,A.render_options.flat_beam_offset_per_beam=this.rules.FlatBeamOffsetPerBeam),s.push(A)}else loglevelExports.debug("Warning! Beam with no notes!")}}this.rules.AutoBeamNotes&&this.autoBeamNotes(e)}autoBeamNotes(e){if(!this.rules.AutoBeamTabs&&this.isTabMeasure)return;let r=60,s=[],o=[],a,l=[];this.autoTupletVfBeams=[];const c=[];this.autoVfBeams=[];let u=this.parentSourceMeasure.ActiveTimeSignature;u||(u=this.parentSourceMeasure.Duration);for(const d of this.staffEntries)for(const y of d.graphicalVoiceEntries){const A=y.vfStaveNote,b=y.notes[0],S={vfStaveNote:A,sourceNote:b.sourceNote},E=d.relInMeasureTimestamp.isOnBeat(u),x=o.length>=2,C=b.sourceNote.Length.RealValue-new Fraction$1(1,4).RealValue>-Fraction$1.FloatInaccuracyTolerance,P=y.parentVoiceEntry.IsGrace||C||e.contains(A);if(P||E){if(x){for(const I of o)s.push(I);c.push(s.slice()),s=[]}if(o=[],P)continue}const k=y.notes[0].sourceNote.NoteTuplet;if(k){let I=!1;for(const M of k.Notes){for(const T of M)if(T.NoteTypeXml>=NoteType.QUARTER||T.ParentVoiceEntry.IsGrace||T.isRest()&&!this.rules.AutoBeamOptions.beam_rests){I=!0;break}if(I)break}if(!a)a=k;else if(a!==k){if(l.length>1){const M=[];for(const D of l)M.push(D.vfStaveNote);const T=new VF$7.Beam(M,!0);this.rules.FlatBeams&&(T.render_options.flat_beams=!0,T.render_options.flat_beam_offset=this.rules.FlatBeamOffset,T.render_options.flat_beam_offset_per_beam=this.rules.FlatBeamOffsetPerBeam),this.autoTupletVfBeams.push(T);const F=new Beam(r++);F.AutoGenerated=!0;for(const D of l)F.addNoteToBeam(D.sourceNote)}l=[],a=k}I||l.push(S);continue}else a=void 0;o.push(S)}if(l.length>=2){const d=[];for(const b of l)d.push(b.vfStaveNote);const y=new VF$7.Beam(d,!0);this.rules.FlatBeams&&(y.render_options.flat_beams=!0,y.render_options.flat_beam_offset=this.rules.FlatBeamOffset,y.render_options.flat_beam_offset_per_beam=this.rules.FlatBeamOffsetPerBeam),this.autoTupletVfBeams.push(y);const A=new Beam(r++);A.AutoGenerated=!0;for(const b of l)A.addNoteToBeam(b.sourceNote)}if(o.length>=2){for(const d of o)s.push(d);c.push(s)}const m=this.rules.AutoBeamOptions,g={beam_middle_only:m.beam_middle_rests_only,beam_rests:m.beam_rests,maintain_stem_directions:m.maintain_stem_directions};if(m.groups&&m.groups.length){const d=[];for(const y of m.groups)d.push(new VF$7.Fraction(y[0],y[1]));g.groups=d}for(const d of c){const y=[];for(const b of d)y.push(b.vfStaveNote);const A=VF$7.Beam.generateBeams(y,g);for(const b of A)this.rules.FlatBeams&&(b.render_options.flat_beams=!0,b.render_options.flat_beam_offset=this.rules.FlatBeamOffset,b.render_options.flat_beam_offset_per_beam=this.rules.FlatBeamOffsetPerBeam),this.autoVfBeams.push(b)}}finalizeTuplets(){this.vftuplets={};for(const e in this.tuplets)if(this.tuplets.hasOwnProperty(e)){let r=this.vftuplets[e];r||(r=this.vftuplets[e]=[]);for(const s of this.tuplets[e]){const o=[],a=s[1];for(const l of a)o.push(l.vfStaveNote);if(o.length>1){const l=s[0],c=l.Notes[0][0].NormalNotes,u=l.shouldBeBracketed(this.rules.TupletsBracketedUseXMLValue,this.rules.TupletsBracketed,this.rules.TripletsBracketed,this.isTabMeasure,this.rules.TabTupletsBracketed);let m=VF$7.Tuplet.LOCATION_TOP;l.tupletLabelNumberPlacement===PlacementEnum.Below&&(m=VF$7.Tuplet.LOCATION_BOTTOM);let g=0;if(this.isTabMeasure&&(g=this.rules.TabTupletYOffsetBottom*10,m===VF$7.Tuplet.LOCATION_TOP)){g=this.rules.TabTupletYOffsetTop*-10;const y=l.Notes[0][0];y!=null&&y.hasTabEffects()&&(g-=this.rules.TabTupletYOffsetEffects*10)}const d=new VF$7.Tuplet(o,{bracketed:u,location:m,notes_occupied:c,num_notes:l.TupletLabelNumber,ratioed:this.rules.TupletsRatioed,y_offset:g});r.push(d)}else loglevelExports.debug("Warning! Tuplet with no notes! Trying to ignore, but this is a serious problem.")}}}layoutStaffEntry(e){}graphicalMeasureCreatedCalculations(){let e,r=[];const s=[];for(const a of this.staffEntries){e=!1,r=[];for(const l of a.graphicalVoiceEntries){if(l.parentVoiceEntry.IsGrace){r.push(l),s.push(l),e||(e=l.parentVoiceEntry.GraceSlur);continue}if(l.vfStaveNote=VexFlowConverter.StaveNote(l),r.length>0){const c=[];for(let m=0;m0&&(g.GraceSlash=!1);const d=VexFlowConverter.StaveNote(g);g.vfStaveNote=d,c.push(d)}const u=new VF$7.GraceNoteGroup(c,e);u.spacing=this.rules.GraceNoteGroupXMargin*10,l.vfStaveNote.addModifier(0,u),r=[]}}}if(r.length>0)for(const a of r)a.vfStaveNote=VexFlowConverter.StaveNote(a),a.parentVoiceEntry.GraceAfterMainNote=!0;this.finalizeBeams(),this.finalizeTuplets();const o=this.getVoicesWithinMeasure();if(this.rules.RenderFingerings)for(const a of this.staffEntries)a.setModifierXOffsets();for(const a of o){if(!a)continue;this.vfVoices[a.VoiceId]=new VF$7.Voice({beat_value:this.parentSourceMeasure.ActiveTimeSignature.Denominator,num_beats:this.parentSourceMeasure.ActiveTimeSignature.Numerator,resolution:VF$7.RESOLUTION}).setMode(VF$7.Voice.Mode.SOFT);const l=this.getRestFilledVexFlowStaveNotesPerVoice(a);for(const c of l){if(c.parentVoiceEntry&&c.parentVoiceEntry.IsGrace&&!c.parentVoiceEntry.GraceAfterMainNote)continue;const u=c;if(u.vfStaveNote.getTicks().denominator===0&&(u.vfStaveNote.getTicks().denominator=1),c.notes.length===0||!c.notes[0]||!c.notes[0].sourceNote.PrintObject){this.vfVoices[a.VoiceId].addTickable(u.vfStaveNote);continue}const m=u.parentStaffEntry;if(m&&m.vfClefBefore){const g=new NoteSubGroup([m.vfClefBefore]);u.vfStaveNote.getCategory&&u.vfStaveNote.getCategory()==="stavenotes"&&u.vfStaveNote.addModifier(0,g)}c.parentVoiceEntry&&this.rules.RenderFingerings&&((this.rules.FingeringPosition===PlacementEnum.Left||this.rules.FingeringPosition===PlacementEnum.Right)&&this.createFingerings(c),this.createStringNumber(c)),this.createArpeggio(c),this.vfVoices[a.VoiceId].addTickable(u.vfStaveNote)}}this.setStemDirectionFromVexFlow();for(const a of s)this.createFingerings(a),this.createStringNumber(a),this.createArpeggio(a);this.createArticulations(),this.createOrnaments()}createArpeggio(e){if(e.parentVoiceEntry&&e.parentVoiceEntry.Arpeggio){const r=e.parentVoiceEntry.Arpeggio;if(e.notes&&e.notes.length>1){const s=VexFlowConverter.StrokeTypeFromArpeggioType(r.type),o=new VF$7.Stroke(s,{all_voices:this.rules.ArpeggiosGoAcrossVoices});this.rules.RenderArpeggios&&e.vfStaveNote.addStroke(0,o)}else loglevelExports.debug(`[OSMD] arpeggio in measure ${this.MeasureNumber} could not be drawn. voice entry had less than two notes, arpeggio is likely between voice entries, not currently supported in Vexflow.`)}}setStemDirectionFromVexFlow(){for(const e of this.staffEntries)for(const r of e.graphicalVoiceEntries)for(const s of r.notes){const o=s.vfnote;if(!o||!o[0])continue;switch(o[0].getStemDirection()){case VF$7.Stem.UP:r.parentVoiceEntry.StemDirection=StemDirectionType.Up;break;case VF$7.Stem.DOWN:r.parentVoiceEntry.StemDirection=StemDirectionType.Down;break}}}createArticulations(){for(let e=0,r=this.staffEntries.length;es){for(const l of e.notes)if(!l.sourceNote.Fingering&&(l.sourceNote.Fingering=o.pop(),s++,o.length===0))break}let a=-1;for(const l of e.notes){const c=l.sourceNote.Fingering;if(!c){a++;continue}a++;let u=this.rules.FingeringPosition;this.rules.FingeringPositionGrace===PlacementEnum.AboveOrBelow&&(this.isUpperStaffOfInstrument()?u=PlacementEnum.Above:this.isLowerStaffOfInstrument()&&(u=PlacementEnum.Below)),c.placement!==PlacementEnum.NotYetDefined&&(u=c.placement);let m=this.rules.FingeringOffsetX,g;switch(u){default:case PlacementEnum.Left:g=VF$7.StaveModifier.Position.LEFT,m-=l.baseFingeringXOffset*unitInPixels;break;case PlacementEnum.Right:g=VF$7.StaveModifier.Position.RIGHT,m+=l.baseFingeringXOffset*unitInPixels;break;case PlacementEnum.Above:g=VF$7.StaveModifier.Position.ABOVE;break;case PlacementEnum.Below:g=VF$7.StaveModifier.Position.BELOW;break;case PlacementEnum.NotYetDefined:const y=e.parentStaffEntry.sourceStaffEntry.ParentStaff;e.notes.length>1||e.parentStaffEntry.graphicalVoiceEntries.length>1?g=VF$7.StaveModifier.Position.LEFT:y.idInMusicSheet===0?(g=VF$7.StaveModifier.Position.ABOVE,u=PlacementEnum.Above):(g=VF$7.StaveModifier.Position.BELOW,u=PlacementEnum.Below)}const d=new VF$7.FretHandFinger(c.value);if(d.setPosition(g),d.setOffsetX(m),u===PlacementEnum.Above||u===PlacementEnum.Below){const y=u===PlacementEnum.Above?-1:1,A=u===PlacementEnum.Above?a:s-1-a;if(this.rules.FingeringInsideStafflines&&s>1){const b=d.getWidth()/2,S=s*2.5;d.setOffsetY(y*(A+S)*b)}else if(!this.rules.FingeringInsideStafflines){const b=new VF$7.StringNumber(c.value);b.radius=0,b.setPosition(g),b.setOffsetY(y*A*b.getWidth()*2/3),r.vfStaveNote.addModifier(a,b);continue}}r.vfStaveNote.addModifier(a,d)}}createStringNumber(e){if(!this.rules.RenderStringNumbersClassical)return;const r=e;e.notes.forEach((s,o)=>{const a=s.sourceNote.StringInstruction;if(a){let l=a.value;switch(l){case"1":l="I";break;case"2":l="II";break;case"3":l="III";break;case"4":l="IV";break;case"5":l="V";break;case"6":l="VI";break}const c=new VF$7.StringNumber(l);c.radius=0;const u=-this.rules.StringNumberOffsetY;e.notes.length>1||e.parentStaffEntry.graphicalVoiceEntries.length>1?(c.setOffsetX(s.baseStringNumberXOffset*13),c.setPosition(VF$7.Modifier.Position.RIGHT)):c.setPosition(VF$7.Modifier.Position.ABOVE),c.setOffsetY(u),r.vfStaveNote.addModifier(o,c)}})}lineTo(e,r){const s=new VF$7.StaveConnector(e.getVFStave(),this.stave);s.setType(r),this.connectors.push(s)}getVFStave(){return this.stave}updateInstructionWidth(){let e=0,r=0;const s=this.stave.getModifiers();for(const o of s)o.getPosition()===5?e+=o.getWidth()+o.getPadding(void 0):o.getPosition()===6&&(r+=o.getWidth()+o.getPadding(void 0));this.beginInstructionsWidth=(e!=null?e:0)/unitInPixels,this.endInstructionsWidth=(r!=null?r:0)/unitInPixels}addStaveTie(e,r){this.vfTies.push(e),r.vfTie=e,r.Tie.TieDirection===PlacementEnum.Below&&e.setDirection(1)}}class GraphicalStaffEntry extends GraphicalObject{constructor(e,r=void 0,s=void 0){super(),this.graphicalChordContainers=[],this.tabStaffEntry=void 0,this.MaxAccidentals=0,this.graphicalInstructions=[],this.ties=[],this.graphicalTies=[],this.lyricsEntries=[],this.parentMeasure=e,this.graphicalVoiceEntries=[],this.sourceStaffEntry=r,s?(this.staffEntryParent=s,this.parentVerticalContainer=s.parentVerticalContainer,this.PositionAndShape=new BoundingBox$1(this,s.PositionAndShape)):this.PositionAndShape=new BoundingBox$1(this,e.PositionAndShape),r&&(this.relInMeasureTimestamp=r.Timestamp),this.FingeringEntries=[]}get GraphicalInstructions(){return this.graphicalInstructions}get GraphicalTies(){return this.graphicalTies}get LyricsEntries(){return this.lyricsEntries}set LyricsEntries(e){this.lyricsEntries=e}getAbsoluteTimestamp(){const e=this.parentMeasure.parentSourceMeasure.AbsoluteTimestamp.clone();return this.relInMeasureTimestamp&&e.Add(this.relInMeasureTimestamp),e}findTieGraphicalNoteFromNote(e){var s;const r=((s=window.GYM)==null?void 0:s.graceCustom)||!1;for(const o of this.graphicalVoiceEntries)for(const a of o.notes){const l=a.sourceNote;if(r){if(e.NoteToGraphicalNoteObjectId==l.NoteToGraphicalNoteObjectId)return a}else if(!l.isRest()&&l.Pitch.FundamentalNote===e.Pitch.FundamentalNote&&l.Pitch.Octave===e.Pitch.Octave&&l.getAbsoluteTimestamp().Equals(e.getAbsoluteTimestamp()))return a}}findEndTieGraphicalNoteFromNoteWithStartingSlur(e,r){if(e){for(const s of this.graphicalVoiceEntries)if(s.parentVoiceEntry===e.ParentVoiceEntry)for(const o of s.notes){const a=o.sourceNote;if(a.NoteTie&&a.NoteSlurs.indexOf(r)!==-1)return o}}}findGraphicalNoteFromGraceNote(e){if(e){for(const r of this.graphicalVoiceEntries)if(r.parentVoiceEntry===e.ParentVoiceEntry){for(const s of r.notes)if(s.sourceNote===e)return s}}}findGraphicalNoteFromNote(e){if(e){for(const r of this.graphicalVoiceEntries)if(r.parentVoiceEntry===e.ParentVoiceEntry){for(const s of r.notes)if(s.sourceNote===e&&this.getAbsoluteTimestamp().Equals(e.getAbsoluteTimestamp()))return s}}}getGraphicalNoteDurationFromVoice(e){for(const r of this.graphicalVoiceEntries)if(r.parentVoiceEntry.ParentVoice===e)return r.notes[0].graphicalNoteLength;return new Fraction$1(0,1)}findVoiceEntryGraphicalNotes(e){for(const r of this.graphicalVoiceEntries)if(r.parentVoiceEntry===e)return r.notes}isVoiceEntryPartOfLinkedVoiceEntry(e){if(this.sourceStaffEntry.Link)for(let r=0,s=this.sourceStaffEntry.Link.LinkStaffEntries.length;r0&&(e=o)}return e}findStaffEntryMaxNoteLength(){let e=new Fraction$1(0,1);for(const r of this.graphicalVoiceEntries)for(const s of r.notes){const o=s.graphicalNoteLength;e.lt(o)&&o.GetExpandedNumerator()>0&&(e=o)}return e}findOrCreateGraphicalVoiceEntry(e){for(const s of this.graphicalVoiceEntries)if(s.parentVoiceEntry===e)return s;const r=MusicSheetCalculator.symbolFactory.createVoiceEntry(e,this);return this.graphicalVoiceEntries.push(r),r}findOrCreateGraphicalVoiceEntryFromGraphicalNote(e){for(const s of this.graphicalVoiceEntries)if(s===e.parentVoiceEntry)return s;const r=MusicSheetCalculator.symbolFactory.createVoiceEntry(e.sourceNote.ParentVoiceEntry,this);return this.graphicalVoiceEntries.push(r),r}addGraphicalNoteToListAtCorrectYPosition(e,r){const s=e.notes;if(s.length===0||r.PositionAndShape.RelativePosition.y=0;o--){if(s[o].PositionAndShape.RelativePosition.y>r.PositionAndShape.RelativePosition.y){s.splice(o+1,0,r);break}if(o===0){s.splice(0,0,r);break}}}hasOnlyRests(){return this.sourceStaffEntry.hasOnlyRests}getSkylineMin(){var o;const e=(o=this.parentMeasure)==null?void 0:o.ParentStaffLine.SkyBottomLineCalculator;if(!e)return;const[r,s]=this.getAbsoluteStartAndEnd();return e.getSkyLineMinInRange(r,s)}getHighestYAtEntry(){return this.parentMeasure.ParentStaffLine.PositionAndShape.AbsolutePosition.y+this.getSkylineMin()}getLowestYAtEntry(){return this.parentMeasure.ParentStaffLine.PositionAndShape.AbsolutePosition.y+this.getBottomlineMax()}getBottomlineMax(){var o;const e=(o=this.parentMeasure)==null?void 0:o.ParentStaffLine.SkyBottomLineCalculator;if(!e)return;const[r,s]=this.getAbsoluteStartAndEnd();return e.getBottomLineMaxInRange(r,s)}getAbsoluteStartAndEnd(){let e=this.PositionAndShape.AbsolutePosition.x;e-=this.parentMeasure.ParentStaffLine.PositionAndShape.AbsolutePosition.x;const r=e+this.PositionAndShape.Size.width;return[e,r]}}class VexFlowStaffEntry extends GraphicalStaffEntry{constructor(e,r,s){super(e,r,s)}calculateXPosition(){const e=this.parentMeasure.getVFStave();let r=0;for(const s of this.graphicalVoiceEntries)if(s.vfStaveNote){if(s.vfStaveNote.setStave(e),!s.vfStaveNote.preFormatted)continue;s.applyBordersFromVexflow();let o=!1,a=this.PositionAndShape;s.notes[0].sourceNote.isWholeRest()&&!this.hasOnlyRests()&&(o=!0,a=s.PositionAndShape),this.parentMeasure.ParentStaff.isTab?a.RelativePosition.x=(s.vfStaveNote.getAbsoluteX()+s.vfStaveNote.glyph.getWidth())/unitInPixels:(a.RelativePosition.x=s.vfStaveNote.getBoundingBox().getX()/unitInPixels,o&&(a.RelativePosition.x-=e.getNoteStartX()/unitInPixels,a.RelativePosition.x-=1.3));const l=s.notes[0].sourceNote;l.isRest()&&l.Length.RealValue===this.parentMeasure.parentSourceMeasure.ActiveTimeSignature.RealValue&&(a.RelativePosition.x+=this.parentMeasure.parentSourceMeasure.Rules.WholeRestXShiftVexflow-.1,s.PositionAndShape.BorderLeft=-.7,s.PositionAndShape.BorderRight=.7),s.PositionAndShape.BorderLefta.staffLine),s=this.calculateModifierXOffsets(r,1),o=this.calculateModifierXOffsets(r,.5);e.forEach((a,l)=>{a.baseFingeringXOffset=o[l],a.baseStringNumberXOffset=s[l]})}calculateModifierXOffsets(e,r){const s=[];for(let o=0;o=0;c--){if(Math.abs(e[o]-e[c])<=r&&a===s[c]){a++,l=!0;break}l=!1}s.push(a)}return s}}class VexFlowGraphicalNote extends GraphicalNote{constructor(e,r,s,o=OctaveEnum.NONE,a,l=void 0){if(super(e,r,a,l),this.clef=s,this.octaveShift=o,e.Pitch){const c=e.isRest()?e.Pitch:OctaveShift.getPitchFromOctaveShift(e.Pitch,o);this.vfpitch=VexFlowConverter.pitch(c,e.isRest(),this.clef,this.sourceNote.Notehead),this.vfpitch[1]=void 0}}setAccidental(e){const r=this.drawPitch(e);this.vfpitch=VexFlowConverter.pitch(r,this.sourceNote.isRest(),this.clef,this.sourceNote.Notehead),this.DrawnAccidental=r.Accidental}drawPitch(e){return OctaveShift.getPitchFromOctaveShift(e,this.octaveShift)}Transpose(e,r,s,o){const a=super.Transpose(e,r,s,o),l=OctaveShift.getPitchFromOctaveShift(a,this.octaveShift);return this.vfpitch=VexFlowConverter.pitch(l,this.sourceNote.isRest(),this.clef,this.sourceNote.Notehead),this.vfpitch[1]=void 0,l}setIndex(e,r){this.vfnote=[e,r],this.vfnoteIndex=r}notehead(e=void 0){let r=e;r||(r=this.vfnote[0]);const s=r.note_heads;return s&&s.length>this.vfnoteIndex&&s[this.vfnoteIndex]?r.note_heads[this.vfnoteIndex]:{line:0}}Clef(){return this.clef}getSVGId(){if(this.vfnote)return this.vfnote[0].getAttribute("id")}getSVGGElement(){if(this.vfnote)return this.vfnote[0].getAttribute("el")}getStemSVG(){return document.getElementById("vf-"+this.getSVGId()+"-stem")}getBeamSVGs(){const e=[];for(let r=0;;r++){const s=document.getElementById(`vf-${this.getSVGId()}-beam${r}`);if(!s)break;e.push(s)}return e}}class GraphicalChordSymbolContainer extends GraphicalObject{constructor(e,r,s,o,a,l){super(),this.chordSymbolContainer=e,this.boundingBox=new BoundingBox$1(this,r),this.rules=l,this.calculateLabel(s,a,o)}get GetChordSymbolContainer(){return this.chordSymbolContainer}get GraphicalLabel(){return this.graphicalLabel}calculateLabel(e,r,s){const o=ChordSymbolContainer.calculateChordText(this.chordSymbolContainer,r,s);this.graphicalLabel=new GraphicalLabel(new Label(o),e,this.rules.ChordSymbolTextAlignment,this.rules,this.boundingBox),this.graphicalLabel.PositionAndShape.RelativePosition=new PointF2D(this.rules.ChordSymbolRelativeXOffset,0),this.graphicalLabel.Label.colorDefault=this.rules.DefaultColorChordSymbol}}const VF$6=Vex.Flow;class VexFlowTabMeasure extends VexFlowMeasure{constructor(e,r=void 0,s=void 0){super(e,r,s),this.isTabMeasure=!0}resetLayout(){var r;const e=(r=this.ParentStaff.StafflineCount)!=null?r:6;this.stave=new VF$6.TabStave(0,0,0,{space_above_staff_ln:0,space_below_staff_ln:0,num_lines:e}),this.updateInstructionWidth()}graphicalMeasureCreatedCalculations(){for(let r=0,s=this.staffEntries.length;r1){const c=VexFlowConverter.StrokeTypeFromArpeggioType(l.type),u=new VF$6.Stroke(c,{all_voices:this.rules.ArpeggiosGoAcrossVoices});this.rules.RenderArpeggios&&a.vfStaveNote.addStroke(0,u)}else loglevelExports.debug(`[OSMD] arpeggio in measure ${this.MeasureNumber} could not be drawn. voice entry had less than two notes, arpeggio is likely between voice entries, not currently supported in Vexflow.`)}if(a.vfGhostNotes)for(const l of a.vfGhostNotes)this.vfVoices[r.VoiceId].addTickable(l);else this.vfVoices[r.VoiceId].addTickable(a.vfStaveNote)}}}}class StaffLineActivitySymbol extends GraphicalObject{constructor(e){super(),this.parentStaffLine=e;const r=e.PositionAndShape;this.boundingBox=new BoundingBox$1(this,r),this.boundingBox.BorderRight=6,this.boundingBox.BorderBottom=4.5,this.boundingBox.BorderLeft=-1.5,this.boundingBox.BorderTop=-1.5}}class StaffLine extends GraphicalObject{constructor(e,r){super(),this.measures=[],this.staffLines=new Array(5),this.octaveShifts=[],this.lyricLines=[],this.lyricsDashes=[],this.abstractExpressions=[],this.graphicalSlurs=[],this.graphicalGlissandi=[],this.Pedals=[],this.WavyLines=[],this.parentMusicSystem=e,this.parentStaff=r,this.boundingBox=new BoundingBox$1(this,e.PositionAndShape),this.skyBottomLine=MusicSheetCalculator.symbolFactory.createSkyBottomLineCalculator(this),this.staffHeight=this.parentMusicSystem.rules.StaffHeight,this.topLineOffset=0,this.bottomLineOffset=4,this.calculateStaffLineOffsets()}calculateStaffLineOffsets(){if(this.ParentStaff.isTab)switch(this.ParentStaff.StafflineCount){case 5:this.staffHeight=this.bottomLineOffset=this.ParentStaff.ParentInstrument.GetMusicSheet.Rules.TabStaffInterlineHeight*6;break;default:this.staffHeight=this.bottomLineOffset=this.ParentStaff.ParentInstrument.GetMusicSheet.Rules.TabStaffInterlineHeight*this.ParentStaff.StafflineCount;break}else switch(this.ParentStaff.StafflineCount){case 4:this.bottomLineOffset=1;break;case 3:this.topLineOffset=1,this.bottomLineOffset=1;break;case 2:this.topLineOffset=2,this.bottomLineOffset=1;break;case 1:this.topLineOffset=2,this.bottomLineOffset=2;break}}get Measures(){return this.measures}set Measures(e){this.measures=e}get StaffLines(){return this.staffLines}set StaffLines(e){this.staffLines=e}get Index(){return this.parentMusicSystem.StaffLines.indexOf(this)}get NextStaffLine(){const e=this.Index;return e!==this.parentMusicSystem.StaffLines.length?this.parentMusicSystem.StaffLines[e+1]:void 0}get LyricLines(){return this.lyricLines}get AbstractExpressions(){return this.abstractExpressions}set AbstractExpressions(e){this.abstractExpressions=e}set LyricLines(e){this.lyricLines=e}get LyricsDashes(){return this.lyricsDashes}set LyricsDashes(e){this.lyricsDashes=e}get ParentMusicSystem(){return this.parentMusicSystem}set ParentMusicSystem(e){this.parentMusicSystem=e}get ParentStaff(){return this.parentStaff}set ParentStaff(e){this.parentStaff=e}get SkyBottomLineCalculator(){return this.skyBottomLine}get SkyLine(){return this.skyBottomLine.SkyLine}get BottomLine(){return this.skyBottomLine.BottomLine}get OctaveShifts(){return this.octaveShifts}set OctaveShifts(e){this.octaveShifts=e}get StaffHeight(){return this.staffHeight}get TopLineOffset(){return this.topLineOffset}get BottomLineOffset(){return this.bottomLineOffset}get GraphicalSlurs(){return this.graphicalSlurs}get GraphicalGlissandi(){return this.graphicalGlissandi}addSlurToStaffline(e){this.graphicalSlurs.push(e)}addGlissandoToStaffline(e){this.graphicalGlissandi.push(e),e.StaffLine=this}addActivitySymbolClickArea(){const e=new StaffLineActivitySymbol(this),r=this.PositionAndShape;e.PositionAndShape.RelativePosition=new PointF2D(r.RelativePosition.x+r.BorderRight+.5,r.RelativePosition.y+.5),e.PositionAndShape.Parent=this.parentMusicSystem.PositionAndShape}isPartOfMultiStaffInstrument(){return this.parentStaff.ParentInstrument.Staves.length>1}findClosestStaffEntry(e){let r;for(let s=0,o=this.Measures.length;s0){const u=c.map(y=>y.PositionAndShape.Center.y),m=Math.max(...u),g=((a=window.GYM)==null?void 0:a.noNeedContinuousDynamic)||!1,d=((l=window.GYM)==null?void 0:l.noNeedGraphicalContinuousDynamic)||!1;for(let y=0;y0?c[y-1]:void 0;if(S){const x=this.getOverlap(A.PositionAndShape,S.PositionAndShape);A.squeeze(-(x.x+this.rules.DynamicExpressionSpacer))}if(E){const x=this.getOverlap(E.PositionAndShape,A.PositionAndShape);A.squeeze(x.x+this.rules.DynamicExpressionSpacer)}}}}}getDistance(e,r){const s=e.RelativePosition.x+e.BorderMarginRight,o=r.RelativePosition.x+r.BorderMarginLeft,a=e.RelativePosition.y+e.BorderMarginBottom,l=r.RelativePosition.y+r.BorderMarginTop;return new PointF2D(o-s,l-a)}getOverlap(e,r){return new PointF2D(e.RelativePosition.x+e.BorderMarginRight-(r.RelativePosition.x+r.BorderMarginLeft),e.RelativePosition.y+e.BorderMarginBottom-(r.RelativePosition.y+r.BorderMarginTop))}}class VexFlowStaffLine extends StaffLine{constructor(e,r){super(e,r),this.slursInVFStaffLine=[],this.alignmentManager=new AlignmentManager(this)}get SlursInVFStaffLine(){return this.slursInVFStaffLine}addVFSlurToVFStaffline(e){this.slursInVFStaffLine.push(e)}get AlignmentManager(){return this.alignmentManager}}const VF$5=Vex.Flow;class VexFlowMultiRestMeasure extends VexFlowMeasure{constructor(e,r=void 0,s=void 0){super(e,r,s),this.minimumStaffEntriesWidth=-1,s?this.rules=s.ParentMusicSystem.rules:r&&(this.rules=r.Rules),this.resetLayout(),this.multiRestElement=new VF$5.MultiMeasureRest(r.multipleRestMeasures,{})}draw(e){var a,l,c,u,m;const r=e.openGroup();(a=r==null?void 0:r.classList)==null||a.add("vf-measure");const s=e.openGroup();(l=s==null?void 0:s.classList)==null||l.add("vf-stave"),s==null||s.setAttribute("id",(u=(c=this.stave)==null?void 0:c.attrs)==null?void 0:u.id),this.stave.setContext(e).draw(),e.closeGroup();const o=e.openGroup();(m=o==null?void 0:o.classList)==null||m.add("vf-voices"),this.multiRestElement.setStave(this.stave),this.multiRestElement.setContext(e),this.multiRestElement.draw(),e.closeGroup();for(const g of this.connectors)g.setContext(e).draw();return e.closeGroup(),r}format(){}getVoicesWithinMeasure(){return[]}getGraphicalVoiceEntriesPerVoice(e){return[]}getRestFilledVexFlowStaveNotesPerVoice(e){return[]}handleBeam(e,r){}handleTuplet(e,r){}finalizeBeams(){}finalizeTuplets(){}layoutStaffEntry(e){}graphicalMeasureCreatedCalculations(){}createArticulations(){}createOrnaments(){}createFingerings(e){}getVFStave(){return this.stave}}class SkyBottomLineCalculationResult{constructor(e,r){this.skyLine=e,this.bottomLine=r}}const VF$4=Vex.Flow;class CanvasVexFlowBackend extends VexFlowBackend{constructor(e){super(),this.rules=e}getVexflowBackendType(){return VF$4.Renderer.Backends.CANVAS}getOSMDBackendType(){return BackendType.Canvas}getCanvasSize(){var e;return(e=document.getElementById("osmdCanvasPage"+this.graphicalMusicPage.PageNumber))==null?void 0:e.offsetHeight}initialize(e,r){this.zoom=r,this.canvas=document.createElement("canvas"),this.graphicalMusicPage||(this.graphicalMusicPage=new GraphicalMusicPage(void 0),this.graphicalMusicPage.PageNumber=1),this.canvas.id="osmdCanvasVexFlowBackendCanvas"+this.graphicalMusicPage.PageNumber,this.inner=document.createElement("div"),this.inner.id="osmdCanvasPage"+this.graphicalMusicPage.PageNumber,this.inner.style.position="relative",this.canvas.style.zIndex="0",this.inner.appendChild(this.canvas),e.appendChild(this.inner),this.renderer=new VF$4.Renderer(this.canvas,this.getVexflowBackendType()),this.ctx=this.renderer.getContext()}initializeHeadless(e=300,r=300){this.graphicalMusicPage||(this.graphicalMusicPage=new GraphicalMusicPage(void 0),this.graphicalMusicPage.PageNumber=1),this.canvas=document.createElement("canvas"),this.canvas.width=e,this.canvas.height=r,this.renderer=new VF$4.Renderer(this.canvas,this.getVexflowBackendType()),this.ctx=this.renderer.getContext()}getContext(){return this.ctx}free(){this.canvas&&(this.canvas.width=0,this.canvas.height=0,this.canvas.remove(),delete this.canvas,this.canvas=null)}clear(){this.ctx.clearRect(0,0,this.canvas.width,this.canvas.height),this.rules.PageBackgroundColor&&(this.ctx.save(),this.ctx.setFillStyle(this.rules.PageBackgroundColor),this.zoom=1,this.ctx.fillRect(0,0,this.canvas.width/this.zoom,this.canvas.height/this.zoom),this.ctx.restore())}scale(e){this.ctx.scale(e,e)}translate(e,r){this.CanvasRenderingCtx.translate(e,r)}renderText(e,r,s,o,a,l,c=void 0,u=void 0){const m=this.CanvasRenderingCtx.font;this.CanvasRenderingCtx.save(),this.CanvasRenderingCtx.font=VexFlowConverter.font(e,r,s,this.rules,u),this.CanvasRenderingCtx.fillStyle=c,this.CanvasRenderingCtx.strokeStyle=c,this.CanvasRenderingCtx.fillText(o,l.x,l.y+a),this.CanvasRenderingCtx.restore(),this.CanvasRenderingCtx.font=m}renderRectangle(e,r,s,o=1){const a=this.CanvasRenderingCtx.fillStyle;s?this.CanvasRenderingCtx.fillStyle=s:this.CanvasRenderingCtx.fillStyle=VexFlowConverter.style(r),this.CanvasRenderingCtx.globalAlpha=o,this.ctx.fillRect(e.x,e.y,e.width,e.height),this.CanvasRenderingCtx.fillStyle=a,this.CanvasRenderingCtx.globalAlpha=1}renderLine(e,r,s="#FF0000FF",o=2,a){const l=this.CanvasRenderingCtx.strokeStyle;this.CanvasRenderingCtx.strokeStyle=s,this.CanvasRenderingCtx.beginPath(),this.CanvasRenderingCtx.moveTo(e.x,e.y),this.CanvasRenderingCtx.lineTo(r.x,r.y),this.CanvasRenderingCtx.stroke(),this.CanvasRenderingCtx.strokeStyle=l}renderCurve(e){this.ctx.beginPath(),this.ctx.moveTo(e[0].x,e[0].y),this.ctx.bezierCurveTo(e[1].x,e[1].y,e[2].x,e[2].y,e[3].x,e[3].y),this.ctx.lineTo(e[7].x,e[7].y),this.ctx.bezierCurveTo(e[6].x,e[6].y,e[5].x,e[5].y,e[4].x,e[4].y),this.ctx.lineTo(e[0].x,e[0].y),this.ctx.closePath(),this.ctx.fill()}renderPath(e,r=!0,s){this.ctx.beginPath();let o;for(const a of e){if(!o){this.ctx.moveTo(a.x,a.y),o=a;continue}this.ctx.lineTo(a.x,a.y)}this.ctx.closePath(),r?this.ctx.fill():this.ctx.stroke()}get CanvasRenderingCtx(){return this.ctx.vexFlowCanvasContext}}class SkyBottomLineCalculator{constructor(e){this.mStaffLineParent=e,this.mRules=e.ParentMusicSystem.rules}updateLines(e){const r=this.StaffLineParent.Measures;if(e.length!==r.length)if(loglevelExports.warn("SkyBottomLineCalculator: lengths of calculation result array and measure array do not match"),e.length(m-c)/unitInPixels+this.StaffLineParent.TopLineOffset);const u=Math.min(...this.mBottomLine);this.mBottomLine=this.mBottomLine.map(m=>(m-u)/unitInPixels+this.StaffLineParent.BottomLineOffset)}calculateLines(){const e=Math.max(Math.ceil(this.StaffLineParent.PositionAndShape.Size.width*this.SamplingUnit),1);this.mSkyLine=[],this.mBottomLine=[];const r=new CanvasVexFlowBackend(this.StaffLineParent.ParentMusicSystem.rules);for(const l of this.StaffLineParent.Measures){l.PositionAndShape.calculateAbsolutePositionsRecursive(0,0);const c=l.getVFStave();let u=c.getWidth();if(!(u>0)&&!l.IsExtraGraphicalMeasure&&(loglevelExports.warn("SkyBottomLineCalculator: width not > 0 in measure "+l.MeasureNumber),u=50),!(u>=50)&&l.IsExtraGraphicalMeasure)continue;r.initializeHeadless(u);const m=r.getContext(),g=r.getCanvas();u=g.width;const d=g.height;this.mRules.DYMusicScoreType==="jianpu"||c.setY(c.y+100);const y=c.getWidth();c.setWidth(u),l.format(),c.setWidth(y);try{l.draw(m)}catch(C){loglevelExports.warn("SkyBottomLineCalculator.calculateLines.draw",C)}const A=m.getImageData(0,0,u,d),b=4,S=Math.max(Math.ceil(l.PositionAndShape.Size.width*this.mRules.SamplingUnit),1),E=new Array(S),x=new Array(S);for(let C=0;C0){E[C]=P;break}}for(let P=d;P>0;P--){const I=P*u*b+C*b;if(A.data[I+3]>0){x[C]=P;break}}}for(let C=0;C(l-Math.max(...this.mSkyLine))/unitInPixels+this.StaffLineParent.TopLineOffset),this.mBottomLine=this.mBottomLine.map(l=>(l-Math.min(...this.mBottomLine))/unitInPixels+this.StaffLineParent.BottomLineOffset)}updateSkyLineWithLine(e,r,s){const o=Math.floor(e.x*this.SamplingUnit),a=Math.ceil(r.x*this.SamplingUnit);for(let l=o+1;l=this.BottomLine.length&&(s=this.BottomLine.length-1),o<0&&(o=0),o>=this.BottomLine.length&&(o=this.BottomLine.length),this.SkyLine[s]=e.y;for(let l=s+1;l=this.BottomLine.length&&(s=this.BottomLine.length-1),o<0&&(o=0),o>=this.BottomLine.length&&(o=this.BottomLine.length),this.BottomLine[s]=e.y;for(let l=s+1;le)}setBottomLineWithValue(e){this.BottomLine.forEach(r=>e)}getLeftIndexForPointX(e,r){const s=Math.floor(e*this.SamplingUnit);return s<0?0:s>=r?r-1:s}getRightIndexForPointX(e,r){const s=Math.ceil(e*this.SamplingUnit);return s<0?0:s>=r?r-1:s}updateStaffLineBorders(){this.mStaffLineParent.PositionAndShape.BorderTop=this.getSkyLineMin(),this.mStaffLineParent.PositionAndShape.BorderMarginTop=this.getSkyLineMin(),this.mStaffLineParent.PositionAndShape.BorderBottom=this.getBottomLineMax(),this.mStaffLineParent.PositionAndShape.BorderMarginBottom=this.getBottomLineMax()}getSkyLineMin(){return Math.min(...this.SkyLine.filter(e=>!isNaN(e)))}getSkyLineMinAtPoint(e){const r=Math.round(e*this.SamplingUnit);return this.mSkyLine[r]}getSkyLineMinInRange(e,r){return this.getMinInRange(this.SkyLine,e,r)}getBottomLineMax(){return Math.max(...this.BottomLine.filter(e=>!isNaN(e)))}getBottomLineMaxAtPoint(e){const r=Math.round(e*this.SamplingUnit);return this.mBottomLine[r]}getBottomLineMaxInRange(e,r){return this.getMaxInRange(this.BottomLine,e,r)}getBottomLineMaxInBoundingBox(e){const r=Math.floor(e.AbsolutePosition.x+e.BorderLeft),s=Math.ceil(e.AbsolutePosition.x+e.BorderRight);return this.getMaxInRange(this.mBottomLine,r,s)}updateWithBoundingBoxRecursively(e){if(e.ChildElements&&e.ChildElements.length>0)for(const r of e.ChildElements)this.updateWithBoundingBoxRecursively(r);else{const r=e.BorderTop+e.AbsolutePosition.y,s=e.BorderBottom+e.AbsolutePosition.y;if(r<0){const o=Math.floor(e.AbsolutePosition.x+e.BorderLeft),a=Math.ceil(e.AbsolutePosition.x+e.BorderRight);this.updateInRange(this.mSkyLine,o,a,r)}else if(s>this.StaffLineParent.StaffHeight){const o=Math.floor(e.AbsolutePosition.x+e.BorderLeft),a=Math.ceil(e.AbsolutePosition.x+e.BorderRight);this.updateInRange(this.mBottomLine,o,a,s)}}}findPreviousValidNumber(e,r){for(let s=e;s>=0;s--)if(!isNaN(r[s]))return r[s];return 0}findNextValidNumber(e,r){if(e>=r.length)return r[e-1];for(let s=e;se.length&&(s=e.length);for(let a=r;aMath.abs(e[a])?o:e[a]}setInRange(e,r=0,s=e.length,o=0){if(r=Math.floor(r*this.SamplingUnit),s=Math.ceil(s*this.SamplingUnit),se.length&&(s=e.length);for(let a=r;a=e.length&&(r=e.length-1),s<0&&(s=0),s>=e.length&&(s=e.length),r>=0&&s<=e.length)return Math.min(...e.slice(r,s+1))}getMaxInRange(e,r,s){if(r=Math.floor(r*this.SamplingUnit),s=Math.ceil(s*this.SamplingUnit),!e)return Number.MIN_VALUE;if(r<0&&(r=0),r>=e.length&&(r=e.length-1),s<0&&(s=0),s>=e.length&&(s=e.length),r>=0&&s<=e.length)return Math.max(...e.slice(r,s+1))}get SamplingUnit(){return this.mRules.SamplingUnit}get StaffLineParent(){return this.mStaffLineParent}get SkyLine(){return this.mSkyLine}get BottomLine(){return this.mBottomLine}}var parserExports$1={},parser$2={get exports(){return parserExports$1},set exports(i){parserExports$1=i}};/*! * d-path-parser - v1.0.0 * by Massimo Artizzu (MaxArt2501) * * https://github.com/MaxArt2501/d-path-parser * * Licensed under the MIT License * See LICENSE for details */(function(i,e){(function(r,s){i.exports=s()})(commonjsGlobal,function(){return function(s){for(var o={command:/\s*([achlmqstvz])/gi,number:/\s*([+-]?\d*\.?\d+(?:e[+-]?\d+)?)/gi,comma:/\s*(?:(,)|\s)/g,flag:/\s*([01])/g},a={number:function(S){return+A("number",S)},"coordinate pair":function(S){var E=A("number",S);if(E===null&&!S)return null;A("comma");var x=A("number",!0);return{x:+E,y:+x}},"arc definition":function(S){var E=a["coordinate pair"](S);if(!E&&!S)return null;A("comma");var x=+A("number",!0);A("comma",!0);var C=!!+A("flag",!0);A("comma");var P=!!+A("flag",!0);A("comma");var k=a["coordinate pair"](!0);return{radii:E,rotation:x,large:C,clockwise:P,end:k}}},l=0,c=[];lr.bottom)switch(e.tagName.toLowerCase()){case"g":for(const y of e.children)this.recursiveUpdate(y,r,s,o);break;case"circle":case"rect":case"line":case"path":let g=Math.floor((a.x-s.x)/unitInPixels*this.mRules.SamplingUnit);const d=g+Math.ceil(a.width/unitInPixels*this.mRules.SamplingUnit);if(e.parentElement.classList.contains("vf-beams")&&e.hasAttribute("d")){const y=parserExports$1(e.getAttribute("d"));if(y.length===5){const A=y[0],b=y[3],S=(b.end.y-A.end.y)/(b.end.x-A.end.x);let E=A.end.y/unitInPixels;for(g;g<=d;g++)Em[g]&&(m[g]=E),E+=S/this.mRules.SamplingUnit}}else for(g;g<=d;g++)lm[g]&&(m[g]=c);break}}calculateLinesForMeasure(e,r){var M,T,F;const s=r.getBBox(),o=Math.max(Math.round(e.PositionAndShape.Size.width*this.mRules.SamplingUnit),1),a=s.height/unitInPixels,c=r.getElementsByClassName("vf-stave")[0].getBBox();let u=(c==null?void 0:c.height)/unitInPixels,m=(c==null?void 0:c.y)/unitInPixels;const g=e.getVFStave();let d=((M=g.options)!=null&&M.num_lines?g.options.num_lines:5)-1,y=-1,A=0;const b=[d];for(const D of(T=g.options)==null?void 0:T.line_config)D.visible?(y===-1&&(y=A),b.push(A)):d--,A++;const S=b.pop();y===-1&&(y=0),d=S-y;const E=(F=g.options)==null?void 0:F.spacing_between_lines_px,x=d*E/unitInPixels;u-x>.2&&(u=x,m=y*E/unitInPixels);const C=m+u,P=new Array(o).fill(m),k=new Array(o).fill(C),I=[P,k];if(a>u)for(const D of r.children)this.recursiveUpdate(D,{top:m,bottom:C},s,[P,k]);return I}calculateLines(){this.mSkyLine=[],this.mBottomLine=[];const e=document.createElement("div");document.body.append(e);const r=new SvgVexFlowBackend(this.mRules);r.initialize(e,1,"0");const s=r.getContext(),o=s.openGroup();o.classList.add("staffline");for(const a of this.StaffLineParent.Measures){a.PositionAndShape.calculateAbsolutePositionsRecursive(0,0),a.setAbsoluteCoordinates(a.PositionAndShape.AbsolutePosition.x*unitInPixels,a.PositionAndShape.AbsolutePosition.y*unitInPixels);const l=a.draw(s),[c,u]=this.calculateLinesForMeasure(a,l);this.mSkyLine.push(...c),this.mBottomLine.push(...u)}s.closeGroup();for(const a of o.getElementsByClassName("vf-ties"))for(const l of a.childNodes)if(l.nodeName.toLowerCase()==="path"){const c=l.getBBox();let u=Math.floor(c.x/unitInPixels*this.mRules.SamplingUnit);const m=u+Math.ceil(c.width/unitInPixels*this.mRules.SamplingUnit),g=c.y/unitInPixels,d=c.height/unitInPixels+g;for(u;u<=m;u++)gthis.mBottomLine[u]&&(this.mBottomLine[u]=d)}r.clear(),e.remove()}}const VF$3=Vex.Flow;class VexFlowGraphicalSymbolFactory{constructor(){this.hasBBox=!1,document.createElementNS("http://www.w3.org/2000/svg","g").getBBox!==void 0&&(this.hasBBox=!0)}createMusicSystem(e,r){return new VexFlowMusicSystem(e,r)}createStaffLine(e,r){return new VexFlowStaffLine(e,r)}createSkyBottomLineCalculator(e){return e.ParentMusicSystem.rules.PerformanceMode&&this.hasBBox?new SkyBottomLineCalculatorSVG(e):new SkyBottomLineCalculator(e)}createGraphicalMeasure(e,r,s=!1){return new VexFlowMeasure(r,e,void 0)}createMultiRestMeasure(e,r,s){return new VexFlowMultiRestMeasure(r,e,s)}createTabStaffMeasure(e,r){return new VexFlowTabMeasure(r,e)}createExtraGraphicalMeasure(e){const r=new VexFlowMeasure(e.ParentStaff,void 0,e);return r.IsExtraGraphicalMeasure=!0,r.ExtraGraphicalMeasurePreviousMeasure=e.Measures.last(),r}createStaffEntry(e,r){return new VexFlowStaffEntry(r,e,void 0)}createVoiceEntry(e,r){return new VexFlowVoiceEntry(e,r)}createNote(e,r,s,o=OctaveEnum.NONE,a,l=void 0){return new VexFlowGraphicalNote(e,r,s,o,a,l)}createGraceNote(e,r,s,o,a=OctaveEnum.NONE){return new VexFlowGraphicalNote(e,r,s,a,o)}addGraphicalAccidental(e,r){e.setAccidental(r)}addFermataAtTiedEndNote(e,r){}createInStaffClef(e,r){const s=e,o=VexFlowConverter.Clef(r,"small");s.vfClefBefore=new VF$3.ClefNote(o.type,o.size,o.annotation)}createChordSymbols(e,r,s,o){const a=r.parentMeasure.parentSourceMeasure.Rules;let l=0;const c=a.ChordSymbolXSpacing;for(const u of e.ChordContainers){let m=r.PositionAndShape;r.graphicalVoiceEntries.length===1&&r.graphicalVoiceEntries[0].notes.length===1&&r.graphicalVoiceEntries[0].notes[0].sourceNote.isWholeRest()&&(m=r.parentMeasure.PositionAndShape,l+=r.parentMeasure.beginInstructionsWidth,l+=a.ChordSymbolWholeMeasureRestXOffset);const g=new GraphicalChordSymbolContainer(u,m,a.ChordSymbolTextHeight,s,o,r.parentMeasure.parentSourceMeasure.Rules),d=g.GraphicalLabel;d.PositionAndShape.RelativePosition.y-=a.ChordSymbolYOffset,d.setLabelPositionAndShapeBorders();let y=0;d.PositionAndShape.Size.width=4&&e.Parent.Notes[0].Length.Denominator>4&&TextAlignmentEnum.LeftBottom;const l=new Label(e.Text);l.isLyricText=!0,l.lyricExtendNoteId=(m=(u=e==null?void 0:e.Parent)==null?void 0:u.Notes[0])==null?void 0:m.NoteToGraphicalNoteObjectId;const c=this.graphicalStaffEntry.parentMeasure.parentSourceMeasure.Rules;this.graphicalLabel=new GraphicalLabel(l,s,a,c,r.PositionAndShape),this.graphicalLabel.Label.colorDefault=c.DefaultColorLyrics,this.graphicalLabel.PositionAndShape.RelativePosition=new PointF2D(0,o),this.graphicalLabel.setLabelPositionAndShapeBorders(),this.graphicalLabel.PositionAndShape.Size.width1&&e=_GraphicalCurve.bezierCurveStepSize?new PointF2D:new PointF2D(_GraphicalCurve.oneMinusTPow3[e]*this.bezierStartPt.x+_GraphicalCurve.bezierFactorOne[e]*this.bezierStartControlPt.x+_GraphicalCurve.bezierFactorTwo[e]*this.bezierEndControlPt.x+_GraphicalCurve.tPow3[e]*this.bezierEndPt.x,_GraphicalCurve.oneMinusTPow3[e]*this.bezierStartPt.y+_GraphicalCurve.bezierFactorOne[e]*this.bezierStartControlPt.y+_GraphicalCurve.bezierFactorTwo[e]*this.bezierEndControlPt.y+_GraphicalCurve.tPow3[e]*this.bezierEndPt.y)}};let GraphicalCurve=_GraphicalCurve;GraphicalCurve.bezierCurveStepSize=1e3;const VF$1=Vex.Flow,_GraphicalSlur=class extends GraphicalCurve{constructor(i,e){super(),this.staffEntries=[],this.slur=i,this.rules=e}static Compare(i,e){if(i.staffEntries.length<1)return-1;if(e.staffEntries.length<1)return 1;const r=Fraction$1.minus(i.staffEntries[i.staffEntries.length-1].getAbsoluteTimestamp(),i.staffEntries[0].getAbsoluteTimestamp()),s=Fraction$1.minus(e.staffEntries[e.staffEntries.length-1].getAbsoluteTimestamp(),e.staffEntries[0].getAbsoluteTimestamp());return r.RealValue>s.RealValue?1:s.RealValue>r.RealValue?-1:0}calculateCurve(i){const e=this.staffEntries[0],r=this.staffEntries[this.staffEntries.length-1];let s=e.findGraphicalNoteFromNote(this.slur.StartNote);!s&&this.graceStart&&(s=e.findGraphicalNoteFromGraceNote(this.slur.StartNote)),s||(s=e.findEndTieGraphicalNoteFromNoteWithStartingSlur(this.slur.StartNote,this.slur));let o=r.findGraphicalNoteFromNote(this.slur.EndNote);!o&&this.graceEnd&&(o=r.findGraphicalNoteFromGraceNote(this.slur.EndNote));const a=e.parentMeasure.ParentStaffLine,l=a.SkyBottomLineCalculator;this.calculatePlacement(l,a);const c=this.calculateStartAndEnd(s,o,a,i,l),u=c.startX,m=c.endX;let g=c.startY,d=c.endY;const y=i.SlurTangentMinAngle,A=i.SlurTangentMaxAngle;let b;if(this.placement===PlacementEnum.Above){g-=i.SlurNoteHeadYOffset,d-=i.SlurNoteHeadYOffset;const S=new PointF2D(this.staffEntries[0].parentMeasure.PositionAndShape.RelativePosition.x+this.staffEntries[0].PositionAndShape.RelativePosition.x,g);s?S.x+=this.staffEntries[0].PositionAndShape.BorderRight:S.x=this.staffEntries[0].parentMeasure.beginInstructionsWidth,this.graceStart&&(S.x+=r.PositionAndShape.RelativePosition.x);const E=new PointF2D(this.staffEntries[this.staffEntries.length-1].parentMeasure.PositionAndShape.RelativePosition.x+this.staffEntries[this.staffEntries.length-1].PositionAndShape.RelativePosition.x,d);if(o?E.x+=this.staffEntries[this.staffEntries.length-1].PositionAndShape.BorderLeft:E.x=this.staffEntries[this.staffEntries.length-1].parentMeasure.PositionAndShape.RelativePosition.x+this.staffEntries[this.staffEntries.length-1].parentMeasure.PositionAndShape.Size.width,this.graceEnd&&(E.x+=r.staffEntryParent.PositionAndShape.RelativePosition.x),b=this.calculateTopPoints(S,E,a,l),b.length===0){const J=new PointF2D((E.x-S.x)/2+S.x,(E.y-S.y)/2+S.y);b.push(J)}const x=Math.atan((d-g)/(m-u)),C=new PointF2D(0,0);let P=new PointF2D(m-u,-(d-g));const k=Matrix2D.getRotationMatrix(x),I=k.getTransposeMatrix();P=k.vectorMultiplication(P);const M=this.calculateTranslatedAndRotatedPointListAbove(b,u,g,k),T=this.calculateMaxLeftSlope(M,C,P),F=this.calculateMaxRightSlope(M,C,P),D=C.y-C.x*T,N=P.y-P.x*F,O=new PointF2D;let B=!1;Math.abs(Math.abs(T)-Math.abs(F))<1e-4?(O.x=P.x/2,O.y=0,B=!0):(O.x=(N-D)/(T-F),O.y=T*O.x+D);const V=this.calculateHeightWidthRatio(P.x,M),R=0,Q=0;let _=y,K=-y;if(!B){const J=this.calculateAngles(y,T,F,A);_=J.startAngle,K=J.endAngle}const G=this.calculateControlPoints(P.x,_,K,M,V,g,d);let U=G.startControlPoint,$=G.endControlPoint;U=I.vectorMultiplication(U),U.x+=u,U.y=-U.y+g,$=I.vectorMultiplication($),$.x+=u,$.y=-$.y+g,this.bezierStartPt=new PointF2D(u,g-R),this.bezierStartControlPt=new PointF2D(U.x,U.y-R),this.bezierEndControlPt=new PointF2D($.x,$.y-Q),this.bezierEndPt=new PointF2D(m,d-Q);const q=a.SkyLine.length,W=l.getLeftIndexForPointX(this.bezierStartPt.x,q),xe=l.getLeftIndexForPointX(this.bezierEndPt.x,q),ue=this.bezierEndPt.x-this.bezierStartPt.x,Y=l.SamplingUnit;for(let J=W;J=W&&(a.SkyLine[Ee]=Math.min(a.SkyLine[Ee],ge.y)),Ee++,Ee=W&&(a.BottomLine[Ee]=Math.max(a.BottomLine[Ee],ge.y)),Ee++,Ee0){this.placement=PlacementEnum.Above;return}const r=this.staffEntries[0],s=this.staffEntries[this.staffEntries.length-1],o=r.graphicalVoiceEntries[0].parentVoiceEntry.StemDirection,a=s.graphicalVoiceEntries[0].parentVoiceEntry.StemDirection;if(o===a)this.placement=o===StemDirectionType.Up?PlacementEnum.Below:PlacementEnum.Above,this.rules.SlurPlacementAtStems&&(this.placement=o===StemDirectionType.Up?PlacementEnum.Above:PlacementEnum.Below);else{let l=r.PositionAndShape.BorderLeft+r.PositionAndShape.RelativePosition.x+r.parentMeasure.PositionAndShape.RelativePosition.x,c=s.PositionAndShape.BorderRight+s.PositionAndShape.RelativePosition.x+s.parentMeasure.PositionAndShape.RelativePosition.x;this.graceStart&&(l+=s.PositionAndShape.RelativePosition.x),this.graceEnd&&(c+=s.staffEntryParent.PositionAndShape.RelativePosition.x);const u=i.getSkyLineMinInRange(l,c)*-1;i.getBottomLineMaxInRange(l,c)-e.StaffHeight>u?this.placement=PlacementEnum.Above:this.placement=PlacementEnum.Below}}calculateTopPoints(i,e,r,s){const o=[];let a=s.getRightIndexForPointX(i.x,r.SkyLine.length),l=s.getLeftIndexForPointX(e.x,r.SkyLine.length);a<0&&(a=0),l>=r.SkyLine.length&&(l=r.SkyLine.length-1);for(let c=a;c=r.BottomLine.length&&(l=r.BottomLine.length-1);for(let c=a;cm&&i>g&&(u+=i/70*this.rules.SlurHeightFlattenLongSlursFactorByWidth,u*=1+e/30*this.rules.SlurHeightFlattenLongSlursFactorByAngle,c/=u);const d=Math.min(.5,Math.max(.1,1.7*e/80*c*Math.pow(Math.max(o,.05),.4))),y=Math.min(.5,Math.max(.1,1.7*-r/80*c*Math.pow(Math.max(o,.05),.4))),A=new PointF2D;A.x=i*d*Math.cos(e*_GraphicalSlur.degreesToRadiansFactor),A.y=i*d*Math.sin(e*_GraphicalSlur.degreesToRadiansFactor);const b=new PointF2D;b.x=i-i*y*Math.cos(r*_GraphicalSlur.degreesToRadiansFactor),b.y=-(i*y*Math.sin(r*_GraphicalSlur.degreesToRadiansFactor));let S=A.y-b.y;for(;this.rules.SlurMaximumYControlPointDistance&&Math.abs(S)>this.rules.SlurMaximumYControlPointDistance;)S<0?(A.y+=1,b.y-=1):(A.y-=1,b.y+=1),S=A.y-b.y;return{startControlPoint:A,endControlPoint:b}}calculateAngles(i,e,r,s){let a=Math.atan(e)/_GraphicalSlur.degreesToRadiansFactor;e>0?a+=20:a-=20;let l=Math.atan(r)/_GraphicalSlur.degreesToRadiansFactor;r<0?l-=20:l+=20;const c=Math.min(Math.max(i,a),s),u=Math.max(Math.min(-i,l),-s);return{startAngle:c,endAngle:u}}};let GraphicalSlur=_GraphicalSlur;GraphicalSlur.degreesToRadiansFactor=Math.PI/180;class VexflowStafflineNoteCalculator{constructor(e){this.staffPitchListMapping=new Dictionary,this.baseLineNote=NoteEnum.B,this.baseLineOctave=1,this.rules=e}trackNote(e){if(!(e instanceof VexFlowGraphicalNote)||e.Clef().ClefType!==ClefEnum.percussion||e.sourceNote.isRest()||this.rules.PercussionOneLineCutoff===0||this.rules.PercussionForceVoicesOneLineCutoff===-1)return;const r=e.parentVoiceEntry.parentStaffEntry.sourceStaffEntry.ParentStaff.idInMusicSheet;let s;this.staffPitchListMapping.containsKey(r)||this.staffPitchListMapping.setValue(r,new Array),s=this.staffPitchListMapping.getValue(r);const o=e.sourceNote.Pitch;VexflowStafflineNoteCalculator.findOrInsert(s,o)}static PitchIndexOf(e,r,s=0){if(s>e.length-1)return-1;for(let o=s;othis.rules.PercussionOneLineCutoff&&!o&&!this.rules.PercussionUseCajon2NoteSystem)return e;const a=e,l=e.sourceNote.Pitch;let c=this.baseLineNote,u=this.baseLineOctave;if(this.rules.PercussionUseCajon2NoteSystem?l.FundamentalNote===NoteEnum.C&&(c=NoteEnum.G,u=1):this.rules.PercussionUseXMLDisplayStep&&e.sourceNote.displayStepUnpitched!==void 0&&(c=e.sourceNote.displayStepUnpitched,u=e.sourceNote.displayOctaveUnpitched+this.rules.PercussionOneLineXMLDisplayStepOctaveOffset),s.length<=this.rules.PercussionForceVoicesOneLineCutoff)a.setAccidental(new Pitch(c,u,l.Accidental));else{const m=VexflowStafflineNoteCalculator.PitchIndexOf(s,l);if(m>-1){const g=Math.ceil(s.length/2);if(!this.rules.PercussionUseXMLDisplayStep)if(m>=g)switch(u=2,(m-g)%5){case 1:c=NoteEnum.E;break;case 2:c=NoteEnum.G;break;case 3:c=NoteEnum.B;break;case 4:c=NoteEnum.D,u=3;break;default:c=NoteEnum.C;break}else switch(m%5){case 1:c=NoteEnum.F;break;case 2:c=NoteEnum.D;break;case 3:c=NoteEnum.B,u=0;break;case 4:c=NoteEnum.G,u=0;break;default:c=NoteEnum.A;break}const d=new Pitch(c,u,l.Accidental);a.setAccidental(d);const y=a.parentVoiceEntry.parentVoiceEntry;!this.rules.SetWantedStemDirectionByXml&&y.Notes.length<2&&(d.Octave>this.baseLineOctave||d.FundamentalNote===this.baseLineNote&&d.Octave===this.baseLineOctave?a.parentVoiceEntry.parentVoiceEntry.WantedStemDirection=StemDirectionType.Up:a.parentVoiceEntry.parentVoiceEntry.WantedStemDirection=StemDirectionType.Down)}}return a}getStafflineUniquePositionCount(e){return this.staffPitchListMapping.containsKey(e)?this.staffPitchListMapping.getValue(e).length:0}}class GraphicalPedal extends GraphicalObject{constructor(e,r){super(),this.getPedal=e,this.setSymbol(),this.PositionAndShape=new BoundingBox$1(this,r)}setSymbol(){!this.getPedal.IsLine&&this.getPedal.IsSign?this.pedalSymbol=MusicSymbol.PEDAL_SYMBOL:this.getPedal.IsLine&&this.getPedal.IsSign?this.pedalSymbol=MusicSymbol.PEDAL_MIXED:this.pedalSymbol=MusicSymbol.PEDAL_BRACKET}}class VexFlowPedal extends GraphicalPedal{constructor(e,r,s=!1,o=!1){switch(super(e,r),this.vfStyle=Vex.Flow.PedalMarking.Styles.BRACKET,this.ChangeBegin=!1,this.ChangeEnd=!1,this.line=-3,this.EndSymbolPositionAndShape=void 0,this.ChangeBegin=e.ChangeBegin,this.ChangeEnd=e.ChangeEnd,this.pedalSymbol){case MusicSymbol.PEDAL_SYMBOL:this.vfStyle=Vex.Flow.PedalMarking.Styles.TEXT,this.EndSymbolPositionAndShape=new BoundingBox$1(this,r);break;case MusicSymbol.PEDAL_MIXED:s&&o?this.vfStyle=Vex.Flow.PedalMarking.Styles.BRACKET_OPEN_BOTH:s?this.vfStyle=Vex.Flow.PedalMarking.Styles.BRACKET_OPEN_BEGIN:o?this.vfStyle=Vex.Flow.PedalMarking.Styles.MIXED_OPEN_END:this.vfStyle=Vex.Flow.PedalMarking.Styles.MIXED;break;case MusicSymbol.PEDAL_BRACKET:default:s&&o?this.vfStyle=Vex.Flow.PedalMarking.Styles.BRACKET_OPEN_BOTH:s?this.vfStyle=Vex.Flow.PedalMarking.Styles.BRACKET_OPEN_BEGIN:o?this.vfStyle=Vex.Flow.PedalMarking.Styles.BRACKET_OPEN_END:this.vfStyle=Vex.Flow.PedalMarking.Styles.BRACKET;break}}setStartNote(e){if(!e)return!1;for(const r of e.graphicalVoiceEntries){const s=r;if(s!=null&&s.vfStaveNote)return this.startNote=s.vfStaveNote,this.startVfVoiceEntry=s,!0}return!1}setEndNote(e){if(!e)return!1;for(const r of e.graphicalVoiceEntries){const s=r;if(s!=null&&s.vfStaveNote)return this.endNote=s.vfStaveNote,this.endVfVoiceEntry=s,!0}return!1}setEndMeasure(e){this.endMeasure=e}CalculateBoundingBox(){}setLine(e){this.line=e}getPedalMarking(){const e=new Vex.Flow.PedalMarking([this.startNote,this.endNote]);return this.endMeasure&&e.setEndStave(this.endMeasure.getVFStave()),e.setStyle(this.vfStyle),e.setLine(this.line),e.setCustomText(this.DepressText,this.ReleaseText),(!this.endVfVoiceEntry||this.getPedal.EndsStave)&&(e.EndsStave=!0),this.getPedal.BeginsStave&&(e.BeginsStave=!0),e.ChangeBegin=this.ChangeBegin,e.ChangeEnd=this.ChangeEnd,e}setEndsStave(e,r){r!=null&&r.gte(e.parentSourceMeasure.Duration)&&(this.getPedal.EndsStave=!0)}setBeginsStave(e,r){e&&r.RealValue===0&&(this.getPedal.BeginsStave=!0)}}class GraphicalGlissando{constructor(e){this.Glissando=e,this.staffEntries=[]}calculateLine(e){const r=this.staffEntries[0],s=this.staffEntries[this.staffEntries.length-1],o=r.findGraphicalNoteFromNote(this.Glissando.StartNote),a=s.findGraphicalNoteFromNote(this.Glissando.EndNote);if(!o&&!a)return;const l=r.parentMeasure.ParentStaffLine;let c,u,m,g;if(o&&r.parentMeasure.ParentStaffLine===this.StaffLine)c=o.PositionAndShape.RelativePosition.x+o.parentVoiceEntry.parentStaffEntry.PositionAndShape.RelativePosition.x+o.parentVoiceEntry.parentStaffEntry.parentMeasure.PositionAndShape.RelativePosition.x+e.GlissandoNoteOffset,m=o.PositionAndShape.AbsolutePosition.y;else{c=s.parentMeasure.beginInstructionsWidth-.4;const A=this.Glissando.Direction===ColDirEnum.Down?-1:1;m=a.PositionAndShape.AbsolutePosition.y+A*e.GlissandoStafflineStartYDistanceToNote}if(a&&s.parentMeasure.ParentStaffLine===this.StaffLine)u=a.PositionAndShape.RelativePosition.x+a.parentVoiceEntry.parentStaffEntry.PositionAndShape.RelativePosition.x+a.parentVoiceEntry.parentStaffEntry.parentMeasure.PositionAndShape.RelativePosition.x-.5-e.GlissandoNoteOffset,c>u&&(c=u-e.GlissandoStafflineStartMinimumWidth),g=a.PositionAndShape.AbsolutePosition.y;else{if(l.Measures.last().parentSourceMeasure.HasEndLine)return;u=l.PositionAndShape.Size.width,u-c>e.GlissandoStafflineEndOffset&&(c=u-e.GlissandoStafflineEndOffset);const A=this.Glissando.Direction===ColDirEnum.Down?1:-1;g=o.PositionAndShape.AbsolutePosition.y+A*e.GlissandoStafflineStartYDistanceToNote}const d=new PointF2D(c,m),y=new PointF2D(u,g);this.Width===void 0&&(this.Width=e.GlissandoDefaultWidth),this.Line=new GraphicalLine(d,y,this.Width)}}class VexFlowGlissando extends GraphicalGlissando{}class GraphicalWavyLine extends GraphicalObject{constructor(e,r){super(),this.getWavyLine=e,this.PositionAndShape=new BoundingBox$1(this,r)}}class VexflowVibratoBracket extends GraphicalWavyLine{constructor(e,r,s=!1){super(e,r),this.line=1,this.isVibrato=!1,this.toEndOfStopStave=!1,this.isVibrato=s}get ToEndOfStopStave(){return this.toEndOfStopStave}setStartNote(e){for(const r of e.graphicalVoiceEntries){const s=r;if(s!=null&&s.vfStaveNote)return this.startNote=s.vfStaveNote,this.startVfVoiceEntry=s,!0}return!1}setEndNote(e){for(const r of e.graphicalVoiceEntries){const s=r;if(s!=null&&s.vfStaveNote){this.endNote=s.vfStaveNote,this.endVfVoiceEntry=s;const o=this.endVfVoiceEntry.parentStaffEntry.parentMeasure.staffEntries,a=o[o.length-1];return this.toEndOfStopStave=a===this.endVfVoiceEntry.parentStaffEntry,!0}}return!1}CalculateBoundingBox(){const e=this.getVibratoBracket();this.boundingBox.Size.height=e.render_options.wave_height*.2}getVibratoBracket(){const e=new Vex.Flow.VibratoBracket({start:this.startNote,stop:this.endNote,toEndOfStopStave:this.toEndOfStopStave});return e.setLine(this.line),this.isVibrato?e.render_options.vibrato_width=20:e.render_options.wave_girth=4,e}}const VF=Vex.Flow;class VexFlowMusicSheetCalculator extends MusicSheetCalculator{constructor(e){var r,s,o,a,l,c,u,m;super(),this.beamsNeedUpdate=!1,this.rules=e,MusicSheetCalculator.symbolFactory=new VexFlowGraphicalSymbolFactory,MusicSheetCalculator.TextMeasurer=new VexFlowTextMeasurer(this.rules),MusicSheetCalculator.stafflineNoteCalculator=new VexflowStafflineNoteCalculator(this.rules),((r=this.rules.DefaultVexFlowNoteFont)==null?void 0:r.toLowerCase())==="gonville"?Vex.Flow.DEFAULT_FONT_STACK=[(s=Vex.Flow.Fonts)==null?void 0:s.Gonville,(o=Vex.Flow.Fonts)==null?void 0:o.Bravura,(a=Vex.Flow.Fonts)==null?void 0:a.Custom]:((l=this.rules.DefaultVexFlowNoteFont)==null?void 0:l.toLowerCase())==="petaluma"&&(Vex.Flow.DEFAULT_FONT_STACK=[(c=Vex.Flow.Fonts)==null?void 0:c.Petaluma,(u=Vex.Flow.Fonts)==null?void 0:u.Gonville,(m=Vex.Flow.Fonts)==null?void 0:m.Bravura])}clearRecreatedObjects(){super.clearRecreatedObjects(),MusicSheetCalculator.stafflineNoteCalculator=new VexflowStafflineNoteCalculator(this.rules);for(const e of this.graphicalMusicSheet.MeasureList)for(const r of e)r==null||r.clean()}formatMeasures(){for(const e of this.graphicalMusicSheet.MeasureList){if(!e||!e[0])continue;e.find(s=>s==null?void 0:s.isVisible()).format();for(const s of e){for(const o of s.staffEntries)o.calculateXPosition();s.finalizeBeams()}}this.beamsNeedUpdate=!1}calculateMeasureXLayout(e){const r=[];for(const g of e)g!=null&&g.isVisible()&&r.push(g);if(r.length===0)return 0;e=r;const s=[],o=new VF.Formatter({softmaxFactor:this.rules.SoftmaxFactorVexFlow});let a=e[0].staffEntries.length,l=1;for(const g of e){if(!g)continue;let d=0;for(const b of g.staffEntries)d+=b.setMaxAccidentals();g.parentSourceMeasure.ImplicitMeasure&&(a=Math.max(g.staffEntries.length,a),l=Math.max(g.staffEntries.length+d,l));const y=g.vfVoices,A=[];for(const b in y)if(y.hasOwnProperty(b)){const S=y[b];g.hasOnlyRests&&!S.ticksUsed.equals(S.totalTicks)&&(S.ticksUsed=S.totalTicks),A.push(S),s.push(S)}if(A.length===0){loglevelExports.debug("Found a measure with no voices. Continuing anyway.",y);continue}o.joinVoices(A)}let c=12;const u=e[0].parentSourceMeasure,m=.3;if(s.length>0){if(c=o.preCalculateMinTotalWidth(s)/unitInPixels*this.rules.VoiceSpacingMultiplierVexflow+this.rules.VoiceSpacingAddendVexflow+a*m,u!=null&&u.ImplicitMeasure){c=u.Duration.RealValue/u.ActiveTimeSignature.RealValue*c;let y=0;const A=u.measureListIndex;if(A>1)for(const b of this.graphicalMusicSheet.MeasureList[A-1]){const S=b==null?void 0:b.parentSourceMeasure.endingBarStyleEnum;if(S===SystemLinesEnum.ThinBold||S===SystemLinesEnum.DotsThinBold){y=this.rules.PickupMeasureRepetitionSpacing;break}}c+=y,a>1?c+=l*m*1.5:A>1&&a===1&&(c+=this.rules.PickupMeasureSpacingSingleNoteAddend),c*=this.rules.PickupMeasureWidthMultiplier}MusicSheetCalculator.setMeasuresMinStaffEntriesWidth(e,c);const g=(y,A)=>{o.formatToStave(s,A.getVFStave())},d=(y,A)=>{o.formatToStave(s,A.getVFStave(),{align_rests:!0,context:void 0})};for(const y of e){if(this.rules.AlignRests===AlignRestOption.Never)y.formatVoices=g;else if(this.rules.AlignRests===AlignRestOption.Always)y.formatVoices=d;else if(this.rules.AlignRests===AlignRestOption.Auto){let A=!1;for(const b of y.staffEntries){let S=0,E=0;for(const x of b.graphicalVoiceEntries)if(x.parentVoiceEntry.IsGrace||x&&x.notes&&x.notes[0]&&x.notes[0].sourceNote&&x.notes[0].sourceNote.PrintObject&&S++,x&&x.notes&&x.notes[0]&&x.notes[0].sourceNote&&x.notes[0].sourceNote.isRest()&&x.notes[0].sourceNote.PrintObject&&E++,S>1&&E>=1){A=!0;break}if(A)break}A?y.formatVoices=d:y.formatVoices=g}if(y===e[0]){const A=y;A.formatVoices(c*unitInPixels,A)}}}for(const g of e)if(g)for(const d of g.staffEntries)d.calculateXPosition();for(const g of e){if(!g)continue;const d=g.vfVoices,y=[];for(const A in d)d.hasOwnProperty(A)&&y.push(d[A]);if(y.length===0){loglevelExports.debug("Found a measure with no voices. Continuing anyway.",d);continue}o.joinVoices(y)}return c}calculateElongationFactor(e,r,s,o,a,l,c,u){let m=a,g=0;for(const d of e){const y=d.GraphicalLabel.Label.textAlignment;let A=c,b=u;if(d instanceof GraphicalLyricEntry&&d.ParentLyricWord){d.LyricsEntry.SyllableIndex>0&&(A=this.rules.BetweenSyllableMinimumDistance,TextAlignment.IsCenterAligned(y)&&(A+=1));const V=d.ParentLyricWord.GetLyricWord.Syllables;V.length>1&&d.LyricsEntry.SyllableIndex4&&(O*=1.1)}}else s[g]&&(O=k/I);D=Math.max(N,O),m=Math.max(m,D);let B=Math.max(k-I||0,0);s[g]&&(B+=s[g].cumulativeOverlap),s[g]={cumulativeOverlap:B,extend:d instanceof GraphicalLyricEntry?d.LyricsEntry.extend:!1,labelWidth:E,measureNumber:l,sourceNoteDuration:d instanceof GraphicalLyricEntry?d.LyricsEntry&&d.LyricsEntry.Parent.Notes[0].Length:!1,text:d instanceof GraphicalLyricEntry?d.LyricsEntry.Text:d.GraphicalLabel.Label.text,xPosition:P},g++}return m}calculateElongationFactorFromStaffEntries(e,r,s,o){let a=s;const l={},c={};for(const u of e)u.LyricsEntries.length>0&&this.rules.RenderLyrics&&(a=this.calculateElongationFactor(u.LyricsEntries,u,l,r,a,o,this.rules.HorizontalBetweenLyricsDistance,this.rules.LyricOverlapAllowedIntoNextMeasure)),u.graphicalChordContainers.length>0&&this.rules.RenderChordSymbols&&(a=this.calculateElongationFactor(u.graphicalChordContainers,u,c,r,a,o,this.rules.ChordSymbolXSpacing,this.rules.ChordOverlapAllowedIntoNextMeasure));return a}calculateMeasureWidthFromStaffEntries(e,r){var l;let s=1;if(!((l=window.GYM)==null?void 0:l.multitrack))for(const c of e)!c||c.staffEntries.length===0||(s=this.calculateElongationFactorFromStaffEntries(c.staffEntries,r,s,c.MeasureNumber),s=1);return s=Math.min(s,this.rules.MaximumLyricsElongationFactor),r*s}createGraphicalTie(e,r,s,o,a){return new GraphicalTie(e,o,a)}updateStaffLineBorders(e){e.SkyBottomLineCalculator.updateStaffLineBorders()}graphicalMeasureCreatedCalculations(e){e.rules=this.rules,e.graphicalMeasureCreatedCalculations()}layoutVoiceEntry(e,r,s,o){for(let a=0;a=2&&(l=o.vfnote[0],c=o.vfnote[1]);let u,m=0;if(a&&a.vfnote&&a.vfnote.length>=2&&(u=a.vfnote[0],m=a.vfnote[1]),r){if(l){const E=new VF.StaveTie({first_indices:[c],first_note:l}),x=o.parentVoiceEntry.parentStaffEntry.parentMeasure;if(u){u.getDuration()==="w"&&((d=(g=u.keyProps)==null?void 0:g[0])==null?void 0:d.line)>=3&&u.setStemDirection(-1);let C=((y=window.GYM)==null?void 0:y.tieDirection)||0;Math.abs(C)===1&&(((b=(A=u.keyProps)==null?void 0:A[0])==null?void 0:b.line)>=3?u.setStemDirection(-C):u.setStemDirection(C)),E==null||E.setDirection(u.getStemDirection())}if(x.vfTies.length>0){const C=x.vfTies[0].direction;E==null||E.setDirection(C?-C:1)}x.addStaveTie(E,e)}if(u){const E=new VF.StaveTie({last_indices:[m],last_note:u}),x=a.parentVoiceEntry.parentStaffEntry.parentMeasure;if(x.vfTies.length>0){const C=x.vfTies[0].direction;E==null||E.setDirection(C?-C:1)}x.addStaveTie(E,e)}}else if(l||u){let E;if(s)if(e.Tie.Type==="S"){const P=e.StartNote.sourceNote,k=e.EndNote.sourceNote;let I=1;P.FretNumber>k.FretNumber&&(I=-1),E=new VF.TabSlide({first_indices:[c],first_note:l,last_indices:[m],last_note:u},I)}else E=new VF.TabTie({first_indices:[c],first_note:l,last_indices:[m],last_note:u},e.Tie.Type);else{E=new VF.StaveTie({first_indices:[c],first_note:l,last_indices:[m],last_note:u});const P=e.Tie.getTieDirection(o.sourceNote);P===PlacementEnum.Below?E.setDirection(1):P===PlacementEnum.Above&&E.setDirection(-1)}const x=a.parentVoiceEntry.parentStaffEntry.parentMeasure,C=((S=window.GYM)==null?void 0:S.graceCustom)||!1;C&&E.setDirection(C.direction),x.addStaveTie(E,e)}}calculateDynamicExpressionsForMultiExpression(e,r,s){if(rthis.rules.MaxMeasureToDrawIndex)return;const o=e.AbsoluteTimestamp,a=this.graphicalMusicSheet.MeasureList[r],l=a[s].ParentStaffLine,c=a[s];if(!l)return;const u=e.StartingContinuousDynamic,m=u!==void 0&&!u.IsStartOfSoftAccent,g=this.getRelativePositionInStaffLineFromTimestamp(o,s,l,l==null?void 0:l.isPartOfMultiStaffInstrument(),void 0,m);if(g.x<=0&&(g.x=c.beginInstructionsWidth+this.rules.RhythmRightMargin),e.InstantaneousDynamic){const d=new VexFlowInstantaneousDynamicExpression(e.InstantaneousDynamic,l,c);this.calculateGraphicalInstantaneousDynamicExpression(d,g,o),this.dynamicExpressionMap.set(o.RealValue,d.PositionAndShape)}if(u){const d=new VexFlowContinuousDynamicExpression(u,l,c.parentSourceMeasure);if(d.StartMeasure=c,d.IsSoftAccent=e.StartingContinuousDynamic.IsStartOfSoftAccent,!d.IsVerbal&&u.EndMultiExpression)try{this.calculateGraphicalContinuousDynamic(d,g),d.updateSkyBottomLine()}catch(y){}else d.IsVerbal?this.calculateGraphicalVerbalContinuousDynamic(d,g):loglevelExports.warn("This continuous dynamic is not covered. measure"+e.SourceMeasureParent.MeasureNumber)}}createMetronomeMark(e,r){var C,P,k,I,M,T,F,D,N,O,B;const s=Math.max(e.ParentMultiTempoExpression.SourceMeasureParent.MeasureNumber-1,0),o=r||s,a=Math.max(e.StaffNumber-1,0),l=this.graphicalMusicSheet.MeasureList[o][a].getVFStave();let c="q";if(e.beatUnit){const V=NoteTypeHandler.getNoteDurationFromType(e.beatUnit);c=VexFlowConverter.durations(V,!1)[0]}let u=this.rules.MetronomeMarkYShift,m=!1;const g=[];if(e.parentMeasure){for(const V of e.parentMeasure.StaffLinkedExpressions)for(const R of V)R&&R instanceof UnknownExpression&&g.push(R);for(const V of e.parentMeasure.TempoExpressions){const R=((C=V.InstantaneousTempo)==null?void 0:C.Enum)===TempoEnum.metronomeMark;if(!e.beatUnit&&V.InstantaneousTempo.beatUnit){const Q=NoteTypeHandler.getNoteDurationFromType(e.beatUnit);c=VexFlowConverter.durations(Q,!1)[0]}if(V.getPlacementOfFirstEntry()===PlacementEnum.Above&&!R){m=!0;break}}}m&&(u-=1.4);const d=(P=this.graphicalMusicSheet.MeasureList[0][0].ParentStaffLine)==null?void 0:P.SkyLine;let y=e.TempoInBpm,A="",b="",S="";for(const V of this.graphicalMusicSheet.MeasureList[o][a].parentSourceMeasure.TempoExpressions){if(b=V.CombinedExpressionsText,isSpecialMark(V.CombinedExpressionsText)){A=V.CombinedExpressionsText;break}if(isSpeedKeyword(V.CombinedExpressionsText)||isSpeedHiddenKeyword(V.CombinedExpressionsText)){A=formatSpeedKeyword(V.CombinedExpressionsText),y=V.sourceMeasure.TempoInBPM,isSpeedKeyword(V.CombinedExpressionsText)&&(S=c);break}}const E={bpm:e.TempoInBpm,dots:e.dotted,duration:c,name:A};A&&(E.bpm=y/(E.dots?1.5:1),isSpeedKeyword(b)?E.duration=S:(y===SpeedTag[A]||!SpeedTag[A])&&(E.duration=""));const x=((T=(M=(I=(k=this.graphicalMusicSheet.MeasureList[o][a])==null?void 0:k.vfVoices)==null?void 0:I[1])==null?void 0:M.boundingBox)==null?void 0:T.y)||0;if(this.rules.MetronomeMarksDrawn){if(d){const _=((D=(F=this.graphicalMusicSheet.MeasureList[0])==null?void 0:F[a])==null?void 0:D.ParentStaffLine).Measures.map(K=>K.MeasureNumber-1);if(x&&_.includes(o)&&(isSpeedKeyword(b)||isSpeedHiddenKeyword(b))){const K=d.slice(0,9);let G=Math.min(...K);G=G<0?G-1:G,u+=G}_.includes(o)&&g.length?d[0]=Math.min(d[0],-4.5+u-4):d[0]=Math.min(d[0],-4.5+u)}l.options.line_config.reduce((Q,_)=>(_.visible&&Q++,Q),0)<5&&(u-=2),l.setTempo(E,u*unitInPixels);let R=0;try{const Q=(B=(O=(N=this.graphicalMusicSheet.MeasureList[o][a])==null?void 0:N.vfVoices)==null?void 0:O[1])==null?void 0:B.getTickables();R+=Q[e.parentMeasure.metronomeNoteIndex].getBoundingBox().getX()-l.getNoteStartX()}catch(Q){}l.getModifiers()[l.getModifiers().length-1].setShiftX(R)}}calculateRehearsalMark(e){var m,g,d,y,A,b,S,E,x;const r=e.rehearsalExpression;if(!r)return;const s=(d=(g=(m=e.VerticalMeasureList)==null?void 0:m[0])==null?void 0:g.getVFStave)==null?void 0:d.call(g);if(!s)return;const o=-this.rules.RehearsalMarkYOffsetDefault-this.rules.RehearsalMarkYOffset;let a=this.rules.RehearsalMarkXOffsetDefault+this.rules.RehearsalMarkXOffset;e.IsSystemStartMeasure&&(a+=this.rules.RehearsalMarkXOffsetSystemStartMeasure);const l=this.rules.RehearsalMarkFontSize,c=s.getModifiers(),u=c.find(C=>C.getCategory().toLocaleLowerCase()==="repetitions");if(u&&u.setShiftY(u.y_shift-10),s.setSection(r.label,o,a,l),(b=(A=(y=e.VerticalMeasureList)==null?void 0:y[0])==null?void 0:A.ParentStaffLine)!=null&&b.AbstractExpressions){const C=c.find(P=>P.getCategory().toLocaleLowerCase()==="stavesection");for(let P of((x=(E=(S=e==null?void 0:e.VerticalMeasureList)==null?void 0:S[0])==null?void 0:E.ParentStaffLine)==null?void 0:x.AbstractExpressions)||[])P instanceof GraphicalUnknownExpression&&(C&&(P.Label.PositionAndShape.RelativePosition.y-=.5),u&&(P.Label.PositionAndShape.RelativePosition.y-=1.7))}}calculateSingleOctaveShift(e,r,s,o){var b;const a=r.OctaveShiftStart,l=a.ParentStartMultiExpression.Timestamp,c=(b=a.ParentEndMultiExpression)==null?void 0:b.Timestamp,u=this.rules.MinMeasureToDrawIndex,m=this.rules.MaxMeasureToDrawIndex;let g=this.graphicalMusicSheet.MeasureList[s][o].ParentStaffLine;g||(g=this.graphicalMusicSheet.MeasureList[u][o].ParentStaffLine);let d;a.ParentEndMultiExpression?d=this.graphicalMusicSheet.getGraphicalMeasureFromSourceMeasureAndIndex(a.ParentEndMultiExpression.SourceMeasureParent,o):d=this.graphicalMusicSheet.getLastGraphicalMeasureFromIndex(o,!0),d.MeasureNumber>m+1&&(d=this.graphicalMusicSheet.getLastGraphicalMeasureFromIndex(o,!0));let y;if(a.ParentEndMultiExpression?y=this.graphicalMusicSheet.getGraphicalMeasureFromSourceMeasureAndIndex(a.ParentStartMultiExpression.SourceMeasureParent,o):y=this.graphicalMusicSheet.MeasureList[u][o],y.MeasureNumberm||d.parentSourceMeasure.measureListIndexm)return;let A=d.ParentStaffLine;if(A||(A=g),d&&g&&A){const S=new VexFlowOctaveShift(a,g.PositionAndShape);if(!S.startNote){let C;for(const P of y.staffEntries)if(P){C=P;break}if(!C||(S.setStartNote(C),!S.startNote))return}if(!S.endNote){let C;for(let P=d.staffEntries.length-1;P>=0;P++)if(d.staffEntries[P]){C=d.staffEntries[P];break}if(!C){S.graphicalEndAtMeasureEnd=!0;return}if(S.setEndNote(C),!S.endNote)return}let E=y.findGraphicalStaffEntryFromTimestamp(l);E||(E=y.staffEntries[0]);let x=d.findGraphicalStaffEntryFromTimestamp(c);if(x||(x=d.staffEntries[d.staffEntries.length-1]),S.setStartNote(E),A!==g){S.endsOnDifferentStaffLine=!0;let C=this.findLastStafflineMeasure(g);C===void 0&&(C=d);const P=C.staffEntries[C.staffEntries.length-1];S.setEndNote(P),S.graphicalEndAtMeasureEnd=!0,S.endMeasure=C;const k=A.ParentMusicSystem.Id-g.ParentMusicSystem.Id;if(k>0)for(let I=g.ParentMusicSystem.Id;I=0;r--){const s=e.Measures[r];if(s.staffEntries.length>0)return s}}calculateSinglePedal(e,r,s,o){var b;const a=r.PedalStart,l=a.ParentStartMultiExpression.Timestamp,c=(b=a.ParentEndMultiExpression)==null?void 0:b.Timestamp,u=this.rules.MinMeasureToDrawIndex,m=this.rules.MaxMeasureToDrawIndex;let g=this.graphicalMusicSheet.MeasureList[s][o].ParentStaffLine;g||(g=this.graphicalMusicSheet.MeasureList[u][o].ParentStaffLine);let d;a.ParentEndMultiExpression?d=this.graphicalMusicSheet.getGraphicalMeasureFromSourceMeasureAndIndex(a.ParentEndMultiExpression.SourceMeasureParent,o):d=this.graphicalMusicSheet.getLastGraphicalMeasureFromIndex(o,!0),d||(d=a.ParentStartMultiExpression.SourceMeasureParent.VerticalMeasureList[o]),d.MeasureNumber>m+1&&(d=this.graphicalMusicSheet.getLastGraphicalMeasureFromIndex(o,!0));let y;if(a.ParentEndMultiExpression?y=this.graphicalMusicSheet.getGraphicalMeasureFromSourceMeasureAndIndex(a.ParentStartMultiExpression.SourceMeasureParent,o):(y=this.graphicalMusicSheet.getGraphicalMeasureFromSourceMeasureAndIndex(a.ParentStartMultiExpression.SourceMeasureParent,o),y||(y=this.graphicalMusicSheet.MeasureList[u][o])),y.MeasureNumberm||d.parentSourceMeasure.measureListIndexm)return;let A=d.ParentStaffLine;if(A||(A=g),d&&g&&A){let S=!1;g!==A&&(S=!0);const E=new VexFlowPedal(a,g.PositionAndShape,!1,S);E.setEndsStave(d,c);let x=y.findGraphicalStaffEntryFromTimestamp(l);x||(x=y.staffEntries[0]);let C=d.findGraphicalStaffEntryFromTimestamp(c);if(C||(C=d.staffEntries[d.staffEntries.length-1]),!E.setStartNote(x))return;if(E.setBeginsStave(E.startNote.isRest(),l),A!==g)if(E.pedalSymbol===MusicSymbol.PEDAL_SYMBOL){E.setEndNote(C),E.setEndMeasure(d),E.ReleaseText=" ",E.CalculateBoundingBox(),this.calculatePedalSkyBottomLine(E.startVfVoiceEntry,E.endVfVoiceEntry,E,g);const P=A.Measures[0],k=new VexFlowPedal(a,P.PositionAndShape);E.setEndsStave(d,c);const I=P.staffEntries[0];if(!k.setStartNote(I))return;k.setEndNote(C),k.setEndMeasure(d),E.setEndMeasure(d),A.Pedals.push(k),k.CalculateBoundingBox(),k.DepressText=" ",this.calculatePedalSkyBottomLine(k.startVfVoiceEntry,k.endVfVoiceEntry,k,A)}else{let P=this.findLastStafflineMeasure(g);P===void 0&&(P=d);const k=P.staffEntries[P.staffEntries.length-1];E.setEndNote(k),E.setEndMeasure(d),E.ChangeEnd=!1;const I=A.ParentMusicSystem.Id-g.ParentMusicSystem.Id;if(I>0){let M=1;for(let T=g.ParentMusicSystem.Id;Tm+1&&(d=this.graphicalMusicSheet.getLastGraphicalMeasureFromIndex(o,!0));let y;if(a.ParentEndMultiExpression?y=this.graphicalMusicSheet.getGraphicalMeasureFromSourceMeasureAndIndex(a.ParentStartMultiExpression.SourceMeasureParent,o):y=this.graphicalMusicSheet.MeasureList[u][o],y.MeasureNumberm||d.parentSourceMeasure.measureListIndexm)return;let A=d.ParentStaffLine;if(A||(A=g),d&&g&&A){const S=new VexflowVibratoBracket(a,g.PositionAndShape,y.ParentStaff.isTab);let E=y.findGraphicalStaffEntryFromTimestamp(l);E||(E=y.staffEntries[0]);let x=d.findGraphicalStaffEntryFromTimestamp(c);if(x||(x=d.staffEntries[d.staffEntries.length-1]),S.setStartNote(E),A!==g){let C=g.Measures[g.Measures.length-1];C===void 0&&(C=d);const P=C.staffEntries[C.staffEntries.length-1];if(S.setEndNote(P),A.ParentMusicSystem.Id-g.ParentMusicSystem.Id>0)for(let I=g.ParentMusicSystem.Id;Id){const P=d;d=g,g=P}o.SkyBottomLineCalculator.updateBottomLineInRange(g,d,y+x)}for(const x of o.Pedals){const C=x,P=C.getPedalMarking(),k=P.line+3+(o.StaffLines.length-1);if(y>k){const I=P.render_options.text_margin_right/10;let M=C.startVfVoiceEntry.PositionAndShape.AbsolutePosition.x-I,T;C.setLine(y-3-(o.StaffLines.length-1));let F=(b=C.endVfVoiceEntry)==null?void 0:b.PositionAndShape;if(F||(F=C.endMeasure.PositionAndShape),C.EndSymbolPositionAndShape){const D=c.render_options.glyph_point_size/20;T=M+3.4;const N=F.AbsolutePosition.x-I,O=N+1.5;o.SkyBottomLineCalculator.updateBottomLineInRange(M,T,y+D),o.SkyBottomLineCalculator.updateBottomLineInRange(N,O,y+D)}else{const D=P.render_options.bracket_height/10;if(P.EndsStave)T=F.AbsolutePosition.x+F.Size.width-I;else switch(c.style){case l.BRACKET_OPEN_END:case l.BRACKET_OPEN_BOTH:case l.MIXED_OPEN_END:T=F.AbsolutePosition.x+F.BorderRight-I;break;default:T=F.AbsolutePosition.x+F.BorderLeft-I;break}const N=(E=(S=C.endVfVoiceEntry)==null?void 0:S.parentStaffEntry)==null?void 0:E.vfClefBefore;if(N){const O=N.getWidth()/10;T+=O}if(M>T){const O=M;M=T,T=O}o.SkyBottomLineCalculator.updateBottomLineInRange(M,T,y+D)}}}}calculateOctaveShiftSkyBottomLine(e,r,s,o){if(!r){loglevelExports.warn("octaveshift: no endStaffEntry");return}let a=r.PositionAndShape;s.graphicalEndAtMeasureEnd&&(a=r.parentMeasure.PositionAndShape);let l=e.PositionAndShape.Size.width,c=a.Size.width;e.hasOnlyRests()?l=-l:l/=2,s.graphicalEndAtMeasureEnd||(r.hasOnlyRests()?c*=2:c/=2,e===r&&(c*=2));let u=e.PositionAndShape.AbsolutePosition.x-l,m=a.AbsolutePosition.x+c;if(u>m){const y=u;u=m,m=y}s.PositionAndShape.Size.width=m-u;const g=s.getTextBracket(),d=g.font.size/10;if(g.position===VF.TextBracket.Positions.TOP){const y=Math.ceil(o.SkyBottomLineCalculator.getSkyLineMinInRange(u,m));if(y===1/0)return;g.start.getStave().options.top_text_position=Math.abs(y),o.SkyBottomLineCalculator.updateSkyLineInRange(u,m,y-d*2)}else{const y=o.SkyBottomLineCalculator.getBottomLineMaxInRange(u,m);if(y===1/0)return;g.start.getStave().options.bottom_text_position=y,e.parentMeasure!==r.parentMeasure&&(g.stop.getStave().options.bottom_text_position=y),o.SkyBottomLineCalculator.updateBottomLineInRange(u,m,y+d*1.5)}}calculateWordRepetitionInstruction(e,r){let s;const o=this.graphicalMusicSheet.MeasureList[r];for(let a=0,l=o.length;as.StaffLines));let r=0;for(const s of e)for(const o of s.Measures)o&&r++;this.rules.AlwaysSetPreferredSkyBottomLineBackendAutomatically&&this.rules.setPreferredSkyBottomLineBackendAutomatically(r);for(const s of e)s.SkyBottomLineCalculator.calculateLines()}calculateExpressionAlignements(){for(const e of this.musicSystems)for(const r of e.StaffLines)try{r.AlignmentManager.alignDynamicExpressions(),r.AbstractExpressions.forEach(s=>{s.updateSkyBottomLine()})}catch(s){}}handleTiedGraphicalNote(e,r,s,o,a,l,c,u){}handleBeam(e,r,s){e.parentVoiceEntry.parentStaffEntry.parentMeasure.handleBeam(e,r)}handleVoiceEntryLyrics(e,r,s){e.LyricsEntries.forEach((o,a)=>{const l=new GraphicalLyricEntry(a,r,this.rules.LyricsHeight,this.rules.StaffHeight);if(r.LyricsEntries.push(l),l.GraphicalLabel.setLabelPositionAndShapeBorders(),a.Word){const u=a.Word.Syllables.indexOf(a);let m=s.indexOf(a.Word);if(m===-1&&(s.push(a.Word),m=s.indexOf(a.Word)),this.graphicalLyricWords.length===0||m>this.graphicalLyricWords.length-1){const g=new GraphicalLyricWord(a.Word);l.ParentLyricWord=g,g.GraphicalLyricsEntries[u]=l,this.graphicalLyricWords.push(g)}else{const g=this.graphicalLyricWords[m];l.ParentLyricWord=g,g.GraphicalLyricsEntries[u]=l,g.isFilled()&&(s.splice(m,1),this.graphicalLyricWords.splice(this.graphicalLyricWords.indexOf(g),1))}}})}handleVoiceEntryOrnaments(e,r,s){}handleVoiceEntryArticulations(e,r,s){}handleVoiceEntryTechnicalInstructions(e,r,s){}handleTuplet(e,r,s){e.parentVoiceEntry.parentStaffEntry.parentMeasure.handleTuplet(e,r)}findIndexGraphicalSlurFromSlur(e,r){for(let s=0;s=0){const d=o[g];d.staffEntries.indexOf(l)===-1&&d.staffEntries.push(l),o.splice(g,1)}}}for(const c of o)c.staffEntries.indexOf(l)===-1&&c.staffEntries.push(l)}}for(const r of this.musicSystems)for(const s of r.StaffLines){const o=s.GraphicalSlurs.sort(GraphicalSlur.Compare);for(const a of o)a.slur.isCrossed()||a.calculateCurve(this.rules)}}calculateGlissandi(){const e={};for(const r of this.graphicalMusicSheet.MeasureList[0])e[r.ParentStaff.idInMusicSheet]=[];for(const r of this.musicSystems)for(const s of r.StaffLines){const o=e[s.ParentStaff.idInMusicSheet];for(let a=0;a=0){const d=o[g];d.staffEntries.indexOf(l)===-1&&d.staffEntries.push(l),o.splice(g,1)}}}}for(const c of o)c.staffEntries.indexOf(l)===-1&&c.staffEntries.push(l)}}for(const r of this.musicSystems)for(const s of r.StaffLines)for(const o of s.GraphicalGlissandi)if(s.ParentStaff.isTab){const l=o.Glissando.StartNote,c=o.Glissando.EndNote,u=o.staffEntries[0].findGraphicalNoteFromNote(l),m=o.staffEntries.last().findGraphicalNoteFromNote(c);if(!u&&!m)return;let g=1;l.FretNumber>c.FretNumber&&(g=-1);let d,y,A;u&&u.vfnote&&u.vfnote.length>=2&&(A=u.vfnote[0],d=[0]);let b;m&&m.vfnote&&m.vfnote.length>=2&&(b=m.vfnote[0],y=[0]);const S=new VF.TabSlide({first_indices:d,first_note:A,last_indices:y,last_note:b},g),E=u==null?void 0:u.parentVoiceEntry.parentStaffEntry.parentMeasure;E&&(E.vfTies.push(S),o.vfTie=S);const x=m==null?void 0:m.parentVoiceEntry.parentStaffEntry.parentMeasure;x&&(x.vfTies.push(S),o.vfTie=S)}}}class MusicPartManager{constructor(e){this.musicSheet=e}reInit(){this.init()}init(){this.parts=this.musicSheet.Repetitions.slice(),this.sheetStart=this.musicSheet.SelectionStart=new Fraction$1(0,1),this.sheetEnd=this.musicSheet.SelectionEnd=this.musicSheet.SheetEndTimestamp,this.calcMapping()}getCurrentRepetitionTimestampTransform(e){let r;for(let s=this.timestamps.length-1;s>=0;s--)if(r=this.timestamps[s],e.gte(r.from))return r;return this.timestamps[0]}absoluteEnrolledToSheetTimestamp(e){if(this.timestamps.length===0)return e;const r=this.getCurrentRepetitionTimestampTransform(e);return Fraction$1.plus(e,Fraction$1.minus(r.to,r.from))}get Parts(){return this.parts}get MusicSheet(){return this.musicSheet}getIterator(e){return e?new MusicPartManagerIterator(this.musicSheet,e,void 0):new MusicPartManagerIterator(this.musicSheet,this.musicSheet.SelectionStart,this.musicSheet.SelectionEnd)}setSelectionStart(e){this.musicSheet.SelectionStart=e,this.musicSheet.SelectionEnd=void 0}setSelectionRange(e,r){this.musicSheet.SelectionStart=e!=null?e:this.sheetStart,this.musicSheet.SelectionEnd=r!=null?r:this.sheetEnd}calcMapping(){this.timestamps=[];const e=this.getIterator();let r=e.CurrentRepetition,s=new TimestampTransform(e.CurrentEnrolledTimestamp.clone(),e.CurrentSourceTimestamp.clone(),void 0,0);for(this.timestamps.push(s);!e.EndReached;){if(e.JumpOccurred||r!==e.CurrentRepetition){if(r=e.CurrentRepetition,e.backJumpOccurred){const o=e.JumpResponsibleRepetition;s.nextBackJump=e.CurrentEnrolledTimestamp,s.curRepetition=o,s.curRepetitionIteration=e.CurrentJumpResponsibleRepetitionIterationBeforeJump;for(let a=this.timestamps.length-2;a>=0&&!(o.AbsoluteTimestamp.gt(this.timestamps[a].to)||this.timestamps[a].curRepetition);a--)this.timestamps[a].nextBackJump=s.nextBackJump,this.timestamps[a].curRepetition=o,this.timestamps[a].curRepetitionIteration=s.curRepetitionIteration}s=new TimestampTransform(e.CurrentEnrolledTimestamp.clone(),e.CurrentSourceTimestamp.clone(),void 0,0),this.timestamps.push(s)}e.moveToNext()}}}class TimestampTransform{constructor(e,r,s,o){this.from=e,this.to=r,this.curRepetition=s,this.curRepetitionIteration=o,this.nextBackJump=void 0,this.nextForwardJump=void 0}}class PartListEntry{constructor(e){this.enrolledTimestamps=[],this.visible=!0,this.musicSheet=e}get Visible(){return this.visible}set Visible(e){this.visible=e}getFirstSourceMeasure(){return this.musicSheet.SourceMeasures[this.startIndex]}getLastSourceMeasure(){return this.musicSheet.SourceMeasures[this.endIndex]}}class SourceMusicPart extends PartListEntry{constructor(e,r,s){super(e),this.musicSheet=e,this.startIndex=r,this.endIndex=s}get MeasuresCount(){return this.endIndex-this.startIndex+1}get StartIndex(){return this.startIndex}get EndIndex(){return this.endIndex}get ParentRepetition(){return this.parentRepetition}set ParentRepetition(e){this.parentRepetition=e}get AbsoluteTimestamp(){return Fraction$1.createFromFraction(this.musicSheet.SourceMeasures[this.startIndex].AbsoluteTimestamp)}setStartIndex(e){this.startIndex=e}setEndIndex(e){this.endIndex=e}}class Repetition extends PartListEntry{constructor(e,r=!1){super(e),this.backwardJumpInstructions=[],this.endingParts=[],this.endingIndexDict={},this.userNumberOfRepetitions=0,this.visibles=[],this.fromWords=!1,this.repetitonIterationOrder=[],this.numberOfEndings=1,this.musicSheet2=e,this.virtualOverallRepetition=r}get BackwardJumpInstructions(){return this.backwardJumpInstructions}get EndingIndexDict(){return this.endingIndexDict}get EndingParts(){return this.endingParts}get Visibles(){return this.visibles}set Visibles(e){this.visibles=e}get DefaultNumberOfRepetitions(){let e=2;return this.virtualOverallRepetition&&(e=1),Math.max(e,Object.keys(this.endingIndexDict).length,this.checkRepetitionForMultipleLyricVerses())}get UserNumberOfRepetitions(){return this.userNumberOfRepetitions}set UserNumberOfRepetitions(e){this.userNumberOfRepetitions=e,this.repetitonIterationOrder=[];const r=this.userNumberOfRepetitions-this.NumberOfEndings;for(let s=1;s<=this.userNumberOfRepetitions;s++)s<=r?this.repetitonIterationOrder.push(1):this.repetitonIterationOrder.push(s-r)}getForwardJumpTargetForIteration(e){const r=this.repetitonIterationOrder[e-1];return this.endingIndexDict[r]?this.endingIndexDict[r].part.StartIndex:-1}getBackwardJumpTarget(){return this.startMarker.measureIndex}setEndingsStartIndex(e,r){const s=new RepetitionEndingPart(new SourceMusicPart(this.musicSheet2,r,r));this.endingParts.push(s);for(const o of e)try{this.endingIndexDict[o]=s,s.endingIndices.push(o),this.numberOfEndings0&&(o=1),a.Add(new Fraction$1(o,r)),a}}class MusicSheet{constructor(){this.idString="uninitialized",this.sourceMeasures=[],this.repetitions=[],this.dynListStaves=[],this.timestampSortedDynamicExpressionsList=[],this.timestampSortedTempoExpressionsList=[],this.instrumentalGroups=[],this.instruments=[],this.musicPartManager=void 0,this.musicSheetErrors=new MusicSheetErrors,this.staves=[],this.playbackDataDict=new Dictionary,this.transpose=0,this.defaultStartTempoInBpm=0,this.drawErroneousMeasures=!1,this.hasBeenOpenedForTheFirstTime=!1,this.currentEnrolledPosition=new Fraction$1(0,1),this.soundTempos=new Map,this.userStartTempoInBPM=100,this.playbackSettings=new PlaybackSettings(new Fraction$1(4,4,0,!1),this.userStartTempoInBPM),this.pageWidth=120,this.MusicPartManager=new MusicPartManager(this),this.hasBPMInfo=!1}get SoundTempos(){return this.soundTempos}set SoundTempos(e){this.soundTempos=e}static getIndexFromStaff(e){return e.idInMusicSheet}get CurrentKeyInstruction(){return this.currentKeyInstruction}set CurrentKeyInstruction(e){this.currentKeyInstruction=e}get SourceMeasures(){return this.sourceMeasures}set SourceMeasures(e){this.sourceMeasures=e}get Repetitions(){return this.repetitions}set Repetitions(e){this.repetitions=e}get DynListStaves(){return this.dynListStaves}get TimestampSortedTempoExpressionsList(){return this.timestampSortedTempoExpressionsList}get TimestampSortedDynamicExpressionsList(){return this.timestampSortedDynamicExpressionsList}get InstrumentalGroups(){return this.instrumentalGroups}get Parts(){return this.instruments}get Instruments(){return this.instruments}get SheetPlaybackSetting(){return this.playbackSettings}set SheetPlaybackSetting(e){this.playbackSettings=e}get DrawErroneousMeasures(){return this.drawErroneousMeasures}set DrawErroneousMeasures(e){this.drawErroneousMeasures=e}get HasBeenOpenedForTheFirstTime(){return this.hasBeenOpenedForTheFirstTime}set HasBeenOpenedForTheFirstTime(e){this.hasBeenOpenedForTheFirstTime=e}InitializeStartTempoInBPM(e){this.playbackSettings.BeatsPerMinute=e,this.userStartTempoInBPM=e}get DefaultStartTempoInBpm(){return this.defaultStartTempoInBpm}set DefaultStartTempoInBpm(e){this.defaultStartTempoInBpm=e,this.InitializeStartTempoInBPM(e)}get Path(){return this.path}set Path(e){this.path=e}get Staves(){return this.staves}get TitleString(){return this.title?this.title.text:""}set TitleString(e){this.Title=new Label(e)}get SubtitleString(){return this.subtitle?this.subtitle.text:""}set SubtitleString(e){this.Subtitle=new Label(e)}get ComposerString(){return this.composer?this.composer.text:""}set ComposerString(e){this.Composer=new Label(e)}get LyricistString(){return this.lyricist?this.lyricist.text:""}set LyricistString(e){this.Lyricist=new Label(e)}get CopyrightString(){return this.copyright?this.copyright.text:""}set CopyrightString(e){this.Copyright=new Label(e,TextAlignmentEnum.CenterBottom,void 0,!0)}get Title(){return this.title}set Title(e){this.title=e}get Subtitle(){return this.subtitle}set Subtitle(e){this.subtitle=e}get Composer(){return this.composer}set Composer(e){this.composer=e}get Lyricist(){return this.lyricist}set Lyricist(e){this.lyricist=e}get Copyright(){return this.copyright}set Copyright(e){this.copyright=e}get Rules(){return this.rules||(loglevelExports.debug("warning: sheet.Rules was undefined. Creating new EngravingRules."),this.rules=new EngravingRules),this.rules}set Rules(e){this.rules=e}get SheetErrors(){return this.musicSheetErrors}get PlaybackDataDict(){return this.playbackDataDict}get SelectionStart(){return this.selectionStart}set SelectionStart(e){this.selectionStart=e.clone(),this.currentEnrolledPosition=e.clone()}get SelectionEnd(){return this.selectionEnd}set SelectionEnd(e){this.selectionEnd=e}set HasBPMInfo(e){this.hasBPMInfo=e}get HasBPMInfo(){return this.hasBPMInfo}addMeasure(e){this.sourceMeasures.push(e),e.measureListIndex=this.sourceMeasures.length-1}checkForInstrumentWithNoVoice(){for(let e=0,r=this.instruments.length;e0){const e=this.TimestampSortedTempoExpressionsList[0];if(e.InstantaneousTempo)return e.InstantaneousTempo.TempoInBpm;if(e.ContinuousTempo)return e.ContinuousTempo.StartTempo}return this.userStartTempoInBPM}get Errors(){return this.musicSheetErrors.measureErrors}get FirstMeasureNumber(){try{return this.getFirstSourceMeasure().MeasureNumber}catch(e){return loglevelExports.info("MusicSheet.FirstMeasureNumber: ",e),0}}get LastMeasureNumber(){try{return this.getLastSourceMeasure().MeasureNumber}catch(e){return loglevelExports.info("MusicSheet.LastMeasureNumber: ",e),0}}get CurrentEnrolledPosition(){return this.currentEnrolledPosition.clone()}set CurrentEnrolledPosition(e){this.currentEnrolledPosition=e.clone()}get Transpose(){return this.transpose}set Transpose(e){this.transpose=e}get FullNameString(){return this.ComposerString+" "+this.TitleString}get IdString(){return this.idString}set IdString(e){this.idString=e}getEnrolledSelectionStartTimeStampWorkaround(){const e=this.MusicPartManager.getIterator(this.SelectionStart);return Fraction$1.createFromFraction(e.CurrentEnrolledTimestamp)}get SheetEndTimestamp(){const e=this.getLastSourceMeasure();return Fraction$1.plus(e.AbsoluteTimestamp,e.Duration)}getSourceMeasureFromTimeStamp(e){for(let r=0,s=this.sourceMeasures.length;r0&&o.Voices[0].Visible&&e.push(o)}return e}}MusicSheet.defaultTitle="defaultTitle";class LyricWord{constructor(){this.syllables=[]}get Syllables(){return this.syllables}containsVoiceEntry(e){for(let r=0,s=this.Syllables.length;r=0&&(this.syllableIndex=a)}get Text(){return this.text}set Text(e){this.text=e}get Word(){return this.word}get Parent(){return this.parent}set Parent(e){this.parent=e}get VerseNumber(){return this.verseNumber}get SyllableIndex(){return this.syllableIndex}get IsTranslation(){return this.VerseNumber.endsWith("translation")}get IsChorus(){return this.VerseNumber.startsWith("chorus")}get FontStyle(){return this.IsChorus||this.IsTranslation?FontStyles.Italic:FontStyles.Regular}}class LyricsReader{constructor(e){this.openLyricWords={},this.musicSheet=e}addLyricEntry(e,r){var s,o;if(e){const a=e;for(let l=0,c=a.length;l0)for(let P=E;P0){const a=e.elements();for(let l=0,c=a.length;l0&&r.Articulations[0].articulationEnum!==ArticulationEnum.staccato&&r.Articulations.splice(0,0,A);else if(m==="breathmark")d===PlacementEnum.NotYetDefined&&(A.placement=PlacementEnum.Above);else if(m==="strongaccent"){const b=(o=u==null?void 0:u.attribute("type"))==null?void 0:o.value;b==="up"?A.articulationEnum=ArticulationEnum.marcatoup:b==="down"&&(A.articulationEnum=ArticulationEnum.marcatodown)}else if(g===ArticulationEnum.softaccent){const b=r.ParentSourceStaffEntry.ParentStaff.Id-1;d===PlacementEnum.NotYetDefined&&(d=PlacementEnum.Above,b>0&&(d=PlacementEnum.Below));const S=r.ParentSourceStaffEntry.VerticalContainerParent.ParentMeasure,E=new MultiExpression(S,r.Timestamp);E.StartingContinuousDynamic=new ContinuousDynamicExpression(ContDynamicEnum.crescendo,d,b,S,null,-1),E.StartingContinuousDynamic.IsStartOfSoftAccent=!0,E.StartingContinuousDynamic.StartMultiExpression=E,E.StartingContinuousDynamic.EndMultiExpression=E,E.EndingContinuousDynamic=new ContinuousDynamicExpression(ContDynamicEnum.diminuendo,d,b,S,null,-1),E.EndingContinuousDynamic.StartMultiExpression=E,E.EndingContinuousDynamic.EndMultiExpression=E,S.StaffLinkedExpressions[b].push(E)}if(!r.hasArticulation(A))switch(r.Articulations.push(A),A.articulationEnum){case ArticulationEnum.staccato:case ArticulationEnum.staccatissimo:r.DurationModifier=A;break;case ArticulationEnum.accent:case ArticulationEnum.strongaccent:r.VolumeModifier=A;break;default:break}}}catch(g){const d="Invalid note articulation.";loglevelExports.debug("addArticulationExpression",d,g);return}}}}addFermata(e,r){var a;let s=ArticulationEnum.fermata;e.attributes().length>0&&e.attribute("type")&&e.attribute("type").value==="inverted"&&(s=ArticulationEnum.invertedfermata);let o=PlacementEnum.Above;((a=e.attribute("placement"))==null?void 0:a.value)==="below"&&(o=PlacementEnum.Below),r.Articulations.push(new Articulation(s,o))}addTechnicalArticulations(e,r,s){var c,u;const o={bend:ArticulationEnum.bend,"down-bow":ArticulationEnum.downbow,"open-string":ArticulationEnum.naturalharmonic,"snap-pizzicato":ArticulationEnum.snappizzicato,stopped:ArticulationEnum.lefthandpizzicato,"up-bow":ArticulationEnum.upbow,harmonic:ArticulationEnum.naturalharmonic};for(const m in o){if(!o.hasOwnProperty(m))continue;const g=o[m],d=e.element(m);if(d){let y;((c=d.attribute("placement"))==null?void 0:c.value)==="above"&&(y=PlacementEnum.Above),((u=d.attribute("placement"))==null?void 0:u.value)==="below"&&(y=PlacementEnum.Below);const A=new Articulation(g,y);r.hasArticulation(A)||r.Articulations.push(A)}}const a=e.elements("fingering");for(const m of a){const g=this.createTechnicalInstruction(m,s);g.type=TechnicalInstructionType.Fingering,s.Fingering||(s.Fingering=g),r.TechnicalInstructions.push(g)}const l=e.element("string");if(l){const m=this.createTechnicalInstruction(l,s);m.type=TechnicalInstructionType.String,s.StringInstruction=m,r.TechnicalInstructions.push(m)}}createTechnicalInstruction(e,r){const s=new TechnicalInstruction;s.sourceNote=r,s.value=e.value;const o=e.attribute("placement");return this.rules.FingeringPositionFromXML&&(s.placement=this.getPlacement(o)),s}getPlacement(e,r=PlacementEnum.NotYetDefined){if(r!==PlacementEnum.NotYetDefined)return r;if(e)switch(e.value){case"above":return PlacementEnum.Above;case"below":return PlacementEnum.Below;case"left":return PlacementEnum.Left;case"right":return PlacementEnum.Right;default:return PlacementEnum.NotYetDefined}else return PlacementEnum.NotYetDefined}addOrnament(e,r){if(e){let s;const o={"delayed-inverted-turn":OrnamentEnum.DelayedInvertedTurn,"delayed-turn":OrnamentEnum.DelayedTurn,"inverted-mordent":OrnamentEnum.InvertedMordent,"inverted-turn":OrnamentEnum.InvertedTurn,mordent:OrnamentEnum.Mordent,"trill-mark":OrnamentEnum.Trill,turn:OrnamentEnum.Turn};for(const a in o){if(!o.hasOwnProperty(a))continue;const l=e.element(a);if(l){s=new OrnamentContainer(o[a]);const c=l.attribute("placement");c&&c.value==="below"&&(s.placement=PlacementEnum.Below)}}if(s){const a=e.elements("accidental-mark");if(a){let l=PlacementEnum.Below,c=AccidentalEnum.NONE;const u=a;for(let m=0,g=u.length;m0&&(this.currentVoiceEntry.GraceVoiceEntriesBefore=this.graceVoiceEntriesTempList,this.graceVoiceEntriesTempList=[]))}finalizeReadingMeasure(){this.graceVoiceEntriesTempList.length>0&&this.currentNormalVoiceEntry!==void 0&&this.currentNormalVoiceEntry.GraceVoiceEntriesAfter.concat(this.graceVoiceEntriesTempList),this.graceVoiceEntriesTempList=[],this.pluginManager.processVoiceMeasureReadPlugins(this.currMeasureVoiceEntries,this.activeKey,this.activeRhythm),this.currMeasureVoiceEntries.length=0,this.openBeams.length>1&&this.handleOpenBeam()}read(e,r,s,o,a,l,c,u,m,g,d,y,A,b,S,E,x,C,P,k,I,M,T){this.currentStaffEntry=c,this.currentMeasure=u;try{this.currentNote=l?this.addRestNote(e.element("rest"),r,o,s,a,A,b,P,e):this.addSingleNote(e,r,o,s,a,d,y,A,b,S,E,x,C,P,I,M,T),this.currentNote.DotsXml=k;const F=e.elements("lyric");this.lyricsReader!==void 0&&F&&(this.lyricsReader.addLyricEntry(F,this.currentVoiceEntry),this.voice.Parent.HasLyrics=!0);let D=!1;const N=e.element("notations");if(N){this.articulationReader&&this.readArticulations(N,this.currentVoiceEntry,this.currentNote);const O=N.elements("slur"),B=N.elements("slide"),V=N.elements("glissando");this.slurReader!==void 0&&(O.length>0||B.length>0)&&!this.currentNote.ParentVoiceEntry.IsGrace&&(this.slurReader.addSlur(O,this.currentNote),B.length>0&&this.slurReader.addSlur(B,this.currentNote),V.length>0&&this.slurReader.addSlur(V,this.currentNote));const R=N.elements("tuplet");R.length>0&&(this.openTupletNumber=this.addTuplet(e,R),D=!0);const Q=N.element("arpeggiate");if(Q!==void 0){let G;if(this.currentVoiceEntry.Arpeggio)G=this.currentVoiceEntry.Arpeggio;else{let U=!1;for(const $ of this.currentStaffEntry.VoiceEntries)if($.Arpeggio){U=!0,G=$.Arpeggio;break}if(!U){let $=ArpeggioType.ARPEGGIO_DIRECTIONLESS;const q=Q.attribute("direction");if(q)switch(q.value){case"up":$=ArpeggioType.ROLL_UP;break;case"down":$=ArpeggioType.ROLL_DOWN;break;default:$=ArpeggioType.ARPEGGIO_DIRECTIONLESS}G=new Arpeggio(this.currentVoiceEntry,$),this.currentVoiceEntry.Arpeggio=G}}G.addNote(this.currentNote)}const _=N.elements("tied");_.length>0&&this.addTie(_,m,g,TieTypes.SIMPLE);const K=N.element("technical");if(K){const G=K.elements("hammer-on");G.length>0&&this.addTie(G,m,g,TieTypes.HAMMERON);const U=K.elements("pull-off");U.length>0&&this.addTie(U,m,g,TieTypes.PULLOFF)}}e.element("time-modification")!==void 0&&!D&&this.handleTimeModificationNode(e)}catch(F){loglevelExports.warn(F);const D=ITextTranslation.translateText("ReaderErrorMessages/NoteError","Ignored erroneous Note.");this.musicSheet.SheetErrors.pushMeasureError(D),this.musicSheet.SheetErrors.pushMeasureError(F)}return this.currentNote}checkForStaffEntryLink(e,r,s,o){const a=new StaffEntryLink(this.currentVoiceEntry);a.LinkStaffEntries.push(s),s.Link=a;const l=this.currentVoiceEntry.Timestamp.clone(),c=o.getVerticalContainerByTimestamp(l);return s=c.StaffEntries[e],s||(s=new SourceStaffEntry(c,r),c.StaffEntries[e]=s),s.VoiceEntries.push(this.currentVoiceEntry),a.LinkStaffEntries.push(s),s.Link=a,s}checkForOpenBeam(){this.openBeams.length>0&&this.currentNote&&this.handleOpenBeam()}checkOpenTies(){const e=this.openTieDict;for(const r in e)if(e.hasOwnProperty(r)){const s=e[r];Fraction$1.plus(s.StartNote.ParentStaffEntry.Timestamp,s.Duration).lt(s.StartNote.SourceMeasure.Duration)&&delete e[r]}}hasVoiceEntry(){return this.currentVoiceEntry!==void 0}readArticulations(e,r,s){const o=e.element("articulations");o&&this.articulationReader.addArticulationExpression(o,r);const a=e.element("fermata");a&&this.articulationReader.addFermata(a,r);const l=e.element("technical");l&&this.articulationReader.addTechnicalArticulations(l,r,s);const c=e.element("ornaments");c&&this.articulationReader.addOrnament(c,r)}addSingleNote(e,r,s,o,a,l,c,u,m,g,d,y,A,b,S,E,x){var xe;let C=0,P,k=AccidentalEnum.NONE,I=NoteEnum.C,M=NoteEnum.C,T=0,F=0,D,N,O;const B=e.elements();for(let ue=0,Y=B.length;ue{const Y=ue.getAttribute("begin"),J=ue.getAttribute("end");$.push({begin:Y?Y/1e3:0,end:J?J/1e3:0})}),this.addNoteInfo(Q,s,u,m,a,M,F,b,b,$),Q.TypeLength=o,Q.IsGraceNote=g,Q.StemDirectionXml=d,Q.TremoloInfo=y,Q.PlaybackInstrumentId=D,(N!==void 0&&N!=="normal"||O!==void 0)&&(Q.Notehead=new Notehead(Q,N,O)),Q.NoteheadColorXml=b,Q.NoteheadColor=b,Q.PlaybackInstrumentId=D,Q.TremoloType=S,Q.glissandoType=E,Q.slideType=x,this.currentVoiceEntry.addNote(Q),d===StemDirectionType.None&&(A="#00000000"),this.currentVoiceEntry.StemDirectionXml=d,A&&(this.currentVoiceEntry.StemColorXml=A,this.currentVoiceEntry.StemColor=A,Q.StemColorXml=A),e.elements("beam")&&!l&&this.createBeam(e,Q),Q}addRestNote(e,r,s,o,a,l,c,u,m){var k;const g=Fraction$1.createFromFraction(r),d=e.element("display-step"),y=e.element("display-octave");let A,b,S;d&&y&&(A=NoteEnum[d.value.toUpperCase()],b=parseInt(y.value,10),S=new Pitch(A,b,AccidentalEnum.NONE,void 0,!0));const E=new Note$1(this.currentVoiceEntry,this.currentStaffEntry,g,S,this.currentMeasure,!0);let x=[];const C=e.element("times")||m.element("times"),P=(k=C==null?void 0:C.elem)==null?void 0:k.getElementsByTagName("time");return P&&P.length&&Array.from(P).forEach(I=>{const M=I.getAttribute("begin"),T=I.getAttribute("end");x.push({begin:M?M/1e3:0,end:T?T/1e3:0})}),this.addNoteInfo(E,s,l,c,a,A,b,u,u,x),E.TypeLength=o,this.currentVoiceEntry.Notes.push(E),this.openBeams.length>0&&this.openBeams.last().ExtendedNoteList.push(E),E}addNoteInfo(e,r,s,o,a,l,c,u,m,g){e.NoteTypeXml=r,e.PrintObject=s,e.IsCueNote=o,e.NormalNotes=a,e.displayStepUnpitched=l,e.displayOctaveUnpitched=c,e.NoteheadColorXml=u,e.NoteheadColor=u,e.noteTimeInfo=g}createBeam(e,r){var s;try{const o=e.element("beam");let a;if(o!==void 0&&o.hasAttributes&&(a=o.attribute("number")),a){let l=parseInt(a.value,10);const c=e.elements("beam"),u=c[0].value;c&&(u==="begin"?(l===((s=this.openBeams.last())==null?void 0:s.BeamNumber)?(this.beamNumberOffset++,l+=this.beamNumberOffset):this.openBeams.last()&&this.handleOpenBeam(),this.openBeams.push(new Beam(l,this.beamNumberOffset))):l+=this.beamNumberOffset);let m=!1;if(!(l>0&&l<=this.openBeams.length)||!this.openBeams[l-1]){loglevelExports.debug("[OSMD] invalid beamnumber");return}for(let g=0,d=this.openBeams[l-1].Notes.length;g1){let a=e.element("time-modification");a&&(a=a.element("actual-notes"));const l=r;for(let c=0,u=l.length;c1&&this.openTupletNumber--),this.tupletDict[A]=S;const x=[];x.push(this.currentNote),S.Notes.push(x),S.Fractions.push(this.getTupletNoteDurationFromType(e)),this.currentNote.NoteTuplet=S,this.openTupletNumber=A}else if(y.value==="stop"){let A=1;m.attribute("number")&&(A=parseInt(m.attribute("number").value,10));const b=this.tupletDict[A];if(b){const S=m.attribute("placement");S&&(S.value==="below"?b.tupletLabelNumberPlacement=PlacementEnum.Below:b.tupletLabelNumberPlacement=PlacementEnum.Above,b.PlacementFromXml=!0);const E=[];if(E.push(this.currentNote),b.Notes.push(E),!b.PlacementFromXml){let x=!1;for(const C of b.Notes){for(const P of C)if(!P.isRest()){P.StemDirectionXml===StemDirectionType.Down?b.tupletLabelNumberPlacement=PlacementEnum.Below:b.tupletLabelNumberPlacement=PlacementEnum.Above,x=!0;break}if(x)break}}b.Fractions.push(this.getTupletNoteDurationFromType(e)),this.currentNote.NoteTuplet=b,delete this.tupletDict[A],Object.keys(this.tupletDict).length===0?this.openTupletNumber=0:Object.keys(this.tupletDict).length>1&&this.openTupletNumber--}}}}}else if(r[0]){const a=r[0];if(a.hasAttributes){const l=a.attribute("type").value;let c=1;a.attribute("number")&&(c=parseInt(a.attribute("number").value,10));const u=isNaN(c),m=this.readShowNumberNoneGiven(a),g=a.attribute("bracket");if(g&&g.value==="yes"?(s=!0,o=!0):g&&g.value==="no"&&(o=!1),l==="start"){let d=0,y=e.element("time-modification");if(y&&(y=y.element("actual-notes")),y&&(d=parseInt(y.value,10),isNaN(d))){const E=ITextTranslation.translateText("ReaderErrorMessages/TupletNoteDurationError","Invalid tuplet note duration.");throw this.musicSheet.SheetErrors.pushMeasureError(E),new MusicSheetReadingException(E)}u&&(this.openTupletNumber++,c=this.openTupletNumber);let A=this.tupletDict[c];A||(A=this.tupletDict[c]=new Tuplet(d,s),A.BracketedXmlValue=o,A.ShowNumberNoneGivenInXml=m,A.tupletLabelNumberPlacement=PlacementEnum.Above);const b=a.attribute("placement");b&&(b.value==="below"?A.tupletLabelNumberPlacement=PlacementEnum.Below:A.tupletLabelNumberPlacement=PlacementEnum.Above,A.PlacementFromXml=!0);const S=[];S.push(this.currentNote),A.Notes.push(S),A.Fractions.push(this.getTupletNoteDurationFromType(e)),this.currentNote.NoteTuplet=A,this.openTupletNumber=c}else if(l==="stop"){u&&(c=this.openTupletNumber);const d=this.tupletDict[this.openTupletNumber];if(d){const y=a.attribute("placement");y&&(y.value==="below"?d.tupletLabelNumberPlacement=PlacementEnum.Below:d.tupletLabelNumberPlacement=PlacementEnum.Above,d.PlacementFromXml=!0);const A=[];if(A.push(this.currentNote),d.Notes.push(A),!d.PlacementFromXml){let b=!1;for(const S of d.Notes){for(const E of S)if(!E.isRest()){E.StemDirectionXml===StemDirectionType.Down?d.tupletLabelNumberPlacement=PlacementEnum.Below:d.tupletLabelNumberPlacement=PlacementEnum.Above,b=!0;break}if(b)break}}d.Fractions.push(this.getTupletNoteDurationFromType(e)),this.currentNote.NoteTuplet=d,Object.keys(this.tupletDict).length===0?this.openTupletNumber=0:Object.keys(this.tupletDict).length>1&&this.openTupletNumber--,delete this.tupletDict[c]}}}}return this.openTupletNumber}readShowNumberNoneGiven(e){const r=e.attribute("show-number");return!!(r!=null&&r.value&&r.value==="none")}handleTimeModificationNode(e){if(this.tupletDict[this.openTupletNumber])try{const r=this.tupletDict[this.openTupletNumber],s=CollectionUtil.last(r.Notes),o=s[0].ParentVoiceEntry;let a;o.Timestamp.Equals(this.currentVoiceEntry.Timestamp)?a=s:(a=[],r.Notes.push(a),r.Fractions.push(this.getTupletNoteDurationFromType(e))),a.push(this.currentNote),this.currentNote.NoteTuplet=r}catch(r){const s=ITextTranslation.translateText("ReaderErrorMessages/TupletNumberError","Invalid tuplet number.");throw this.musicSheet.SheetErrors.pushMeasureError(s),r}else if(this.currentVoiceEntry.Notes.length>0){const r=this.currentVoiceEntry.Notes[0];if(r.NoteTuplet){const s=r.NoteTuplet;CollectionUtil.last(s.Notes).push(this.currentNote),this.currentNote.NoteTuplet=s}}}addTie(e,r,s,o){if(e){if(e.length===1){const a=e[0];if(a!==void 0&&a.attributes()){const l=this.getTieDirection(a),c=a.attribute("type").value;try{if(c==="start"){const u=this.findCurrentNoteInTieDict(this.currentNote);u<0&&delete this.openTieDict[u];const m=this.getNextAvailableNumberForTie(),g=new Tie(this.currentNote,o);this.openTieDict[m]=g,g.TieNumber=m,g.TieDirection=l}else if(c==="stop"){const u=this.findCurrentNoteInTieDict(this.currentNote),m=this.openTieDict[u];m&&(m.AddNote(this.currentNote),delete this.openTieDict[u])}}catch(u){const m=ITextTranslation.translateText("ReaderErrorMessages/TieError","Error while reading tie.");this.musicSheet.SheetErrors.pushMeasureError(m)}}}else if(e.length===2){const a=this.findCurrentNoteInTieDict(this.currentNote);if(a>=0){const l=this.openTieDict[a];l.AddNote(this.currentNote);for(const c of e)if(c.attribute("type").value==="start"){const m=this.getTieDirection(c);l.NoteIndexToTieDirection[l.Notes.length-1]=m}}}}}getTieDirection(e){let r=PlacementEnum.NotYetDefined;const s=e.attribute("placement");s&&(s.value==="above"?r=PlacementEnum.Above:s.value==="below"&&(r=PlacementEnum.Below));const o=e.attribute("orientation");return o&&(o.value==="over"?r=PlacementEnum.Above:o.value==="under"&&(r=PlacementEnum.Below)),r}getNextAvailableNumberForTie(){const e=Object.keys(this.openTieDict);if(e.length===0)return 1;e.sort((r,s)=>+r-+s);for(let r=0;r0?o.RealValue>0?(m=Fraction$1.multiply(Fraction$1.minus(o,a),m),this.directionTimestamp=Fraction$1.plus(m,o)):this.directionTimestamp=Fraction$1.createFromFraction(m):this.offsetDivisions<0&&(o.RealValue>0?(m=Fraction$1.multiply(Fraction$1.minus(o,a),m),this.directionTimestamp=Fraction$1.minus(o,m)):this.directionTimestamp=Fraction$1.createFromFraction(m));let g;const d=e.element("direction-type");let y;if(d&&(y=d.element("wedge"),y)){const b=y.attribute("default-y");b&&(g=this.readPosition(b))}this.WedgeYPosXml=g;const A=e.attribute("placement");if(A)try{const b=A.value;b==="below"?this.placement=PlacementEnum.Below:b==="above"&&(this.placement=PlacementEnum.Above)}catch(b){const S=ITextTranslation.translateText("ReaderErrorMessages/ExpressionPlacementError","Invalid expression placement -> set to default.");loglevelExports.debug("ExpressionReader.readExpressionParameters",S,b),this.musicSheet.SheetErrors.pushMeasureError(S),this.placement=PlacementEnum.Below}if(this.placement===PlacementEnum.NotYetDefined)try{if(d){const b=d.element("dynamics");if(b){const x=b.attribute("default-y");x&&this.readExpressionPlacement(x,"read dynamics y pos")}if(y){const x=y.attribute("default-y");x&&this.readExpressionPlacement(x,"read wedge y pos")}const S=d.element("words");if(S){const x=S.attribute("default-y");x&&this.readExpressionPlacement(x,"read words y pos")}const E=d.element("rehearsal");if(E){const x=E.attribute("default-y");x&&this.readExpressionPlacement(x,"read rehearsal pos")}}}catch(b){const S=ITextTranslation.translateText("ReaderErrorMessages/ExpressionPlacementError","Invalid expression placement. Set to default.");loglevelExports.debug("ExpressionReader.readExpressionParameters",S,b),this.musicSheet.SheetErrors.pushMeasureError(S),this.placement=PlacementEnum.Below}this.placement===PlacementEnum.NotYetDefined&&(r.Staves.length>1?this.placement=PlacementEnum.Below:r.HasLyrics?this.placement=PlacementEnum.Above:this.placement=PlacementEnum.Below)}read(e,r,s,o=void 0,a=0,l){let c=!1,u=!1;const m=e.element("sound");if(m){const y=m.attribute("tempo"),A=m.attribute("dynamics");if(y){const b=y.value.match(/^(\d+)(\.\d+)?$/);(b==null?void 0:b.length)>0?this.soundTempo=Math.round(Number.parseFloat(y.value)):(loglevelExports.info("invalid xml tempo: "+y.value),this.soundTempo=100),r.TempoInBPM=this.soundTempo,this.musicSheet.DefaultStartTempoInBpm===0&&(this.musicSheet.DefaultStartTempoInBpm=this.soundTempo),this.musicSheet.HasBPMInfo=!0,c=!0}if(A){const b=A.value.match(/\d+/);this.soundDynamic=b!==void 0?parseInt(b[0],10):100,u=!0}}const g=e.element("direction-type");if(!g)return;let d=g.element("metronome");if(d){r.metronomeNoteIndex=a;const y=d.element("beat-unit"),A=d.element("beat-unit-dot")!==void 0,b=d.element("per-minute");if(y!==void 0&&b){d.hasAttributes&&d.attribute("default-x")!==void 0&&(this.directionTimestamp=Fraction$1.createFromFraction(s));const E=parseFloat(b.value);!l&&this.createNewTempoExpressionIfNeeded(r);const x=new InstantaneousTempoExpression(void 0,this.placement,this.staffNumber,E,this.currentMultiTempoExpression,!0);x.parentMeasure=r,this.soundTempo=E,r.TempoInBPM=this.soundTempo*(A?1.5:1),this.musicSheet.DefaultStartTempoInBpm===0&&(this.musicSheet.DefaultStartTempoInBpm=this.soundTempo),r.MeasureNumberXML===1&&this.musicSheet.SourceMeasures.length===0&&(this.musicSheet.DefaultStartTempoInBpm=this.soundTempo),this.musicSheet.HasBPMInfo=!0,x.dotted=A,x.beatUnit=y.value,this.currentMultiTempoExpression.addExpression(x,""),this.currentMultiTempoExpression.CombinedExpressionsText="test"}return}if(d=g.element("dynamics"),d){const y=e.element("notations")!==void 0;this.interpretInstantaneousDynamics(d,r,s,y);return}if(d=g.element("words"),d){const y=g.elements("words");let A="";for(const b of y)A+=b.value;if(d.value=A,c||isSpeedKeyword(d.value)||isSpeedHiddenKeyword(d.value)){this.createNewTempoExpressionIfNeeded(r),this.currentMultiTempoExpression.CombinedExpressionsText=d.value,(isSpeedKeyword(d.value)||isSpeedHiddenKeyword(d.value))&&(d.value=void 0);const b=new InstantaneousTempoExpression(d.value,this.placement,this.staffNumber,this.soundTempo,this.currentMultiTempoExpression);this.currentMultiTempoExpression.addExpression(b,"")}else u||this.interpretWords(d,r,s);return}if(d=g.element("wedge"),d){this.interpretWedge(d,r,o,r.MeasureNumber);return}if(d=g.element("rehearsal"),d){this.interpretRehearsalMark(d,r,s,r.MeasureNumber);return}}closeOpenExpressions(e,r){for(const s of this.openContinuousDynamicExpressions)this.createNewMultiExpressionIfNeeded(e,s.NumberXml,r),this.closeOpenContinuousDynamic(s,e,r);this.openContinuousTempoExpression&&this.closeOpenContinuousTempo(Fraction$1.plus(e.AbsoluteTimestamp,r))}addOctaveShift(e,r,s){var c;let o=1;const a=e.element("staff");if(a)try{o=parseInt(a.value,10)}catch(u){const m=ITextTranslation.translateText("ReaderErrorMessages/OctaveShiftStaffError","Invalid octave shift staff number. Set to default");this.musicSheet.SheetErrors.pushMeasureError(m),o=1,loglevelExports.debug("ExpressionReader.addOctaveShift",m,u)}const l=e.element("direction-type");if(l){const u=l.element("octave-shift"),m=this.readPlacement(e);if(u!==void 0&&u.hasAttributes)try{const g=this.readNumber(u);if(u.attribute("size")){const d=parseInt(u.attribute("size").value,10);let y=0;d===8?y=1:d===15&&(y=2);let A=(c=u.attribute("type"))==null?void 0:c.value;if(A||(m===PlacementEnum.Above?A="down":m===PlacementEnum.Below&&(A="up")),A==="up"||A==="down"){const b=new OctaveShift(A,y);b.StaffNumber=o,this.getMultiExpression=this.createNewMultiExpressionIfNeeded(r,g),this.getMultiExpression.OctaveShiftStart=b,b.ParentStartMultiExpression=this.getMultiExpression,this.openOctaveShift=b}else if(A==="stop"){if(this.openOctaveShift){this.getMultiExpression=this.createNewMultiExpressionIfNeeded(r,this.openOctaveShift.numberXml,s);const b=this.getMultiExpression;b.OctaveShiftEnd=this.openOctaveShift,this.openOctaveShift.ParentEndMultiExpression=this.getMultiExpression,this.openOctaveShift=void 0}}else A||loglevelExports.debug("octave-shift missing type in xml")}}catch(g){const d=ITextTranslation.translateText("ReaderErrorMessages/OctaveShiftError","Error while reading octave shift.");this.musicSheet.SheetErrors.pushMeasureError(d),loglevelExports.debug("ExpressionReader.addOctaveShift",d,g)}}}addPedalMarking(e,r,s){var a,l,c;const o=e.element("direction-type");if(o){const u=o.element("pedal");if(u!==void 0&&u.hasAttributes){let m=!1,g=!1;try{switch(((a=u.attribute("line"))==null?void 0:a.value)==="yes"?g=!0:((l=u.attribute("line"))==null?void 0:l.value)==="no"?(g=!1,m=!0):((c=u.attribute("sign"))==null?void 0:c.value)==="yes"?m=!0:(m=!1,g=!0),u.attribute("type").value){case"start":this.openPedal&&this.openPedal.IsLine&&this.endOpenPedal(r),this.createNewMultiExpressionIfNeeded(r,-1),this.openPedal=new Pedal(g,m),this.getMultiExpression.PedalStart=this.openPedal,this.openPedal.ParentStartMultiExpression=this.getMultiExpression;break;case"stop":this.openPedal&&this.endOpenPedal(r,s);break;case"change":this.openPedal&&this.openPedal.IsLine&&(this.openPedal.ChangeEnd=!0,this.createNewMultiExpressionIfNeeded(r,-1),this.getMultiExpression.PedalEnd=this.openPedal,this.openPedal.ParentEndMultiExpression=this.getMultiExpression,this.createNewMultiExpressionIfNeeded(r,-1),this.openPedal=new Pedal(g,m),this.openPedal.ChangeBegin=!0,this.getMultiExpression.PedalStart=this.openPedal,this.openPedal.ParentStartMultiExpression=this.getMultiExpression);break;case"continue":break;default:break}}catch(d){const y=ITextTranslation.translateText("ReaderErrorMessages/PedalError","Error while reading pedal.");this.musicSheet.SheetErrors.pushMeasureError(y),loglevelExports.debug("ExpressionReader.addPedalMarking",y,d)}}}}endOpenPedal(e,r){this.createNewMultiExpressionIfNeeded(e,-1,r),this.getMultiExpression.PedalEnd=this.openPedal,this.openPedal.ParentEndMultiExpression=this.getMultiExpression,this.openPedal=void 0}addWavyLine(e,r,s,o){if(e&&e.hasAttributes)try{switch(e.attribute("type").value){case"start":this.createNewMultiExpressionIfNeeded(r,-1),this.openWavyLine=new WavyLine(this.placement),this.getMultiExpression.WavyLineStart=this.openWavyLine,this.openWavyLine.ParentStartMultiExpression=this.getMultiExpression;break;case"stop":this.openWavyLine&&(this.createNewMultiExpressionIfNeeded(r,-1,s),this.getMultiExpression.WavyLineEnd=this.openWavyLine,this.openWavyLine.ParentEndMultiExpression=this.getMultiExpression,this.openWavyLine=void 0);break;case"continue":break;default:break}}catch(a){const l=ITextTranslation.translateText("ReaderErrorMessages/WavyLineError","Error while reading wavy-line.");this.musicSheet.SheetErrors.pushMeasureError(l),loglevelExports.debug("ExpressionReader.addWavyLine",l,a)}}initialize(){this.placement=PlacementEnum.NotYetDefined,this.soundTempo=0,this.soundDynamic=0,this.offsetDivisions=0}readPlacement(e){var s;const r=(s=e.attribute("placement"))==null?void 0:s.value;return r==="above"?PlacementEnum.Above:r==="below"?PlacementEnum.Below:PlacementEnum.NotYetDefined}readExpressionPlacement(e,r){try{const s=this.readPosition(e);s<0?this.placement=PlacementEnum.Below:s>0&&(this.placement=PlacementEnum.Above)}catch(s){loglevelExports.debug("ExpressionReader.readExpressionParameters",r,s)}}readPosition(e){try{const r=parseInt(e.value,10);return r<0?this.placement=PlacementEnum.Below:r>0&&(this.placement=PlacementEnum.Above),r}catch(r){loglevelExports.debug("ExpressionReader.readExpressionParameters",r)}}interpretInstantaneousDynamics(e,r,s,o){var a,l,c;if(e.hasElements){e.hasAttributes&&e.attribute("default-x")&&(this.directionTimestamp=Fraction$1.createFromFraction(s));const u=this.readNumber(e);let m=(a=e.elements()[0])==null?void 0:a.name;if(m==="other-dynamics"&&(m=e.elements()[0].value),m){if((l=r.Rules)!=null&&l.IgnoreRepeatedDynamics){let d;try{d=DynamicEnum[m]}catch(y){const A=ITextTranslation.translateText("ReaderErrorMessages/DynamicError","Error while reading dynamic.");this.musicSheet.SheetErrors.pushMeasureError(A);return}if(((c=this.activeInstantaneousDynamic)==null?void 0:c.DynEnum)===d)return}o?this.createNewMultiExpressionIfNeeded(r,u,Fraction$1.createFromFraction(s)):this.createNewMultiExpressionIfNeeded(r,u);const g=new InstantaneousDynamicExpression(m,this.soundDynamic,this.placement,this.staffNumber,r);g.InMeasureTimestamp=s.clone(),this.getMultiExpression.addExpression(g,""),this.initialize(),this.activeInstantaneousDynamic?this.activeInstantaneousDynamic.DynEnum=g.DynEnum:this.activeInstantaneousDynamic=new InstantaneousDynamicExpression(m,0,PlacementEnum.NotYetDefined,1,r)}}}interpretWords(e,r,s){var A;const o=e.value;if(r.Rules.IgnoreBracketsWords&&(/^\(\s*\)$/.test(o)||/^\[\s*\]$/.test(o)))return;let a;const l=e.attribute("font-style");let c,u,m;l&&(c=l.value,c==="italic"&&(a=FontStyles.Italic));const g=e.attribute("font-weight");g&&(u=g.value,u==="bold"&&(a=FontStyles.Bold,c==="italic"&&(a=FontStyles.BoldItalic)));const d=e.attribute("color");d&&(m=d.value);let y;if(r.Rules.PlaceWordsInsideStafflineFromXml){const b=(A=e.attribute("default-y"))==null?void 0:A.value;(b==null?void 0:b.length)>0&&(y=Number.parseInt(b,10))}if(o.length>0){if(e.hasAttributes&&e.attribute("default-x")&&(this.directionTimestamp=Fraction$1.createFromFraction(s)),this.checkIfWordsNodeIsRepetitionInstruction(o))return;this.fillMultiOrTempoExpression(o,r,s,a,m,y),this.initialize()}}readNumber(e){var o;let r=1;const s=(o=e.attribute("number"))==null?void 0:o.value;return s&&(r=Number.parseInt(s,10)),r}interpretWedge(e,r,s,o){var c,u;e!==void 0&&e.hasAttributes&&e.attribute("default-x")&&(this.directionTimestamp=Fraction$1.createFromFraction(s));const a=this.readNumber(e),l=(u=(c=e.attribute("type"))==null?void 0:c.value)==null?void 0:u.toLowerCase();this.lastWedge&&this.lastWedge.parentMeasure.MeasureNumberXML===r.MeasureNumberXML&&this.lastWedge.StaffNumber===this.staffNumber&&this.placement===this.lastWedge.Placement&&this.WedgeYPosXml!==void 0&&this.lastWedge.YPosXml===this.WedgeYPosXml&&this.lastWedge.StartMultiExpression.Timestamp.Equals(this.directionTimestamp)&&this.lastWedge.DynamicType===ContDynamicEnum[l]||(l==="stop"?this.createNewMultiExpressionIfNeeded(r,a,s):this.createNewMultiExpressionIfNeeded(r,a),this.addWedge(e,r,s),this.initialize())}interpretRehearsalMark(e,r,s,o){r.rehearsalExpression=new RehearsalExpression(e.value,this.placement)}createNewMultiExpressionIfNeeded(e,r,s=void 0){s||(s=this.directionTimestamp);let o=this.getMultiExpression;return(!o||o&&(o.SourceMeasureParent!==e||o.numberXml!==r||o.SourceMeasureParent===e&&o.Timestamp!==s))&&(this.getMultiExpression=o=new MultiExpression(e,Fraction$1.createFromFraction(s)),e.StaffLinkedExpressions[this.globalStaffIndex].push(o)),o}createNewTempoExpressionIfNeeded(e){(!this.currentMultiTempoExpression||this.currentMultiTempoExpression.SourceMeasureParent!==e||this.currentMultiTempoExpression.Timestamp!==this.directionTimestamp)&&(this.currentMultiTempoExpression=new MultiTempoExpression(e,Fraction$1.createFromFraction(this.directionTimestamp)),e.TempoExpressions.push(this.currentMultiTempoExpression))}addWedge(e,r,s){if(e!==void 0&&e.hasAttributes){const o=this.readNumber(e),a=e.attribute("type").value.toLowerCase();try{if(a==="crescendo"||a==="diminuendo"){const l=new ContinuousDynamicExpression(ContDynamicEnum[a],this.placement,this.staffNumber,r,this.activeInstantaneousDynamic,o);this.lastWedge=l,this.lastWedge.YPosXml=this.WedgeYPosXml,this.openContinuousDynamicExpressions.push(l);let c=this.getMultiExpression;c||(c=this.createNewMultiExpressionIfNeeded(r,o)),c.StartingContinuousDynamic=l,l.StartMultiExpression=c,this.activeInstantaneousDynamic!==void 0&&this.activeInstantaneousDynamic.StaffNumber===l.StaffNumber&&(this.activeInstantaneousDynamic=void 0)}else if(a==="stop")for(const l of this.openContinuousDynamicExpressions)l.NumberXml===o&&this.closeOpenContinuousDynamic(l,r,s)}catch(l){const c="ReaderErrorMessages/WedgeError, Error while reading Crescendo / Diminuendo.";this.musicSheet.SheetErrors.pushMeasureError(c),loglevelExports.debug("ExpressionReader.addWedge",c,l)}}}fillMultiOrTempoExpression(e,r,s,o,a,l=void 0){if(!e)return;const c=e.trim();this.createExpressionFromString("",c,r,s,e,o,a,l)}createExpressionFromString(e,r,s,o,a,l,c,u=void 0){if(InstantaneousTempoExpression.isInputStringInstantaneousTempo(r)||ContinuousTempoExpression.isInputStringContinuousTempo(r)){if(s.TempoExpressions.length>0)for(let y=0,A=s.TempoExpressions.length;y0)for(let y=0,A=s.TempoExpressions.length;y0&&!this.hasDigit(r)&&this.globalStaffIndex>0){if(b.EntriesList[0].label.indexOf(r)>=0)return!1;break}}let g=TextAlignmentEnum.CenterBottom;this.musicSheet.Rules.CompactMode&&(g=TextAlignmentEnum.LeftBottom);const d=new UnknownExpression(r,this.placement,g,this.staffNumber);return d.fontStyle=l,d.ColorXML=c,d.defaultYXml=u,m.addExpression(d,e),!1}closeOpenContinuousDynamic(e,r,s){if(!e)return;const o=e.NumberXml;e.EndMultiExpression=this.createNewMultiExpressionIfNeeded(r,o,s),e.StartMultiExpression.EndingContinuousDynamic=e,this.openContinuousDynamicExpressions=this.openContinuousDynamicExpressions.filter(a=>a!==e)}closeOpenContinuousTempo(e){this.openContinuousTempoExpression.AbsoluteEndTimestamp=e,this.openContinuousTempoExpression=void 0}checkIfWordsNodeIsRepetitionInstruction(e){return e=e.trim().toLowerCase(),e==="coda"||e==="tocoda"||e==="to coda"||e==="fine"||e==="d.c."||e==="dacapo"||e==="da capo"||e==="d.s."||e==="dalsegno"||e==="dal segno"||e==="d.c. al fine"||e==="d.s. al fine"||e==="d.c. al coda"||e==="d.s. al coda"}hasDigit(e){return/\d/.test(e)}}class SlurReader{constructor(e){this.openSlurDict={},this.musicSheet=e}addSlur(e,r,s){try{if(e){for(const o of e)if(o.attributes().length>0){const a=o.attribute("type").value;let l=1;try{o.attribute("number")&&(l=parseInt(o.attribute("number").value,10))}catch(g){loglevelExports.debug("VoiceGenerator.addSlur number: ",g)}let c=PlacementEnum.NotYetDefined;const u=o.attribute("placement");u&&u.value&&(u.value==="above"?c=PlacementEnum.Above:u.value==="below"&&(c=PlacementEnum.Below));const m=o.attribute("orientation");if(m&&m.value&&(m.value==="over"?c=PlacementEnum.Above:m.value==="under"&&(c=PlacementEnum.Below)),a==="start"){let g=new Slur;this.openSlurDict[l]=g,g.StartNote=r,g.idx=s,g.PlacementXml=c}else if(a==="stop"){const g=this.openSlurDict[l];if(g){const d=o.name;if(d==="slide"||d==="glissando"){const y=g.StartNote,A=new Glissando(y);A.AddNote(r),A.EndNote=r,r.NoteGlissando=A,delete this.openSlurDict[l]}else g.idx=s,g.EndNote=r,r.isDuplicateSlur(g)||(r.NoteSlurs.push(g),g.StartNote.NoteSlurs.push(g)),delete this.openSlurDict[l]}}}}}catch(o){const a=ITextTranslation.translateText("ReaderErrorMessages/SlurError","Error while reading slur.");this.musicSheet.SheetErrors.pushMeasureError(a)}}}class InstrumentReader{constructor(e,r,s,o){this.voiceGeneratorsDict={},this.staffMainVoiceGeneratorDict={},this.divisions=0,this.currentClefNumber=1,this.currentXmlMeasureIndex=0,this.activeKeyHasBeenInitialized=!1,this.abstractInstructions=[],this.soundTempos=new Map,this.xmlNotes=[],this.repetitionInstructionReader=r,this.xmlMeasureList=s,this.musicSheet=o.GetMusicSheet,this.instrument=o,this.activeClefs=new Array(o.Staves.length),this.activeClefsHaveBeenInitialized=new Array(o.Staves.length);for(let a=0;a=this.xmlMeasureList.length)return!1;this.currentMeasure=e,this.followingMultirestMeasures=Math.max(this.followingMultirestMeasures-1,0),this.inSourceMeasureInstrumentIndex=this.musicSheet.getGlobalStaffIndexOfFirstStaff(this.instrument),this.repetitionInstructionReader&&this.repetitionInstructionReader.prepareReadingMeasure(e,this.currentXmlMeasureIndex);let o=new Fraction$1(0,1),a=new Fraction$1(0,1),l=!1;this.maxTieNoteFraction=new Fraction$1(0,1);let c=!1;const u=[];let m=!1;try{const P=this.xmlMeasureList[this.currentXmlMeasureIndex],k=P.elements();if(e.Rules.UseXMLMeasureNumbers&&!Number.isInteger(e.MeasureNumberXML)){const M=parseInt((g=P.attribute("number"))==null?void 0:g.value,10);Number.isInteger(M)&&(e.MeasureNumberXML=M)}let I;for(let M=0;M0&&(I=k[M-1]),T.name==="print"){const F=T.attribute("new-system");(F==null?void 0:F.value)==="yes"&&(e.printNewSystemXml=!0);const D=T.attribute("new-page");(D==null?void 0:D.value)==="yes"&&(e.printNewPageXml=!0)}else if(T.name==="attributes"){const F=T.element("divisions");if(F&&(this.divisions=parseInt(F.value,10),isNaN(this.divisions))){const O=ITextTranslation.translateText("ReaderErrorMessages/DivisionError","Invalid divisions value at Instrument: ");if(loglevelExports.debug("InstrumentReader.readNextXmlMeasure",O),this.divisions=this.readDivisionsFromNotes(),this.divisions>0)this.musicSheet.SheetErrors.push(O+this.instrument.Name);else throw l=!0,new MusicSheetReadingException(O+this.instrument.Name)}if(!T.element("divisions")&&this.divisions===0&&this.currentXmlMeasureIndex===0){const O=ITextTranslation.translateText("ReaderErrorMessages/DivisionError","Invalid divisions value at Instrument: ");if(this.divisions=this.readDivisionsFromNotes(),this.divisions>0)this.musicSheet.SheetErrors.push(O+this.instrument.Name);else throw l=!0,new MusicSheetReadingException(O+this.instrument.Name)}this.addAbstractInstruction(T,s,I,o.clone()),o.Equals(new Fraction$1(0,1))&&this.isAttributesNodeAtBeginOfMeasure(this.xmlMeasureList[this.currentXmlMeasureIndex],T)&&this.saveAbstractInstructionList(this.instrument.Staves.length,!0),this.isAttributesNodeAtEndOfMeasure(this.xmlMeasureList[this.currentXmlMeasureIndex],T,o)&&this.saveClefInstructionAtEndOfMeasure();const D=T.elements("staff-details");for(const O of D){const B=O.element("staff-lines");if(B){let V=1;const R=O.attribute("number");R&&(V=parseInt(R.value,10)),this.instrument.Staves[V-1].StafflineCount=parseInt(B.value,10)}}const N=T.element("measure-style");if(N){const O=N.element("multiple-rest");if(O){const B=O.value;let V=0;try{V=Number.parseInt(B,10),e.multipleRestMeasures!==void 0&&V!==e.multipleRestMeasures?e.multipleRestMeasures=0:(e.multipleRestMeasures=V,this.currentMultirestStartMeasure=e,this.followingMultirestMeasures=V+1)}catch(R){console.log("multirest parse error: "+R)}}}}else if(T.name==="note"){let F=!0;((d=T.attribute("print-object"))==null?void 0:d.value)==="no"&&(F=!1);const D=this.getNoteStaff(T);this.currentStaff=this.instrument.Staves[D-1];const N=T.element("chord")!==void 0;if(T.element("voice")){const H=parseInt(T.element("voice").value,10);this.currentVoiceGenerator=this.getOrCreateVoiceGenerator(H,D-1)}else(!N||!this.currentVoiceGenerator)&&(this.currentVoiceGenerator=this.getOrCreateVoiceGenerator(1,D-1));let O=0,B=new Fraction$1(0,1),V=2,R,Q=!1;if(T.element("duration")){if(O=parseInt(T.element("duration").value,10),isNaN(O)){const H=ITextTranslation.translateText("ReaderErrorMessages/NoteDurationError","Invalid Note Duration.");this.musicSheet.SheetErrors.pushMeasureError(H),loglevelExports.debug("InstrumentReader.readNextXmlMeasure",H);continue}else if(B=new Fraction$1(O,4*this.divisions),O===0?B=this.getNoteDurationFromTypeNode(T):R=this.getNoteDurationFromTypeNode(T),T.element("time-modification")){B=this.getNoteDurationForTuplet(T);const H=T.element("time-modification");H!=null&&H.element("normal-notes")&&(V=parseInt(H.element("normal-notes").value,10)),Q=!0}}const _=T.element("rest")!==void 0,K=T.combinedElement("notations"),G=T.element("grace")!==void 0||O===0||N&&c;let U=!1,$=!1;if(G){const H=T.element("duration"),ve=T.element("grace");ve&&ve.attributes()&&ve.attribute("slash")&&ve.attribute("slash").value==="yes"&&(U=!0),H||(B=this.getNoteDurationFromTypeNode(T)),K&&K.element("slur")&&($=!0)}const[q,W]=this.getCueNoteAndNoteTypeXml(T),[xe,ue,Y]=this.getStemDirectionAndColors(T);let J,ce=0,ge="",Ee="",Ie="";if(K){const H=K.element("ornaments");if(H){J=this.getTremoloInfo(H),this.getWavyLines(H,T,o,a);const me=H.element("tremolo");if(me){const oe=me.attribute("type");if(ge=oe.value,oe){const Ae=parseInt(me.value,10);Ae>0&&(ce=Ae),(oe.value==="start"||oe.value==="stop")&&(B=new Fraction$1(parseInt(T.element("duration").value,10),4*this.divisions))}}const Be=H.elements("wavy-line");if(Be!==void 0)for(const oe of Be){const Ae=this.expressionReaders[this.readExpressionStaffNumber(T)-1];Ae&&(Ae.readExpressionParameters(oe,this.instrument,this.divisions,o,a,this.currentMeasure.MeasureNumber,!1),Ae.addWavyLine(oe,this.currentMeasure,o,a))}}K.elements("glissando").find(me=>me.attribute("type").value==="start")&&(Ee="start"),K.elements("slide").find(me=>me.attribute("type").value==="start")&&(Ie="start")}const De=N?a.clone():o.clone();this.currentStaffEntry=this.currentMeasure.findOrCreateStaffEntry(De,this.inSourceMeasureInstrumentIndex+D-1,this.currentStaff).staffEntry,(!this.currentVoiceGenerator.hasVoiceEntry()||!N&&!G&&!c||G&&!c||G&&!N||!G&&c)&&this.currentVoiceGenerator.createVoiceEntry(De,this.currentStaffEntry,this.activeKey,this.ActiveRhythm,G,U,$),!G&&!N&&(a=o.clone(),o.Add(B)),N&&this.currentStaffEntry!==void 0&&this.currentStaffEntry.ParentStaff!==this.currentStaff&&(this.currentStaffEntry=this.currentVoiceGenerator.checkForStaffEntryLink(this.inSourceMeasureInstrumentIndex+D-1,this.currentStaff,this.currentStaffEntry,this.currentMeasure));const ie=this.currentStaffEntry!==void 0&&this.currentStaffEntry.Timestamp!==void 0&&this.currentStaffEntry.Timestamp.Equals(new Fraction$1(0,1))&&!this.currentStaffEntry.hasNotes();this.saveAbstractInstructionList(this.instrument.Staves.length,ie),this.activeRhythm,!Q&&!G&&(B=new Fraction$1(O,4*this.divisions));const ae=T.elements("dot").length;if(this.currentVoiceGenerator.read(T,B,R,W,V,_,this.currentStaffEntry,this.currentMeasure,r,this.maxTieNoteFraction,N,s,F,q,G,xe,J,ue,Y,ae,ge,Ee,Ie),K!==void 0&&K.element("dynamics")){const H=this.expressionReaders[this.readExpressionStaffNumber(T)-1];H&&(H.readExpressionParameters(T,this.instrument,this.divisions,o,a,this.currentMeasure.MeasureNumber,!1),H.read(T,this.currentMeasure,a,void 0,u.length))}c=G}else if(T.name==="forward"){const F=parseInt(T.element("duration").value,10);o.Add(new Fraction$1(F,4*this.divisions))}else if(T.name==="backup"){const F=parseInt(T.element("duration").value,10);o.Sub(new Fraction$1(F,4*this.divisions)),o.IsNegative()&&(o=new Fraction$1(0,1)),a.Sub(new Fraction$1(F,4*this.divisions)),a.IsNegative()&&(a=new Fraction$1(0,1))}else if(T.name==="direction"){const F=T.elements("direction-type"),D=T.element("direction-type");let N=Math.min(1,o.RealValue);this.activeRhythm!==void 0&&this.activeRhythm.Rhythm&&(N/=this.activeRhythm.Rhythm.RealValue);let O=!1;if(this.repetitionInstructionReader&&(O=this.repetitionInstructionReader.handleRepetitionInstructionsFromWordsOrSymbols(D,N)),!O){let B=this.expressionReaders[0];const V=this.readExpressionStaffNumber(T)-1;if(V_==null?void 0:_.toLocaleLowerCase()).includes((y=R.value)==null?void 0:y.toLocaleLowerCase())&&(this.currentGradualChangeMeasure=this.currentMeasure,this.currentMeasure.speedInfo={startWord:(A=R.value)==null?void 0:A.toLocaleLowerCase(),startXmlNoteIndex:u.length,endXmlNoteIndex:0,resetXmlNoteIndex:0,startMeasureListIndex:this.currentXmlMeasureIndex,endMeasureListIndex:0,resetMeasureListIndex:0},this.xmlNotes=[]),R.value.startsWith(GRADIENT_SPEED_CLOSE_TAG)&&((b=this.currentGradualChangeMeasure)!=null&&b.speedInfo)&&(this.currentGradualChangeMeasure.speedInfo={...this.currentGradualChangeMeasure.speedInfo,endXmlNoteIndex:this.xmlNotes.length,endMeasureListIndex:this.currentXmlMeasureIndex}),((S=R.value)==null?void 0:S.toLocaleLowerCase())==="a tempo".toLocaleLowerCase()&&((E=this.currentGradualChangeMeasure)!=null&&E.speedInfo)){const{endXmlNoteIndex:_,resetXmlNoteIndex:K,endMeasureListIndex:G}=this.currentGradualChangeMeasure.speedInfo;K===0&&(this.currentGradualChangeMeasure.speedInfo={...this.currentGradualChangeMeasure.speedInfo,endXmlNoteIndex:_||this.xmlNotes.length,endMeasureListIndex:G||this.currentXmlMeasureIndex,resetXmlNoteIndex:this.xmlNotes.length,resetMeasureListIndex:this.currentXmlMeasureIndex}),this.xmlNotes=[]}R.value&&R.value.toLocaleLowerCase()==="hiddenspeed"?m=!0:m=!1}if(F.find(Q=>Q.element("metronome"))&&((x=this.currentGradualChangeMeasure)!=null&&x.speedInfo)){const{endXmlNoteIndex:Q,resetXmlNoteIndex:_,endMeasureListIndex:K}=this.currentGradualChangeMeasure.speedInfo;_===0&&(this.currentGradualChangeMeasure.speedInfo={...this.currentGradualChangeMeasure.speedInfo,endXmlNoteIndex:Q||this.xmlNotes.length,endMeasureListIndex:K||this.currentXmlMeasureIndex,resetXmlNoteIndex:this.xmlNotes.length,resetMeasureListIndex:this.currentXmlMeasureIndex}),this.xmlNotes=[]}B.readExpressionParameters(T,this.instrument,this.divisions,o,a,this.currentMeasure.MeasureNumber,!1),B.read(T,this.currentMeasure,o,a.clone(),u.length,m)}}}else if(T.name==="barline"){this.repetitionInstructionReader&&this.repetitionInstructionReader.handleLineRepetitionInstructions(T)&&(this.currentMeasure.HasEndLine=!0);const F=T.attribute("location");if(M===k.length-1||F&&F.value==="right"){const N=(C=T.element("bar-style"))==null?void 0:C.value;N&&(this.currentMeasure.endingBarStyleXml=N,this.currentMeasure.endingBarStyleEnum=SystemLinesEnumHelper.xmlBarlineStyleToSystemLinesEnum(N))}}else if(T.name==="sound")try{if(T.attribute("tempo")){const F=parseFloat(T.attribute("tempo").value);T.element("offset")&&(this.soundTempos.has(this.currentXmlMeasureIndex)||this.soundTempos.set(this.currentXmlMeasureIndex,[]),this.soundTempos.get(this.currentXmlMeasureIndex).push(F)),this.currentXmlMeasureIndex===0&&(this.musicSheet.DefaultStartTempoInBpm=F,this.musicSheet.HasBPMInfo=!0)}}catch(F){loglevelExports.debug("InstrumentReader.readTempoInstruction",F)}else if(T.name==="harmony"){const F=this.getNoteStaff(T);this.currentStaff=this.instrument.Staves[F-1];const D=o.clone();this.currentStaffEntry=this.currentMeasure.findOrCreateStaffEntry(D,this.inSourceMeasureInstrumentIndex+F-1,this.currentStaff).staffEntry,this.currentStaffEntry.ChordContainers.push(ChordSymbolReader.readChordSymbol(T,this.musicSheet,this.activeKey))}}for(const M in this.voiceGeneratorsDict)this.voiceGeneratorsDict.hasOwnProperty(M)&&this.voiceGeneratorsDict[M].checkForOpenBeam();if(this.currentXmlMeasureIndex===this.xmlMeasureList.length-1){for(let M=0;M{this.voiceGeneratorsDict[M].finalizeReadingMeasure()}),this.musicSheet.HasBPMInfo?e.TempoInBPM===0&&this.previousMeasure&&(this.currentMeasure.TempoInBPM=this.previousMeasure.TempoInBPM):this.currentMeasure.TempoInBPM=120}catch(P){if(l)throw new MusicSheetReadingException(P.Message);const k=ITextTranslation.translateText("ReaderErrorMessages/MeasureError","Error while reading Measure.");this.musicSheet.SheetErrors.pushMeasureError(k),loglevelExports.debug("InstrumentReader.readNextXmlMeasure",k,P)}return this.previousMeasure=this.currentMeasure,this.currentXmlMeasureIndex+=1,!0}getStemDirectionAndColors(e){let r=StemDirectionType.Undefined,s;const o=e.element("stem");if(o){r=this.getStemDirectionType(o);const c=o.attribute("color");c&&(s=this.parseXmlColor(c.value))}let a=this.getNoteHeadColorXml(e);const l=this.getNoteColorXml(e);return l&&!a&&(a=l),l&&!s&&(s=l),[r,s,a]}parseXmlColor(e){if(e)return e.length===7?e:e.length===9?"#"+e.substr(3):void 0}doCalculationsAfterDurationHasBeenSet(){for(const e in this.voiceGeneratorsDict)this.voiceGeneratorsDict.hasOwnProperty(e)&&this.voiceGeneratorsDict[e].checkOpenTies()}getOrCreateVoiceGenerator(e,r){const s=this.instrument.Staves[r];let o=this.voiceGeneratorsDict[e];if(o)s.Voices.indexOf(o.GetVoice)===-1&&s.Voices.push(o.GetVoice);else{const a=this.staffMainVoiceGeneratorDict[r];a?(o=new VoiceGenerator(this.pluginManager,s,e,this.slurReader,a.GetVoice),s.Voices.push(o.GetVoice),this.voiceGeneratorsDict[e]=o):(o=new VoiceGenerator(this.pluginManager,s,e,this.slurReader),s.Voices.push(o.GetVoice),this.voiceGeneratorsDict[e]=o,this.staffMainVoiceGeneratorDict[r]=o)}return o}createExpressionGenerators(e){this.expressionReaders=new Array(e);for(let r=0;r0?r=this.musicSheet.SourceMeasures[0]:r=this.currentMeasure;const s=new ClefInstruction(ClefEnum.G,0,2);let o;r.FirstInstructionsStaffEntries[e]?(o=r.FirstInstructionsStaffEntries[e],o.removeFirstInstructionOfTypeClefInstruction()):(o=new SourceStaffEntry(void 0,void 0),r.FirstInstructionsStaffEntries[e]=o),s.Parent=o,o.Instructions.splice(0,0,s)}createDefaultKeyInstruction(){let e;this.musicSheet.SourceMeasures.length>0?e=this.musicSheet.SourceMeasures[0]:e=this.currentMeasure;const r=new KeyInstruction(void 0,0,KeyEnum.major);for(let s=this.inSourceMeasureInstrumentIndex;s0&&s[o-1].name==="backup")return!0;let a=-1;for(let l=0;l0||a<0}isAttributesNodeAtEndOfMeasure(e,r,s){var c;if(s.Equals((c=this.ActiveRhythm)==null?void 0:c.Rhythm))return!0;const o=e.elements().slice();let a=0;for(let u=0;ul}getNoteDurationFromTypeNode(e){const r=e.element("type");if(r){const s=r.value;return NoteTypeHandler.getNoteDurationFromType(s)}return new Fraction$1(0,4*this.divisions)}addAbstractInstruction(e,r,s,o){if(e.element("divisions")&&e.elements().length===1)return;const a=e.element("transpose");if(a){const u=a.element("chromatic");u&&(this.instrument.PlaybackTranspose=parseInt(u.value,10))}const l=e.elements("clef");let c;if(l.length>0)for(let u=0,m=l.length;uthis.currentClefNumber&&(A=this.currentClefNumber),this.currentClefNumber=A+1}catch(P){c=ITextTranslation.translateText("ReaderErrorMessages/ClefError","Invalid clef. Using default."),this.musicSheet.SheetErrors.pushMeasureError(c),A=1,this.currentClefNumber=A+1}const C=new ClefInstruction(d,b,y);this.abstractInstructions.push([A,C,o])}if(e.element("key")!==void 0&&this.instrument.MidiInstrumentId!==MidiInstrument.Percussion){let u=0;const m=e.element("key").element("fifths");if(m)try{u=parseInt(m.value,10)}catch(A){c=ITextTranslation.translateText("ReaderErrorMessages/KeyError","Invalid key. Set to default."),this.musicSheet.SheetErrors.pushMeasureError(c),u=0,loglevelExports.debug("InstrumentReader.addAbstractInstruction",c,A)}let g=KeyEnum.none,d=e.element("key");if(d&&(d=d.element("mode")),d)try{g=KeyEnum[d.value]}catch(A){c=ITextTranslation.translateText("ReaderErrorMessages/KeyError","Invalid key/mode. Set to default."),this.musicSheet.SheetErrors.pushMeasureError(c),g=KeyEnum.major,loglevelExports.debug("InstrumentReader.addAbstractInstruction",c,A)}const y=new KeyInstruction(void 0,u,g);this.abstractInstructions.push([1,y,o])}if(e.element("time")){const u=e.element("time");let m=RhythmSymbolEnum.NONE,g=!0;if(u!==void 0&&u.hasAttributes){const x=u.attribute("symbol");x&&(x.value==="common"?m=RhythmSymbolEnum.COMMON:x.value==="cut"&&(m=RhythmSymbolEnum.CUT));const C=u.attribute("print-object");C&&C.value==="no"&&(g=!1)}let d=0,y=0;const A=u&&u.element("senza-misura")!==void 0,b=e.elements("time"),S=[],E=[];for(let x=0,C=b.length;x0&&E!==void 0&&S.length===E.length){const C=S.length,P=new Array(C);let k=0;for(let I=0;I=0;s--){const o=this.abstractInstructions[s],a=o[0],l=o[1],c=o[2];if(l instanceof ClefInstruction){const u=l;if(this.currentXmlMeasureIndex===0||a<=this.activeClefs.length&&u!==this.activeClefs[a-1])if(!r&&this.currentStaffEntry!==void 0&&!this.currentStaffEntry.hasNotes()&&a-1===this.instrument.Staves.indexOf(this.currentStaffEntry.ParentStaff)){const m=u,g=this.currentStaffEntry;if(c&&Math.abs(c.RealValue-g.Timestamp.RealValue)>.01)continue;m.Parent=g,g.removeFirstInstructionOfTypeClefInstruction(),g.Instructions.push(m),this.activeClefs[a-1]=u,this.abstractInstructions.splice(s,1)}else if(r){if(c.RealValue!==0)continue;let m;if(this.currentMeasure){const g=u,d=this.inSourceMeasureInstrumentIndex+a-1,y=this.currentMeasure.FirstInstructionsStaffEntries[d];if(this.currentXmlMeasureIndex===0)if(!y)m=new SourceStaffEntry(void 0,void 0),this.currentMeasure.FirstInstructionsStaffEntries[d]=m,g.Parent=m,m.Instructions.push(g),this.activeClefsHaveBeenInitialized[a-1]=!0;else if(this.currentMeasure.FirstInstructionsStaffEntries[d]!==void 0&&!(y.Instructions[0]instanceof ClefInstruction))m=y,g.Parent=m,m.removeFirstInstructionOfTypeClefInstruction(),m.Instructions.splice(0,0,g),this.activeClefsHaveBeenInitialized[a-1]=!0;else{const A=new SourceStaffEntry(void 0,void 0);this.currentMeasure.LastInstructionsStaffEntries[d]=A,g.Parent=A,A.Instructions.push(g)}else if(this.activeClefsHaveBeenInitialized[a-1]){let A=this.previousMeasure;this.followingMultirestMeasures>0&&this.currentMeasure.Rules.RenderMultipleRestMeasures&&(A=this.currentMultirestStartMeasure);const b=new SourceStaffEntry(void 0,void 0);A.LastInstructionsStaffEntries[d]=b,g.Parent=b,b.Instructions.push(g)}else{const A=this.musicSheet.SourceMeasures[0];A.FirstInstructionsStaffEntries[d]?(m=A.FirstInstructionsStaffEntries[d],m.removeFirstInstructionOfTypeClefInstruction()):m=new SourceStaffEntry(void 0,void 0),g.Parent=m,m.Instructions.splice(0,0,g),this.activeClefsHaveBeenInitialized[a-1]=!0}this.activeClefs[a-1]=u,this.abstractInstructions.splice(s,1)}}else{let m;const g=this.activeRhythm.Rhythm;g.RealValue>0&&c.RealValue/g.RealValue>.9&&g.RealValue!==c.RealValue&&(this.currentMeasure.LastInstructionsStaffEntries[a-1]||(this.currentMeasure.LastInstructionsStaffEntries[a-1]=new SourceStaffEntry(void 0,this.instrument.Staves[a-1])),m=this.currentMeasure.LastInstructionsStaffEntries[a-1]),m&&(u.Parent=m,m.Instructions.push(u),this.activeClefs[a-1]=u,this.abstractInstructions.splice(s,1))}else a<=this.activeClefs.length&&u===this.activeClefs[a-1]&&this.abstractInstructions.splice(s,1)}if(l instanceof KeyInstruction){const u=l;if(!this.activeKey||this.activeKey.Key!==u.Key){this.activeKey=u,this.abstractInstructions.splice(s,1);let m;if(this.activeKeyHasBeenInitialized?m=this.currentMeasure:(this.activeKeyHasBeenInitialized=!0,this.currentXmlMeasureIndex>0?m=this.musicSheet.SourceMeasures[0]:m=this.currentMeasure),m)for(let g=this.inSourceMeasureInstrumentIndex;g=0;e--){const r=this.abstractInstructions[e][0],s=this.abstractInstructions[e][1];if(s instanceof ClefInstruction){const o=s;if(!this.activeClefs[r-1]||o.ClefType!==this.activeClefs[r-1].ClefType||o.ClefType===this.activeClefs[r-1].ClefType&&o.Line!==this.activeClefs[r-1].Line){const a=new SourceStaffEntry(void 0,void 0);this.currentMeasure.LastInstructionsStaffEntries[this.inSourceMeasureInstrumentIndex+r-1]=a;const l=o;l.Parent=a,a.Instructions.push(l),this.activeClefs[r-1]=o,this.abstractInstructions.splice(e,1)}}}}getNoteDurationForTuplet(e){let r=new Fraction$1(0,1);const s=this.getNoteDurationFromTypeNode(e);if(e.element("time-modification")){const o=e.element("time-modification");if(o&&o.element("actual-notes")!==void 0&&o.element("normal-notes")){const a=o.element("actual-notes"),l=o.element("normal-notes");if(a!==void 0&&l){const c=parseInt(a.value,10),u=parseInt(l.value,10);r=new Fraction$1(u*s.Numerator,c*s.Denominator)}}}return r}readExpressionStaffNumber(e){let r=1;if(e.element("staff")){const s=e.element("staff");if(s)try{r=parseInt(s.value,10)}catch(o){const a=ITextTranslation.translateText("ReaderErrorMessages/ExpressionStaffError","Invalid Expression staff number. Set to default.");this.musicSheet.SheetErrors.pushMeasureError(a),r=1,loglevelExports.debug("InstrumentReader.readExpressionStaffNumber",a,o)}}return r}readDivisionsFromNotes(){let e=0,r=this.currentXmlMeasureIndex,s=!1;for(;!s;){const o=this.xmlMeasureList[r].elements();for(let a=0,l=o.length;a0){s=!0;break}}if(e===0&&(r++,r===this.xmlMeasureList.length)){const a=ITextTranslation.translateText("ReaderErrorMEssages/DivisionsError","Invalid divisions value at Instrument: ");throw new MusicSheetReadingException(a+this.instrument.Name)}}return e}getCueNoteAndNoteTypeXml(e){const r=e.element("cue");let s=!1;r&&(s=!0);const o=e.element("type");let a=NoteType.UNDEFINED;if(o){const l=o.attribute("size");(l==null?void 0:l.value)==="cue"&&(s=!0),a=NoteTypeHandler.StringToNoteType(o.value)}return[s,a]}getStemDirectionType(e){switch(e.value){case"down":return StemDirectionType.Down;case"up":return StemDirectionType.Up;case"double":return StemDirectionType.Double;case"none":return StemDirectionType.None;default:return StemDirectionType.Undefined}}getNoteHeadColorXml(e){const r=e.element("notehead");if(r){const s=r.attribute("color");if(s)return this.parseXmlColor(s.value)}return null}getNoteColorXml(e){const r=e.attribute("color");return r?this.parseXmlColor(r.value):null}getTremoloInfo(e){let r,s;const o=e.element("tremolo");if(o){const a=o.attribute("type");if(a){if(a.value==="single"){const l=parseInt(o.value,10);l>0&&(r=l)}else r=0;a.value==="unmeasured"&&(s=!0)}}return{tremoloStrokes:r,tremoloUnmeasured:s}}getWavyLines(e,r,s,o){const a=e.elements("wavy-line");if(a)for(const l of a){const c=this.expressionReaders[this.readExpressionStaffNumber(r)-1];c&&(c.readExpressionParameters(l,this.instrument,this.divisions,s,o,this.currentMeasure.MeasureNumber,!1),c.addWavyLine(l,this.currentMeasure,s,o))}}getNoteStaff(e){let r=1;return this.instrument.Staves.length>1&&e.element("staff")&&(r=parseInt(e.element("staff").value,10),isNaN(r)&&(loglevelExports.debug("InstrumentReader.readNextXmlMeasure.get staff number"),r=1)),r}}class InstrumentNames{}InstrumentNames.MidiInstrument={banjo:MidiInstrument.Banjo,blockfloete:MidiInstrument.Recorder,brass:MidiInstrument.Trombone,bratsche:MidiInstrument.Viola,cello:MidiInstrument.Cello,clarinet:MidiInstrument.Clarinet,contrabass:MidiInstrument.Contrabass,"steel drum":MidiInstrument.Steel_Drums,drums:MidiInstrument.Percussion,flute:MidiInstrument.Flute,floete:MidiInstrument.Flute,frenchhorn:MidiInstrument.French_Horn,gitarre:MidiInstrument.Acoustic_Guitar_nylon,guitar:MidiInstrument.Acoustic_Guitar_nylon,harfe:MidiInstrument.Orchestral_Harp,harp:MidiInstrument.Orchestral_Harp,klarinette:MidiInstrument.Clarinet,klavier:MidiInstrument.Acoustic_Grand_Piano,kontrabass:MidiInstrument.Contrabass,oboe:MidiInstrument.Oboe,organ:MidiInstrument.Church_Organ,orgel:MidiInstrument.Church_Organ,orgue:MidiInstrument.Church_Organ,percussion:MidiInstrument.Percussion,piano:MidiInstrument.Acoustic_Grand_Piano,piccolo:MidiInstrument.Piccolo,posaune:MidiInstrument.Trombone,recorder:MidiInstrument.Recorder,sax:MidiInstrument.Tenor_Sax,schlagwerk:MidiInstrument.Percussion,schlagzeug:MidiInstrument.Percussion,steeldrum:MidiInstrument.Steel_Drums,streicher:MidiInstrument.String_Ensemble_1,strings:MidiInstrument.String_Ensemble_1,tpt:MidiInstrument.Trumpet,trombone:MidiInstrument.Trombone,trompete:MidiInstrument.Trumpet,trumpet:MidiInstrument.Trumpet,tuba:MidiInstrument.Tuba,unnamed:MidiInstrument.Acoustic_Grand_Piano,viola:MidiInstrument.Viola,violin:MidiInstrument.Violin,"violon-c":MidiInstrument.Cello,"violon.":MidiInstrument.Violin,voice:MidiInstrument.Synth_Voice,woodblock:MidiInstrument.Woodblock,alt:MidiInstrument.Synth_Voice,alto:MidiInstrument.Synth_Voice,bariton:MidiInstrument.Synth_Voice,baritone:MidiInstrument.Synth_Voice,bass:MidiInstrument.Synth_Voice,sopran:MidiInstrument.Synth_Voice,tenor:MidiInstrument.Synth_Voice};InstrumentNames.MidiInstrumentSounds={"brass.alphorn":MidiInstrument.French_Horn,"brass.alto-horn":MidiInstrument.French_Horn,"brass.baritone-horn":MidiInstrument.French_Horn,"brass.bugle":MidiInstrument.Trumpet,"brass.bugle.alto":MidiInstrument.Trumpet,"brass.bugle.baritone":MidiInstrument.Trombone,"brass.bugle.contrabass":MidiInstrument.Trombone,"brass.bugle.euphonium-bugle":MidiInstrument.French_Horn,"brass.bugle.mellophone-bugle":MidiInstrument.French_Horn,"brass.bugle.soprano":MidiInstrument.Trumpet,"brass.cimbasso":MidiInstrument.Trombone,"brass.conch-shell":MidiInstrument.Flute,"brass.cornet":MidiInstrument.Trumpet,"brass.cornet.soprano":MidiInstrument.Trumpet,"brass.cornett":MidiInstrument.Trumpet,"brass.cornett.tenor":MidiInstrument.Trumpet,"brass.cornettino":MidiInstrument.Trumpet,"brass.didgeridoo":MidiInstrument.Flute,"brass.euphonium":MidiInstrument.French_Horn,"brass.fiscorn":MidiInstrument.French_Horn,"brass.flugelhorn":MidiInstrument.French_Horn,"brass.french-horn":MidiInstrument.French_Horn,"brass.group":MidiInstrument.Brass_Section,"brass.group.synth":MidiInstrument.Synth_Brass_1,"brass.helicon":MidiInstrument.French_Horn,"brass.horagai":MidiInstrument.Trumpet,"brass.kuhlohorn":MidiInstrument.French_Horn,"brass.mellophone":MidiInstrument.French_Horn,"brass.natural-horn":MidiInstrument.French_Horn,"brass.ophicleide":MidiInstrument.French_Horn,"brass.posthorn":MidiInstrument.French_Horn,"brass.saxhorn":MidiInstrument.French_Horn,"brass.sousaphone":MidiInstrument.Tuba,"brass.trombone":MidiInstrument.Trombone,"brass.trombone.alto":MidiInstrument.Trombone,"brass.trombone.bass":MidiInstrument.Trombone,"brass.trombone.contrabass":MidiInstrument.Trombone,"brass.trombone.tenor":MidiInstrument.Trombone,"brass.trumpet":MidiInstrument.Trumpet,"brass.trumpet.baroque":MidiInstrument.Trumpet,"brass.trumpet.bass":MidiInstrument.Trombone,"brass.trumpet.bflat":MidiInstrument.Trumpet,"brass.trumpet.c":MidiInstrument.Trumpet,"brass.trumpet.d":MidiInstrument.Trumpet,"brass.trumpet.piccolo":MidiInstrument.Trumpet,"brass.trumpet.pocket":MidiInstrument.Trumpet,"brass.trumpet.slide":MidiInstrument.Trumpet,"brass.trumpet.tenor":MidiInstrument.Trumpet,"brass.tuba":MidiInstrument.Tuba,"brass.tuba.bass":MidiInstrument.Tuba,"brass.tuba.subcontrabass":MidiInstrument.Tuba,"brass.vienna-horn":MidiInstrument.French_Horn,"brass.wagner-tuba":MidiInstrument.French_Horn,"drum.ashiko":MidiInstrument.Shakuhachi,"drum.bass-drum":MidiInstrument.Percussion,"drum.bongo":MidiInstrument.Percussion,"drum.bougarabou":MidiInstrument.Percussion,"drum.buffalo-drum":MidiInstrument.Percussion,"drum.cajon":MidiInstrument.Percussion,"drum.chenda":MidiInstrument.Percussion,"drum.chu-daiko":MidiInstrument.Percussion,"drum.conga":MidiInstrument.Percussion,"drum.cuica":MidiInstrument.Percussion,"drum.dabakan":MidiInstrument.Percussion,"drum.daff":MidiInstrument.Percussion,"drum.dafli":MidiInstrument.Percussion,"drum.daibyosi":MidiInstrument.Percussion,"drum.damroo":MidiInstrument.Percussion,"drum.darabuka":MidiInstrument.Percussion,"drum.def":MidiInstrument.Percussion,"drum.dhol":MidiInstrument.Percussion,"drum.dholak":MidiInstrument.Percussion,"drum.djembe":MidiInstrument.Percussion,"drum.doira":MidiInstrument.Percussion,"drum.dondo":MidiInstrument.Percussion,"drum.doun-doun-ba":MidiInstrument.Percussion,"drum.duff":MidiInstrument.Percussion,"drum.dumbek":MidiInstrument.Percussion,"drum.fontomfrom":MidiInstrument.Percussion,"drum.frame-drum":MidiInstrument.Percussion,"drum.frame-drum.arabian":MidiInstrument.Percussion,"drum.geduk":MidiInstrument.Percussion,"drum.ghatam":MidiInstrument.Percussion,"drum.gome":MidiInstrument.Percussion,"drum.group":MidiInstrument.Percussion,"drum.group.chinese":MidiInstrument.Percussion,"drum.group.ewe":MidiInstrument.Percussion,"drum.group.indian":MidiInstrument.Percussion,"drum.group.set":MidiInstrument.Percussion,"drum.hand-drum":MidiInstrument.Percussion,"drum.hira-daiko":MidiInstrument.Percussion,"drum.ibo":MidiInstrument.Percussion,"drum.igihumurizo":MidiInstrument.Percussion,"drum.inyahura":MidiInstrument.Percussion,"drum.ishakwe":MidiInstrument.Percussion,"drum.jang-gu":MidiInstrument.Percussion,"drum.kagan":MidiInstrument.Percussion,"drum.kakko":MidiInstrument.Percussion,"drum.kanjira":MidiInstrument.Percussion,"drum.kendhang":MidiInstrument.Percussion,"drum.kendhang.ageng":MidiInstrument.Percussion,"drum.kendhang.ciblon":MidiInstrument.Percussion,"drum.kenkeni":MidiInstrument.Percussion,"drum.khol":MidiInstrument.Percussion,"drum.kick-drum":MidiInstrument.Percussion,"drum.kidi":MidiInstrument.Percussion,"drum.ko-daiko":MidiInstrument.Percussion,"drum.kpanlogo":MidiInstrument.Percussion,"drum.kudum":MidiInstrument.Percussion,"drum.lambeg":MidiInstrument.Percussion,"drum.lion-drum":MidiInstrument.Percussion,"drum.log-drum":MidiInstrument.Percussion,"drum.log-drum.african":MidiInstrument.Percussion,"drum.log-drum.native":MidiInstrument.Percussion,"drum.log-drum.nigerian":MidiInstrument.Percussion,"drum.madal":MidiInstrument.Percussion,"drum.maddale":MidiInstrument.Percussion,"drum.mridangam":MidiInstrument.Percussion,"drum.naal":MidiInstrument.Percussion,"drum.nagado-daiko":MidiInstrument.Percussion,"drum.nagara":MidiInstrument.Percussion,"drum.naqara":MidiInstrument.Percussion,"drum.o-daiko":MidiInstrument.Percussion,"drum.okawa":MidiInstrument.Percussion,"drum.okedo-daiko":MidiInstrument.Percussion,"drum.pahu-hula":MidiInstrument.Percussion,"drum.pakhawaj":MidiInstrument.Percussion,"drum.pandeiro":MidiInstrument.Percussion,"drum.pandero":MidiInstrument.Percussion,"drum.powwow":MidiInstrument.Percussion,"drum.pueblo":MidiInstrument.Percussion,"drum.repinique":MidiInstrument.Percussion,"drum.riq":MidiInstrument.Percussion,"drum.rototom":MidiInstrument.Percussion,"drum.sabar":MidiInstrument.Percussion,"drum.sakara":MidiInstrument.Percussion,"drum.sampho":MidiInstrument.Percussion,"drum.sangban":MidiInstrument.Percussion,"drum.shime-daiko":MidiInstrument.Percussion,"drum.slit-drum":MidiInstrument.Percussion,"drum.slit-drum.krin":MidiInstrument.Percussion,"drum.snare-drum":MidiInstrument.Percussion,"drum.snare-drum.electric":MidiInstrument.Synth_Drum,"drum.sogo":MidiInstrument.Percussion,"drum.surdo":MidiInstrument.Percussion,"drum.tabla":MidiInstrument.Percussion,"drum.tabla.bayan":MidiInstrument.Percussion,"drum.tabla.dayan":MidiInstrument.Percussion,"drum.tabor":MidiInstrument.Percussion,"drum.taiko":MidiInstrument.Taiko_Drum,"drum.talking":MidiInstrument.Percussion,"drum.tama":MidiInstrument.Percussion,"drum.tamborim":MidiInstrument.Percussion,"drum.tamborita":MidiInstrument.Percussion,"drum.tambourine":MidiInstrument.Percussion,"drum.tamte":MidiInstrument.Percussion,"drum.tangku":MidiInstrument.Percussion,"drum.tan-tan":MidiInstrument.Percussion,"drum.taphon":MidiInstrument.Percussion,"drum.tar":MidiInstrument.Percussion,"drum.tasha":MidiInstrument.Percussion,"drum.tenor-drum":MidiInstrument.Percussion,"drum.teponaxtli":MidiInstrument.Percussion,"drum.thavil":MidiInstrument.Percussion,"drum.the-box":MidiInstrument.Percussion,"drum.timbale":MidiInstrument.Percussion,"drum.timpani":MidiInstrument.Timpani,"drum.tinaja":MidiInstrument.Percussion,"drum.toere":MidiInstrument.Percussion,"drum.tombak":MidiInstrument.Percussion,"drum.tom-tom":MidiInstrument.Melodic_Tom,"drum.tom-tom.synth":MidiInstrument.Melodic_Tom,"drum.tsuzumi":MidiInstrument.Percussion,"drum.tumbak":MidiInstrument.Percussion,"drum.uchiwa-daiko":MidiInstrument.Percussion,"drum.udaku":MidiInstrument.Percussion,"drum.udu":MidiInstrument.Percussion,"drum.zarb":MidiInstrument.Percussion,"effect.applause":MidiInstrument.Applause,"effect.gunshot":MidiInstrument.Gunshot,"effect.helicopter":MidiInstrument.Helicopter,"effect.telephone-ring":MidiInstrument.Telephone_Ring,"keyboard.accordion":MidiInstrument.Accordion,"keyboard.bandoneon":MidiInstrument.Accordion,"keyboard.celesta":MidiInstrument.Celesta,"keyboard.clavichord":MidiInstrument.Harpsichord,"keyboard.clavichord.synth":MidiInstrument.Harpsichord,"keyboard.concertina":MidiInstrument.Accordion,"keyboard.fortepiano":MidiInstrument.Acoustic_Grand_Piano,"keyboard.harmonium":MidiInstrument.Drawbar_Organ,"keyboard.harpsichord":MidiInstrument.Harpsichord,"keyboard.ondes-martenot":MidiInstrument.Pad_3_polysynth,"keyboard.organ":MidiInstrument.Church_Organ,"keyboard.organ.drawbar":MidiInstrument.Percussive_Organ,"keyboard.organ.percussive":MidiInstrument.Rock_Organ,"keyboard.organ.pipe":MidiInstrument.Church_Organ,"keyboard.organ.reed":MidiInstrument.Church_Organ,"keyboard.organ.rotary":MidiInstrument.Rock_Organ,"keyboard.piano":MidiInstrument.Acoustic_Grand_Piano,"keyboard.piano.electric":MidiInstrument.Electric_Grand_Piano,"keyboard.piano.grand":MidiInstrument.Acoustic_Grand_Piano,"keyboard.piano.honky-tonk":MidiInstrument.Honky_tonk_Piano,"keyboard.piano.prepared":MidiInstrument.Acoustic_Grand_Piano,"keyboard.piano.toy":MidiInstrument.Honky_tonk_Piano,"keyboard.piano.upright":MidiInstrument.Acoustic_Grand_Piano,"keyboard.virginal":MidiInstrument.Acoustic_Grand_Piano,"metal.adodo":MidiInstrument.Xylophone,"metal.anvil":MidiInstrument.Xylophone,"metal.babendil":MidiInstrument.Xylophone,"metal.bells.agogo":MidiInstrument.Agogo,"metal.bells.almglocken":MidiInstrument.Tubular_Bells,"metal.bells.bell-plate":MidiInstrument.Tubular_Bells,"metal.bells.bell-tree":MidiInstrument.Tubular_Bells,"metal.bells.carillon":MidiInstrument.Tubular_Bells,"metal.bells.chimes":MidiInstrument.Tinkle_Bell,"metal.bells.chimta":MidiInstrument.Tubular_Bells,"metal.bells.chippli":MidiInstrument.Tubular_Bells,"metal.bells.church":MidiInstrument.Tubular_Bells,"metal.bells.cowbell":MidiInstrument.Percussion,"metal.bells.dawuro":MidiInstrument.Percussion,"metal.bells.gankokwe":MidiInstrument.Percussion,"metal.bells.ghungroo":MidiInstrument.Percussion,"metal.bells.hatheli":MidiInstrument.Percussion,"metal.bells.jingle-bell":MidiInstrument.Percussion,"metal.bells.khartal":MidiInstrument.Percussion,"metal.bells.mark-tree":MidiInstrument.Percussion,"metal.bells.sistrum":MidiInstrument.Percussion,"metal.bells.sleigh-bells":MidiInstrument.Percussion,"metal.bells.temple":MidiInstrument.Percussion,"metal.bells.tibetan":MidiInstrument.Percussion,"metal.bells.tinklebell":MidiInstrument.Percussion,"metal.bells.trychel":MidiInstrument.Percussion,"metal.bells.wind-chimes":MidiInstrument.Percussion,"metal.bells.zills":MidiInstrument.Percussion,"metal.berimbau":MidiInstrument.Flute,"metal.brake-drums":MidiInstrument.Percussion,"metal.crotales":MidiInstrument.Percussion,"metal.cymbal.bo":MidiInstrument.Percussion,"metal.cymbal.ceng-ceng":MidiInstrument.Percussion,"metal.cymbal.chabara":MidiInstrument.Percussion,"metal.cymbal.chinese":MidiInstrument.Percussion,"metal.cymbal.ching":MidiInstrument.Percussion,"metal.cymbal.clash":MidiInstrument.Percussion,"metal.cymbal.crash":MidiInstrument.Percussion,"metal.cymbal.finger":MidiInstrument.Percussion,"metal.cymbal.hand":MidiInstrument.Percussion,"metal.cymbal.kesi":MidiInstrument.Percussion,"metal.cymbal.manjeera":MidiInstrument.Percussion,"metal.cymbal.reverse":MidiInstrument.Percussion,"metal.cymbal.ride":MidiInstrument.Percussion,"metal.cymbal.sizzle":MidiInstrument.Percussion,"metal.cymbal.splash":MidiInstrument.Percussion,"metal.cymbal.suspended":MidiInstrument.Percussion,"metal.cymbal.tebyoshi":MidiInstrument.Percussion,"metal.cymbal.tibetan":MidiInstrument.Percussion,"metal.cymbal.tingsha":MidiInstrument.Percussion,"metal.flexatone":MidiInstrument.Percussion,"metal.gong":MidiInstrument.Percussion,"metal.gong.ageng":MidiInstrument.Percussion,"metal.gong.agung":MidiInstrument.Percussion,"metal.gong.chanchiki":MidiInstrument.Percussion,"metal.gong.chinese":MidiInstrument.Percussion,"metal.gong.gandingan":MidiInstrument.Percussion,"metal.gong.kempul":MidiInstrument.Percussion,"metal.gong.kempyang":MidiInstrument.Percussion,"metal.gong.ketuk":MidiInstrument.Percussion,"metal.gong.kkwenggwari":MidiInstrument.Percussion,"metal.gong.luo":MidiInstrument.Percussion,"metal.gong.singing":MidiInstrument.Percussion,"metal.gong.thai":MidiInstrument.Percussion,"metal.guira":MidiInstrument.Percussion,"metal.hang":MidiInstrument.Percussion,"metal.hi-hat":MidiInstrument.Percussion,"metal.jaw-harp":MidiInstrument.Percussion,"metal.kengong":MidiInstrument.Percussion,"metal.murchang":MidiInstrument.Percussion,"metal.musical-saw":MidiInstrument.Percussion,"metal.singing-bowl":MidiInstrument.Percussion,"metal.spoons":MidiInstrument.Percussion,"metal.steel-drums":MidiInstrument.Percussion,"metal.tamtam":MidiInstrument.Percussion,"metal.thundersheet":MidiInstrument.Percussion,"metal.triangle":MidiInstrument.Percussion,"metal.washboard":MidiInstrument.Percussion,"pitched-percussion.angklung":MidiInstrument.Xylophone,"pitched-percussion.balafon":MidiInstrument.Xylophone,"pitched-percussion.bell-lyre":MidiInstrument.Xylophone,"pitched-percussion.bells":MidiInstrument.Tubular_Bells,"pitched-percussion.bianqing":MidiInstrument.Xylophone,"pitched-percussion.bianzhong":MidiInstrument.Xylophone,"pitched-percussion.bonang":MidiInstrument.Xylophone,"pitched-percussion.cimbalom":MidiInstrument.Xylophone,"pitched-percussion.crystal-glasses":MidiInstrument.Xylophone,"pitched-percussion.dan-tam-thap-luc":MidiInstrument.Xylophone,"pitched-percussion.fangxiang":MidiInstrument.Xylophone,"pitched-percussion.gandingan-a-kayo":MidiInstrument.Xylophone,"pitched-percussion.gangsa":MidiInstrument.Xylophone,"pitched-percussion.gender":MidiInstrument.Xylophone,"pitched-percussion.giying":MidiInstrument.Xylophone,"pitched-percussion.glass-harmonica":MidiInstrument.Xylophone,"pitched-percussion.glockenspiel":MidiInstrument.Glockenspiel,"pitched-percussion.glockenspiel.alto":MidiInstrument.Glockenspiel,"pitched-percussion.glockenspiel.soprano":MidiInstrument.Glockenspiel,"pitched-percussion.gyil":MidiInstrument.Xylophone,"pitched-percussion.hammer-dulcimer":MidiInstrument.Dulcimer,"pitched-percussion.handbells":MidiInstrument.Tubular_Bells,"pitched-percussion.handchimes":MidiInstrument.Tubular_Bells,"pitched-percussion.kalimba":MidiInstrument.Kalimba,"pitched-percussion.kantil":MidiInstrument.Xylophone,"pitched-percussion.khim":MidiInstrument.Xylophone,"pitched-percussion.kulintang":MidiInstrument.Xylophone,"pitched-percussion.kulintang-a-kayo":MidiInstrument.Xylophone,"pitched-percussion.kulintang-a-tiniok":MidiInstrument.Xylophone,"pitched-percussion.likembe":MidiInstrument.Xylophone,"pitched-percussion.luntang":MidiInstrument.Xylophone,"pitched-percussion.marimba":MidiInstrument.Marimba,"pitched-percussion.marimba.bass":MidiInstrument.Marimba,"pitched-percussion.mbira":MidiInstrument.Marimba,"pitched-percussion.mbira.array":MidiInstrument.Marimba,"pitched-percussion.metallophone":MidiInstrument.Xylophone,"pitched-percussion.metallophone.alto":MidiInstrument.Xylophone,"pitched-percussion.metallophone.bass":MidiInstrument.Xylophone,"pitched-percussion.metallophone.soprano":MidiInstrument.Xylophone,"pitched-percussion.music-box":MidiInstrument.Glockenspiel,"pitched-percussion.pelog-panerus":MidiInstrument.Xylophone,"pitched-percussion.pemade":MidiInstrument.Xylophone,"pitched-percussion.penyacah":MidiInstrument.Xylophone,"pitched-percussion.ranat.ek":MidiInstrument.Xylophone,"pitched-percussion.ranat.ek-lek":MidiInstrument.Xylophone,"pitched-percussion.ranat.thum":MidiInstrument.Xylophone,"pitched-percussion.ranat.thum-lek":MidiInstrument.Xylophone,"pitched-percussion.reyong":MidiInstrument.Xylophone,"pitched-percussion.sanza":MidiInstrument.Xylophone,"pitched-percussion.saron-barung":MidiInstrument.Xylophone,"pitched-percussion.saron-demong":MidiInstrument.Xylophone,"pitched-percussion.saron-panerus":MidiInstrument.Xylophone,"pitched-percussion.slendro-panerus":MidiInstrument.Xylophone,"pitched-percussion.slentem":MidiInstrument.Xylophone,"pitched-percussion.tsymbaly":MidiInstrument.Xylophone,"pitched-percussion.tubes":MidiInstrument.Tubular_Bells,"pitched-percussion.tubular-bells":MidiInstrument.Tubular_Bells,"pitched-percussion.vibraphone":MidiInstrument.Vibraphone,"pitched-percussion.xylophone":MidiInstrument.Xylophone,"pitched-percussion.xylophone.alto":MidiInstrument.Xylophone,"pitched-percussion.xylophone.bass":MidiInstrument.Xylophone,"pitched-percussion.xylophone.soprano":MidiInstrument.Xylophone,"pitched-percussion.xylorimba":MidiInstrument.Xylophone,"pitched-percussion.yangqin":MidiInstrument.Xylophone,"pluck.archlute":MidiInstrument.Acoustic_Guitar_nylon,"pluck.autoharp":MidiInstrument.Orchestral_Harp,"pluck.baglama":MidiInstrument.Orchestral_Harp,"pluck.bajo":MidiInstrument.Acoustic_Guitar_steel,"pluck.balalaika":MidiInstrument.Acoustic_Guitar_steel,"pluck.balalaika.alto":MidiInstrument.Acoustic_Guitar_steel,"pluck.balalaika.bass":MidiInstrument.Acoustic_Guitar_steel,"pluck.balalaika.contrabass":MidiInstrument.Acoustic_Guitar_steel,"pluck.balalaika.piccolo":MidiInstrument.Acoustic_Guitar_steel,"pluck.balalaika.prima":MidiInstrument.Acoustic_Guitar_steel,"pluck.balalaika.secunda":MidiInstrument.Acoustic_Guitar_steel,"pluck.bandola":MidiInstrument.Acoustic_Guitar_steel,"pluck.bandura":MidiInstrument.Acoustic_Guitar_steel,"pluck.bandurria":MidiInstrument.Acoustic_Guitar_steel,"pluck.banjo":MidiInstrument.Banjo,"pluck.banjo.tenor":MidiInstrument.Banjo,"pluck.banjolele":MidiInstrument.Banjo,"pluck.barbat":MidiInstrument.Acoustic_Guitar_steel,"pluck.bass":MidiInstrument.Electric_Bass_finger,"pluck.bass.acoustic":MidiInstrument.Acoustic_Bass,"pluck.bass.bolon":MidiInstrument.Electric_Bass_finger,"pluck.bass.electric":MidiInstrument.Electric_Bass_finger,"pluck.bass.fretless":MidiInstrument.Fretless_Bass,"pluck.bass.guitarron":MidiInstrument.Acoustic_Bass,"pluck.bass.synth":MidiInstrument.Synth_Bass_1,"pluck.bass.synth.lead":MidiInstrument.Synth_Bass_2,"pluck.celtic-harp":MidiInstrument.Orchestral_Harp,"pluck.charango":MidiInstrument.Acoustic_Guitar_nylon,"pluck.chitarra-battente":MidiInstrument.Acoustic_Guitar_nylon,"pluck.cithara":MidiInstrument.Acoustic_Guitar_nylon,"pluck.cittern":MidiInstrument.Acoustic_Guitar_nylon,"pluck.cuatro":MidiInstrument.Acoustic_Guitar_nylon,"pluck.dulcimer":MidiInstrument.Dulcimer,"pluck.dutar":MidiInstrument.Acoustic_Grand_Piano,"pluck.duxianqin":MidiInstrument.Dulcimer,"pluck.ektara":MidiInstrument.Acoustic_Guitar_nylon,"pluck.guitar":MidiInstrument.Acoustic_Guitar_nylon,"pluck.guitar.acoustic":MidiInstrument.Acoustic_Guitar_nylon,"pluck.guitar.electric":MidiInstrument.Electric_Guitar_clean,"pluck.guitar.nylon-string":MidiInstrument.Electric_Guitar_clean,"pluck.guitar.pedal-steel":MidiInstrument.Electric_Guitar_clean,"pluck.guitar.portuguese":MidiInstrument.Acoustic_Guitar_nylon,"pluck.guitar.requinto":MidiInstrument.Acoustic_Guitar_nylon,"pluck.guitar.resonator":MidiInstrument.Acoustic_Guitar_nylon,"pluck.guitar.steel-string":MidiInstrument.Acoustic_Guitar_steel,"pluck.harp":MidiInstrument.Orchestral_Harp,"pluck.harp-guitar":MidiInstrument.Orchestral_Harp,"pluck.huapanguera":MidiInstrument.Orchestral_Harp,"pluck.lute":MidiInstrument.Acoustic_Grand_Piano,"pluck.lyre":MidiInstrument.Orchestral_Harp,"pluck.mandobass":MidiInstrument.Acoustic_Guitar_nylon,"pluck.mandocello":MidiInstrument.Acoustic_Guitar_nylon,"pluck.mandola":MidiInstrument.Acoustic_Guitar_nylon,"pluck.mandolin":MidiInstrument.Acoustic_Guitar_nylon,"pluck.mandolin.octave":MidiInstrument.Acoustic_Guitar_nylon,"pluck.setar":MidiInstrument.Acoustic_Guitar_nylon,"pluck.shamisen":MidiInstrument.Shamisen,"pluck.sitar":MidiInstrument.Sitar,"pluck.synth":MidiInstrument.Electric_Bass_pick,"pluck.synth.charang":MidiInstrument.Electric_Bass_pick,"pluck.synth.chiff":MidiInstrument.Electric_Bass_pick,"pluck.synth.stick":MidiInstrument.Electric_Bass_pick,"pluck.tambura":MidiInstrument.Acoustic_Grand_Piano,"pluck.ukulele":MidiInstrument.Banjo,"pluck.ukulele.tenor":MidiInstrument.Banjo,"strings.arpeggione":MidiInstrument.Cello,"strings.cello":MidiInstrument.Cello,"strings.cello.piccolo":MidiInstrument.Cello,"strings.contrabass":MidiInstrument.Contrabass,"strings.fiddle":MidiInstrument.Fiddle,"strings.fiddle.hardanger":MidiInstrument.Fiddle,"strings.group":MidiInstrument.String_Ensemble_1,"strings.group.synth":MidiInstrument.Synth_Strings_1,"strings.octobass":MidiInstrument.Contrabass,"strings.tromba-marina":MidiInstrument.Contrabass,"strings.vielle":MidiInstrument.Violin,"strings.viol":MidiInstrument.Violin,"strings.viol.alto":MidiInstrument.Violin,"strings.viol.bass":MidiInstrument.Violin,"strings.viol.tenor":MidiInstrument.Violin,"strings.viol.treble":MidiInstrument.Violin,"strings.viol.violone":MidiInstrument.Violin,"strings.viola":MidiInstrument.Viola,"strings.viola-damore":MidiInstrument.Viola,"strings.violin":MidiInstrument.Violin,"strings.violono.piccolo":MidiInstrument.Violin,"strings.violotta":MidiInstrument.Viola,"synth.group":MidiInstrument.Pad_3_polysynth,"synth.group.fifths":MidiInstrument.Pad_3_polysynth,"synth.group.orchestra":MidiInstrument.Orchestra_Hit,"synth.pad":MidiInstrument.Pad_1_new_age,"synth.pad.bowed":MidiInstrument.Pad_1_new_age,"synth.pad.choir":MidiInstrument.Pad_4_choir,"synth.pad.halo":MidiInstrument.Acoustic_Grand_Piano,"synth.pad.polysynth":MidiInstrument.Pad_3_polysynth,"voice.alto":MidiInstrument.Voice_Oohs,"voice.baritone":MidiInstrument.Voice_Oohs,"voice.bass":MidiInstrument.Voice_Oohs,"voice.female":MidiInstrument.Synth_Voice,"voice.kazoo":MidiInstrument.Flute,"voice.male":MidiInstrument.Voice_Oohs,"voice.mezzo-soprano":MidiInstrument.Voice_Oohs,"voice.soprano":MidiInstrument.Voice_Oohs,"voice.synth":MidiInstrument.Synth_Voice,"voice.tenor":MidiInstrument.Voice_Oohs,"voice.vocals":MidiInstrument.Choir_Aahs,"wind.flutes.flute":MidiInstrument.Flute,"wind.flutes.flute.alto":MidiInstrument.Flute,"wind.flutes.flute.bass":MidiInstrument.Flute,"wind.flutes.flute.contra-alto":MidiInstrument.Flute,"wind.flutes.flute.contrabass":MidiInstrument.Flute,"wind.flutes.flute.double-contrabass":MidiInstrument.Flute,"wind.flutes.flute.irish":MidiInstrument.Flute,"wind.flutes.flute.piccolo":MidiInstrument.Piccolo,"wind.flutes.flute.subcontrabass":MidiInstrument.Flute,"wind.flutes.ocarina":MidiInstrument.Ocarina,"wind.flutes.panpipes":MidiInstrument.Pan_Flute,"wind.flutes.recorder":MidiInstrument.Acoustic_Grand_Piano,"wind.flutes.recorder.alto":MidiInstrument.Recorder,"wind.flutes.recorder.bass":MidiInstrument.Recorder,"wind.flutes.recorder.contrabass":MidiInstrument.Recorder,"wind.flutes.recorder.descant":MidiInstrument.Recorder,"wind.flutes.recorder.garklein":MidiInstrument.Recorder,"wind.flutes.recorder.great-bass":MidiInstrument.Recorder,"wind.flutes.recorder.sopranino":MidiInstrument.Recorder,"wind.flutes.recorder.soprano":MidiInstrument.Recorder,"wind.flutes.recorder.tenor":MidiInstrument.Recorder,"wind.flutes.shakuhachi":MidiInstrument.Shakuhachi,"wind.flutes.whistle":MidiInstrument.Whistle,"wind.flutes.whistle.alto":MidiInstrument.Whistle,"wind.flutes.whistle.low-irish":MidiInstrument.Whistle,"wind.flutes.whistle.shiva":MidiInstrument.Whistle,"wind.flutes.whistle.slide":MidiInstrument.Whistle,"wind.flutes.whistle.tin":MidiInstrument.Whistle,"wind.flutes.whistle.tin.bflat":MidiInstrument.Whistle,"wind.flutes.whistle.tin.c":MidiInstrument.Whistle,"wind.flutes.whistle.tin.d":MidiInstrument.Whistle,"wind.group":MidiInstrument.Flute,"wind.pipes.bagpipes":MidiInstrument.Bag_pipe,"wind.reed.basset-horn":MidiInstrument.Bassoon,"wind.reed.bassoon":MidiInstrument.Bassoon,"wind.reed.bombarde":MidiInstrument.Bassoon,"wind.reed.clarinet":MidiInstrument.Clarinet,"wind.reed.clarinet.a":MidiInstrument.Clarinet,"wind.reed.clarinet.alto":MidiInstrument.Clarinet,"wind.reed.clarinet.bass":MidiInstrument.Clarinet,"wind.reed.clarinet.basset":MidiInstrument.Clarinet,"wind.reed.clarinet.bflat":MidiInstrument.Clarinet,"wind.reed.clarinet.contra-alto":MidiInstrument.Clarinet,"wind.reed.clarinet.contrabass":MidiInstrument.Clarinet,"wind.reed.clarinet.d":MidiInstrument.Clarinet,"wind.reed.clarinet.eflat":MidiInstrument.Clarinet,"wind.reed.clarinet.g":MidiInstrument.Clarinet,"wind.reed.clarinet.piccolo":MidiInstrument.Clarinet,"wind.reed.clarinet.piccolo.aflat":MidiInstrument.Clarinet,"wind.reed.clarinette-damour":MidiInstrument.Clarinet,"wind.reed.contrabass":MidiInstrument.Clarinet,"wind.reed.contrabassoon":MidiInstrument.Clarinet,"wind.reed.cornamuse":MidiInstrument.Bag_pipe,"wind.reed.english-horn":MidiInstrument.English_Horn,"wind.reed.harmonica":MidiInstrument.Harmonica,"wind.reed.harmonica.bass":MidiInstrument.Harmonica,"wind.reed.oboe":MidiInstrument.Oboe,"wind.reed.oboe.bass":MidiInstrument.Oboe,"wind.reed.oboe.piccolo":MidiInstrument.Oboe,"wind.reed.oboe-da-caccia":MidiInstrument.Oboe,"wind.reed.oboe-damore":MidiInstrument.Oboe,"wind.reed.saxonette":MidiInstrument.Soprano_Sax,"wind.reed.saxophone":MidiInstrument.Alto_Sax,"wind.reed.saxophone.alto":MidiInstrument.Alto_Sax,"wind.reed.saxophone.aulochrome":MidiInstrument.Alto_Sax,"wind.reed.saxophone.baritone":MidiInstrument.Baritone_Sax,"wind.reed.saxophone.bass":MidiInstrument.Baritone_Sax,"wind.reed.saxophone.contrabass":MidiInstrument.Baritone_Sax,"wind.reed.saxophone.melody":MidiInstrument.Baritone_Sax,"wind.reed.saxophone.mezzo-soprano":MidiInstrument.Alto_Sax,"wind.reed.saxophone.sopranino":MidiInstrument.Soprano_Sax,"wind.reed.saxophone.sopranissimo":MidiInstrument.Soprano_Sax,"wind.reed.saxophone.soprano":MidiInstrument.Soprano_Sax,"wind.reed.saxophone.subcontrabass":MidiInstrument.Baritone_Sax,"wind.reed.saxophone.tenor":MidiInstrument.Tenor_Sax,"wood.bones":MidiInstrument.Woodblock,"wood.castanets":MidiInstrument.Woodblock,"wood.claves":MidiInstrument.Woodblock,"wood.drum-sticks":MidiInstrument.Woodblock,"wood.gourd":MidiInstrument.Woodblock,"wood.granite-block":MidiInstrument.Woodblock,"wood.guban":MidiInstrument.Woodblock,"wood.guiro":MidiInstrument.Woodblock,"wood.hyoushigi":MidiInstrument.Woodblock,"wood.ipu":MidiInstrument.Woodblock,"wood.jam-block":MidiInstrument.Woodblock,"wood.kaekeeke":MidiInstrument.Woodblock,"wood.kagul":MidiInstrument.Woodblock,"wood.kalaau":MidiInstrument.Woodblock,"wood.kashiklar":MidiInstrument.Woodblock,"wood.kubing":MidiInstrument.Woodblock,"wood.pan-clappers":MidiInstrument.Woodblock,"wood.sand-block":MidiInstrument.Woodblock,"wood.slapstick":MidiInstrument.Woodblock,"wood.stir-drum":MidiInstrument.Woodblock,"wood.temple-block":MidiInstrument.Woodblock,"wood.tic-toc-block":MidiInstrument.Woodblock,"wood.tonetang":MidiInstrument.Woodblock,"wood.wood-block":MidiInstrument.Woodblock};class SubInstrument{constructor(e){this.parentInstrument=e,this.fixedKey=-1,this.name=this.parseMidiInstrument(this.parentInstrument.Name),this.midiInstrumentID=InstrumentNames.MidiInstrument[this.name],this.volume=1}get ParentInstrument(){return this.parentInstrument}static isPianoInstrument(e){return e===MidiInstrument.Acoustic_Grand_Piano||e===MidiInstrument.Bright_Acoustic_Piano||e===MidiInstrument.Electric_Grand_Piano||e===MidiInstrument.Electric_Piano_1||e===MidiInstrument.Electric_Piano_2}setMidiInstrumentSound(e){this.midiInstrumentID=InstrumentNames.MidiInstrumentSounds[e]}setMidiInstrument(e){this.midiInstrumentID=InstrumentNames.MidiInstrument[this.parseMidiInstrument(e)]}parseMidiInstrument(e){try{if(e){const r=e.toLowerCase().trim();for(const s in InstrumentNames.MidiInstrument)if(r.indexOf(s)!==-1)return s}if(this.parentInstrument.Name){const r=this.parentInstrument.Name.toLowerCase().trim();for(const s in InstrumentNames.MidiInstrument)if(r.indexOf(s)!==-1)return s}}catch(r){loglevelExports.error("Error parsing MIDI Instrument. Default to Grand Piano.")}return"unnamed"}}class StringUtil{static StringContainsSeparatedWord(e,r,s=!1){return new RegExp("( |^)"+r+"([ .]|$)",s?"i":void 0).test(e)}}class RepetitionInstructionReader{set MusicSheet(e){this.musicSheet=e,this.xmlMeasureList=new Array(this.musicSheet.Instruments.length),this.repetitionInstructions=[]}prepareReadingMeasure(e,r){this.currentMeasureIndex=r}handleLineRepetitionInstructions(e){let r=!1;if(e.elements().length>0){let s="",o=!1,a="",l="",c="";const u=[],m=e.element("bar-style");m&&(c=m.value),e.attributes().length>0&&e.attribute("location")?s=e.attribute("location").value:s="right";const g=e.elements();for(let d=0,y=g.length;d0)if(s==="left"){if(l==="start"){const d=new RepetitionInstruction(this.currentMeasureIndex,RepetitionInstructionEnum.Ending,AlignmentType.Begin,void 0,u);this.addInstruction(this.repetitionInstructions,d)}if(a==="forward"){const d=new RepetitionInstruction(this.currentMeasureIndex,RepetitionInstructionEnum.StartLine);this.addInstruction(this.repetitionInstructions,d)}}else{if(l==="stop"){const d=new RepetitionInstruction(this.currentMeasureIndex,RepetitionInstructionEnum.Ending,AlignmentType.End,void 0,u);this.addInstruction(this.repetitionInstructions,d)}if(a==="backward"){const d=new RepetitionInstruction(this.currentMeasureIndex,RepetitionInstructionEnum.BackJumpLine);this.addInstruction(this.repetitionInstructions,d)}}}return r}handleRepetitionInstructionsFromWordsOrSymbols(e,r){const s=e.element("words"),o=this.currentMeasureIndex;if(s){const a="d\\s?\\.s\\.",l=s.value.trim().toLowerCase();if(StringUtil.StringContainsSeparatedWord(l,a+" al fine",!0)){const u=new RepetitionInstruction(o,RepetitionInstructionEnum.DalSegnoAlFine);return this.addInstruction(this.repetitionInstructions,u),!0}if(StringUtil.StringContainsSeparatedWord(l,a+" al coda",!0)){const u=new RepetitionInstruction(o,RepetitionInstructionEnum.DalSegnoAlCoda);return this.addInstruction(this.repetitionInstructions,u),!0}const c="d\\.\\s?c\\.";if(StringUtil.StringContainsSeparatedWord(l,c+" al fine",!0)){const u=new RepetitionInstruction(o,RepetitionInstructionEnum.DaCapoAlFine);return this.addInstruction(this.repetitionInstructions,u),!0}if(StringUtil.StringContainsSeparatedWord(l,c+" al coda",!0)){const u=new RepetitionInstruction(o,RepetitionInstructionEnum.DaCapoAlCoda);return this.addInstruction(this.repetitionInstructions,u),!0}if(StringUtil.StringContainsSeparatedWord(l,c)||StringUtil.StringContainsSeparatedWord(l,"da\\s?capo",!0)){const u=new RepetitionInstruction(o,RepetitionInstructionEnum.DaCapo);return this.addInstruction(this.repetitionInstructions,u),!0}if(StringUtil.StringContainsSeparatedWord(l,a,!0)||StringUtil.StringContainsSeparatedWord(l,"dal\\s?segno",!0)){let u;return StringUtil.StringContainsSeparatedWord(l,"al\\s?coda",!0)?u=new RepetitionInstruction(o,RepetitionInstructionEnum.DalSegnoAlCoda):u=new RepetitionInstruction(o,RepetitionInstructionEnum.DalSegno),this.addInstruction(this.repetitionInstructions,u),!0}if(StringUtil.StringContainsSeparatedWord(l,"to\\s?coda",!0)||StringUtil.StringContainsSeparatedWord(l,"a (la )?coda",!0)){const u=new RepetitionInstruction(o,RepetitionInstructionEnum.ToCoda);return this.addInstruction(this.repetitionInstructions,u),!0}if(StringUtil.StringContainsSeparatedWord(l,"fine",!0)){const u=new RepetitionInstruction(o,RepetitionInstructionEnum.Fine);return this.addInstruction(this.repetitionInstructions,u),!0}if(StringUtil.StringContainsSeparatedWord(l,"coda",!0)){const u=new RepetitionInstruction(o,RepetitionInstructionEnum.Coda);return this.addInstruction(this.repetitionInstructions,u),!0}if(StringUtil.StringContainsSeparatedWord(l,"segno",!0)){const u=new RepetitionInstruction(o,RepetitionInstructionEnum.Segno);return this.addInstruction(this.repetitionInstructions,u),!0}}else if(e.element("segno")){const a=new RepetitionInstruction(o,RepetitionInstructionEnum.Segno);return this.addInstruction(this.repetitionInstructions,a),!0}else if(e.element("coda")){const a=new RepetitionInstruction(o,RepetitionInstructionEnum.Coda);return this.addInstruction(this.repetitionInstructions,a),!0}return!1}removeRedundantInstructions(){let e=0,r=0,s=0,o=0;for(let a=0;a0&&this.findInstructionInPreviousMeasure(a,l.measureIndex,RepetitionInstructionEnum.ToCoda)&&(l.type=RepetitionInstructionEnum.None),r===0&&s===0&&(l.type=RepetitionInstructionEnum.ToCoda,l.alignment=AlignmentType.End,l.measureIndex--);break;case RepetitionInstructionEnum.Segno:if(e-o>0){let c=!1;for(let u=0,m=this.repetitionInstructions.length;u0?g.type=RepetitionInstructionEnum.DalSegnoAlCoda:g.type=RepetitionInstructionEnum.DalSegno,l.type=RepetitionInstructionEnum.None,c=!0;break;case RepetitionInstructionEnum.DalSegno:case RepetitionInstructionEnum.DalSegnoAlFine:case RepetitionInstructionEnum.DalSegnoAlCoda:l.type=RepetitionInstructionEnum.None,c=!0;break}if(c)break}if(c)break;s-r>0?l.type=RepetitionInstructionEnum.DalSegnoAlCoda:l.type=RepetitionInstructionEnum.DalSegno,l.alignment=AlignmentType.End,l.measureIndex--}break}if(this.backwardSearchForPreviousIdenticalInstruction(a,l)||l.type===RepetitionInstructionEnum.None)this.repetitionInstructions.splice(a,1),a--;else switch(l.type){case RepetitionInstructionEnum.Fine:break;case RepetitionInstructionEnum.ToCoda:s++;break;case RepetitionInstructionEnum.Coda:r++;break;case RepetitionInstructionEnum.Segno:e++;break;case RepetitionInstructionEnum.DalSegnoAlFine:case RepetitionInstructionEnum.DalSegnoAlCoda:o++;break}}this.repetitionInstructions.sort(RepetitionInstructionComparer.Compare)}findInstructionInPreviousMeasure(e,r,s){for(let o=e-1;o>=0;o--){const a=this.repetitionInstructions[o];if(r-a.measureIndex===1&&a.type===s)return!0}return!1}backwardSearchForPreviousIdenticalInstruction(e,r){for(let s=e-1;s>=0;s--)if(this.repetitionInstructions[s].equals(r))return!0;return!1}addInstruction(e,r){let s=!0;for(let o=0,a=e.length;o0;)try{const u=this.openRepetitions.last();if(u.RepetitonUnderConstruction.FromWords){if(u.WaitingForCoda){let m=u.RepetitonUnderConstruction.BackwardJumpInstructions.last().measureIndex+1;m>=this.musicSheet.SourceMeasures.length&&(m=-1),u.RepetitonUnderConstruction.setEndingStartIndex(2,m)}else if(u.RepetitonUnderConstruction.BackwardJumpInstructions.length===0){this.openRepetitions.splice(this.openRepetitions.length-1,1);continue}}else if(u.RepetitonUnderConstruction.BackwardJumpInstructions.length===0){const m=o.length-1,g=new RepetitionInstruction(m,RepetitionInstructionEnum.BackJumpLine,AlignmentType.End,u.RepetitonUnderConstruction);u.RepetitonUnderConstruction.BackwardJumpInstructions.push(g),o[m].LastRepetitionInstructions.push(g)}this.finalizeRepetition(this.openRepetitions.last())}catch(u){try{const m=this.openRepetitions.last().RepetitonUnderConstruction;for(const g of this.repetitionInstructions)g.parentRepetition===m&&(g.parentRepetition=void 0);this.openRepetitions.splice(this.openRepetitions.length-1,1)}catch(m){loglevelExports.error("RepetitionCalculator: calculateRepetitions2",m)}}let a=!1;const l=0,c=this.musicSheet.SourceMeasures.length-1;for(const u of this.musicSheet.Repetitions)if(u.StartIndex===l&&u.EndIndex===c){a=!0;break}if(!a){const u=new Repetition(this.musicSheet,!0);u.FromWords=!0,u.startMarker=new RepetitionInstruction(l,RepetitionInstructionEnum.StartLine),u.startMarker.parentRepetition=u,this.musicSheet.SourceMeasures[l].FirstRepetitionInstructions.push(u.startMarker),u.endMarker=new RepetitionInstruction(c,RepetitionInstructionEnum.BackJumpLine),u.endMarker.parentRepetition=u,u.BackwardJumpInstructions.push(u.endMarker),u.UserNumberOfRepetitions=u.DefaultNumberOfRepetitions,this.musicSheet.Repetitions.push(u)}for(let u=0,m=this.musicSheet.SourceMeasures.length;u1&&g.FirstRepetitionInstructions.sort(RepetitionInstructionComparer.Compare),g.LastRepetitionInstructions.length>1&&g.LastRepetitionInstructions.sort(RepetitionInstructionComparer.Compare)}}handleRepetitionInstructions(e){var s,o,a,l,c,u,m;let r;switch(e.type){case RepetitionInstructionEnum.StartLine:r=this.createNewRepetition(this.currentMeasureIndex),e.parentRepetition=r.RepetitonUnderConstruction,r.RepetitonUnderConstruction.FromWords=!1,r.RepetitonUnderConstruction.startMarker=e,(s=this.currentMeasure)==null||s.FirstRepetitionInstructions.push(e);break;case RepetitionInstructionEnum.BackJumpLine:r=this.getOrCreateCurrentRepetition2(!1),e.parentRepetition=r.RepetitonUnderConstruction,r.RepetitonUnderConstruction.BackwardJumpInstructions.push(e),(o=this.currentMeasure)==null||o.LastRepetitionInstructions.push(e),r.RepetitonUnderConstruction.EndingParts.length===0&&this.finalizeRepetition(r);break;case RepetitionInstructionEnum.Ending:if(r=this.getOrCreateCurrentRepetition(),e.parentRepetition=r.RepetitonUnderConstruction,e.endingIndices.contains(1)&&e.alignment===AlignmentType.Begin){if(r.RepetitonUnderConstruction.BackwardJumpInstructions.length>0||r.RepetitonUnderConstruction.EndingIndexDict.hasOwnProperty(1)){r=void 0;for(let d=this.openRepetitions.length-1;d>=0;d--){const y=this.openRepetitions[d];if(y.RepetitonUnderConstruction.BackwardJumpInstructions.length===0)for(r=y;this.openRepetitions.length-1>d;){const A=this.openRepetitions.last();this.finalizeRepetition(A)}}r===void 0&&(r=this.createNewRepetition(0),r.RepetitonUnderConstruction.startMarker=new RepetitionInstruction(0,RepetitionInstructionEnum.None))}r.RepetitonUnderConstruction.forwardJumpInstruction===void 0&&(r.RepetitonUnderConstruction.forwardJumpInstruction=new RepetitionInstruction(this.currentMeasureIndex-1,RepetitionInstructionEnum.ForwardJump,AlignmentType.End,r.RepetitonUnderConstruction),this.musicSheet.SourceMeasures[this.currentMeasureIndex-1].LastRepetitionInstructions.push(r.RepetitonUnderConstruction.forwardJumpInstruction))}if(e.alignment===AlignmentType.Begin)r.RepetitonUnderConstruction.setEndingsStartIndex(e.endingIndices,this.currentMeasureIndex),(a=this.currentMeasure)==null||a.FirstRepetitionInstructions.push(e);else for(let d=0,y=e.endingIndices.length;d0&&Math.abs(r.RepetitonUnderConstruction.BackwardJumpInstructions.last().measureIndex-this.currentMeasureIndex)<=1||this.openRepetitions.length&&((m=(u=(c=this.openRepetitions)==null?void 0:c.find(d=>d.RepetitonUnderConstruction.startMarker.type===RepetitionInstructionEnum.StartLine))==null?void 0:u.RepetitonUnderConstruction)==null?void 0:m.StartIndex)===this.currentMeasureIndex)break;r=this.createNewRepetition(this.currentMeasureIndex),e.parentRepetition=r.RepetitonUnderConstruction,r.RepetitonUnderConstruction.FromWords=!0,r.SegnoFound=!0,r.RepetitonUnderConstruction.startMarker=e,this.currentMeasure.FirstRepetitionInstructions.push(e);break;case RepetitionInstructionEnum.Fine:if(this.openRepetitions.length===0||(r=this.getCurrentRepetition(!0),r===void 0))break;e.parentRepetition=r.RepetitonUnderConstruction,r.RepetitonUnderConstruction.FromWords=!0,r.RepetitonUnderConstruction.forwardJumpInstruction===void 0?(r.FineFound=!0,r.RepetitonUnderConstruction.forwardJumpInstruction=e,r.RepetitonUnderConstruction.setEndingStartIndex(2,-2),this.currentMeasure.LastRepetitionInstructions.push(e)):this.currentMeasure.LastRepetitionInstructions.push(new RepetitionInstruction(this.currentMeasureIndex,RepetitionInstructionEnum.Fine,AlignmentType.End,void 0));break;case RepetitionInstructionEnum.ToCoda:if(this.openRepetitions.length===0||(r=this.getCurrentRepetition(!0),r===void 0))break;r.RepetitonUnderConstruction.forwardJumpInstruction===void 0&&(e.parentRepetition=r.RepetitonUnderConstruction,r.RepetitonUnderConstruction.FromWords=!0,r.ToCodaFound=!0,r.RepetitonUnderConstruction.forwardJumpInstruction=e,this.currentMeasure.LastRepetitionInstructions.push(e));break;case RepetitionInstructionEnum.Coda:if(this.openRepetitions.length===0)break;r=this.getOrCreateCurrentRepetition2(!0),e.parentRepetition=r.RepetitonUnderConstruction,r.WaitingForCoda?(r.CodaFound=!0,r.RepetitonUnderConstruction.setEndingStartIndex(2,this.currentMeasureIndex),this.currentMeasure.LastRepetitionInstructions.push(e),this.finalizeRepetition(r),this.currentMeasureIndex>0&&(this.musicSheet.SourceMeasures[this.currentMeasureIndex-1].printNewSystemXml=!0)):r.ToCodaFound||(r.RepetitonUnderConstruction.BackwardJumpInstructions.length===0?(r.ToCodaFound=!0,r.RepetitonUnderConstruction.forwardJumpInstruction=new RepetitionInstruction(this.currentMeasureIndex,RepetitionInstructionEnum.ToCoda,AlignmentType.End,r.RepetitonUnderConstruction),this.currentMeasure.LastRepetitionInstructions.push(r.RepetitonUnderConstruction.forwardJumpInstruction)):this.currentMeasure.LastRepetitionInstructions.push(new RepetitionInstruction(this.currentMeasureIndex,RepetitionInstructionEnum.Coda,AlignmentType.Begin,void 0)));break;case RepetitionInstructionEnum.DaCapo:r=this.getOrCreateCurrentRepetition(),r.RepetitonUnderConstruction.BackwardJumpInstructions.length>0&&this.finalizeRepetition(r),r.RepetitonUnderConstruction.StartIndex!==0&&(r=this.createNewRepetition(0)),e.parentRepetition=r.RepetitonUnderConstruction,r.RepetitonUnderConstruction.FromWords=!0,r.RepetitonUnderConstruction.startMarker=new RepetitionInstruction(0,RepetitionInstructionEnum.None,AlignmentType.Begin,r.RepetitonUnderConstruction),r.RepetitonUnderConstruction.BackwardJumpInstructions.push(e),this.currentMeasure.LastRepetitionInstructions.push(e),r.RepetitonUnderConstruction.EndingParts.length===0&&this.finalizeRepetition(r);break;case RepetitionInstructionEnum.DalSegno:if(r=this.getOrCreateCurrentRepetition2(!0),r.RepetitonUnderConstruction.BackwardJumpInstructions.length>0&&(this.finalizeRepetition(r),r=this.createNewRepetition(0),r.RepetitonUnderConstruction.FromWords=!0,r.RepetitonUnderConstruction.startMarker=new RepetitionInstruction(0,RepetitionInstructionEnum.None,AlignmentType.Begin,r.RepetitonUnderConstruction)),e.parentRepetition=r.RepetitonUnderConstruction,!r.SegnoFound){const d=this.findInstructionInMainListBackwards(RepetitionInstructionEnum.Segno,e.measureIndex);d>=0&&(r.SegnoFound=!0,r.RepetitonUnderConstruction.startMarker=new RepetitionInstruction(d,RepetitionInstructionEnum.Segno,AlignmentType.Begin,r.RepetitonUnderConstruction),this.musicSheet.SourceMeasures[d].FirstRepetitionInstructions.splice(0,0,r.RepetitonUnderConstruction.startMarker))}r.RepetitonUnderConstruction.EndingIndexDict.hasOwnProperty(1)&&r.RepetitonUnderConstruction.setEndingEndIndex(1,this.currentMeasureIndex),r.RepetitonUnderConstruction.BackwardJumpInstructions.push(e),this.currentMeasure.LastRepetitionInstructions.push(e);break;case RepetitionInstructionEnum.DalSegnoAlFine:if(this.openRepetitions.length===0)break;if(r=this.getOrCreateCurrentRepetition2(!0),e.parentRepetition=r.RepetitonUnderConstruction,!r.SegnoFound){const d=this.findInstructionInMainListBackwards(RepetitionInstructionEnum.Segno,e.measureIndex);d>=0&&(r.SegnoFound=!0,r.RepetitonUnderConstruction.startMarker=new RepetitionInstruction(d,RepetitionInstructionEnum.Segno,AlignmentType.Begin,r.RepetitonUnderConstruction),this.musicSheet.SourceMeasures[d].FirstRepetitionInstructions.splice(0,0,r.RepetitonUnderConstruction.startMarker))}if(!r.FineFound){const d=this.findInstructionInMainListBackwards(RepetitionInstructionEnum.Fine,e.measureIndex);d>=0&&(r.FineFound=!0,r.RepetitonUnderConstruction.forwardJumpInstruction=new RepetitionInstruction(d,RepetitionInstructionEnum.Fine,AlignmentType.Begin,r.RepetitonUnderConstruction),r.RepetitonUnderConstruction.setEndingStartIndex(2,-2),this.musicSheet.SourceMeasures[d].LastRepetitionInstructions.splice(0,0,r.RepetitonUnderConstruction.forwardJumpInstruction))}r.RepetitonUnderConstruction.EndingIndexDict.hasOwnProperty(1)||r.RepetitonUnderConstruction.setEndingEndIndex(1,this.currentMeasureIndex),r.RepetitonUnderConstruction.BackwardJumpInstructions.push(e),this.currentMeasure.LastRepetitionInstructions.push(e);break;case RepetitionInstructionEnum.DaCapoAlFine:if(r=this.getOrCreateCurrentRepetition(),r.RepetitonUnderConstruction.BackwardJumpInstructions.length>0&&(this.finalizeRepetition(r),r=this.createNewRepetition(0)),r.RepetitonUnderConstruction.startMarker!==void 0&&r.RepetitonUnderConstruction.StartIndex!==0&&(r=this.createNewRepetition(0)),r.RepetitonUnderConstruction.startMarker=new RepetitionInstruction(0,RepetitionInstructionEnum.None,AlignmentType.Begin,r.RepetitonUnderConstruction),r.RepetitonUnderConstruction.FromWords=!0,e.parentRepetition=r.RepetitonUnderConstruction,!r.FineFound){const d=this.findInstructionInMainListBackwards(RepetitionInstructionEnum.Fine,e.measureIndex);d>=0&&(r.FineFound=!0,r.RepetitonUnderConstruction.forwardJumpInstruction=new RepetitionInstruction(d,RepetitionInstructionEnum.Fine,AlignmentType.Begin,r.RepetitonUnderConstruction),r.RepetitonUnderConstruction.setEndingStartIndex(2,-2),this.musicSheet.SourceMeasures[d].LastRepetitionInstructions.splice(0,0,r.RepetitonUnderConstruction.forwardJumpInstruction))}r.RepetitonUnderConstruction.EndingIndexDict.hasOwnProperty(1)||r.RepetitonUnderConstruction.setEndingEndIndex(1,this.currentMeasureIndex),r.RepetitonUnderConstruction.BackwardJumpInstructions.push(e),this.currentMeasure.LastRepetitionInstructions.push(e);break;case RepetitionInstructionEnum.DalSegnoAlCoda:if(this.openRepetitions.length===0)break;if(r=this.getOrCreateCurrentRepetition2(!0),e.parentRepetition=r.RepetitonUnderConstruction,!r.SegnoFound){const d=this.findInstructionInMainListBackwards(RepetitionInstructionEnum.Segno,e.measureIndex);d>=0&&(r.SegnoFound=!0,r.RepetitonUnderConstruction.startMarker=new RepetitionInstruction(d,RepetitionInstructionEnum.Segno,AlignmentType.Begin,r.RepetitonUnderConstruction),this.musicSheet.SourceMeasures[d].FirstRepetitionInstructions.splice(0,0,r.RepetitonUnderConstruction.startMarker))}if(!r.ToCodaFound){const d=this.findInstructionInMainListBackwards(RepetitionInstructionEnum.ToCoda,e.measureIndex);if(d>=0)r.RepetitonUnderConstruction.forwardJumpInstruction=new RepetitionInstruction(d,RepetitionInstructionEnum.ToCoda,AlignmentType.Begin,r.RepetitonUnderConstruction),this.musicSheet.SourceMeasures[d].LastRepetitionInstructions.splice(0,0,r.RepetitonUnderConstruction.forwardJumpInstruction),r.ToCodaFound=!0;else{const y=this.findInstructionInMainListBackwards(RepetitionInstructionEnum.Coda,e.measureIndex);y>=0&&(r.RepetitonUnderConstruction.forwardJumpInstruction=new RepetitionInstruction(y,RepetitionInstructionEnum.ToCoda,AlignmentType.Begin,r.RepetitonUnderConstruction),this.musicSheet.SourceMeasures[y].LastRepetitionInstructions.splice(0,0,r.RepetitonUnderConstruction.forwardJumpInstruction),r.ToCodaFound=!0)}}r.ToCodaFound&&(r.WaitingForCoda=!0),r.RepetitonUnderConstruction.EndingIndexDict.hasOwnProperty(1)||r.RepetitonUnderConstruction.setEndingEndIndex(1,this.currentMeasureIndex),r.RepetitonUnderConstruction.BackwardJumpInstructions.push(e),this.currentMeasure.LastRepetitionInstructions.push(e);break;case RepetitionInstructionEnum.DaCapoAlCoda:if(r=this.getOrCreateCurrentRepetition(),r.RepetitonUnderConstruction.BackwardJumpInstructions.length>0?(this.finalizeRepetition(r),r=this.createNewRepetition(0)):r.RepetitonUnderConstruction.EndingParts.length===0&&(this.finalizeRepetition(r),r=this.createNewRepetition(0)),r.RepetitonUnderConstruction.startMarker!==void 0&&r.RepetitonUnderConstruction.StartIndex!==0&&(r=this.createNewRepetition(0)),r.RepetitonUnderConstruction.startMarker=new RepetitionInstruction(0,RepetitionInstructionEnum.None,AlignmentType.Begin,r.RepetitonUnderConstruction),r.RepetitonUnderConstruction.FromWords=!0,e.parentRepetition=r.RepetitonUnderConstruction,!r.ToCodaFound){const d=this.findInstructionInMainListBackwards(RepetitionInstructionEnum.ToCoda,e.measureIndex);if(d>=0)r.RepetitonUnderConstruction.forwardJumpInstruction=new RepetitionInstruction(d,RepetitionInstructionEnum.ToCoda,AlignmentType.Begin,r.RepetitonUnderConstruction),this.musicSheet.SourceMeasures[d].LastRepetitionInstructions.splice(0,0,r.RepetitonUnderConstruction.forwardJumpInstruction),r.ToCodaFound=!0;else{const y=this.findInstructionInMainListBackwards(RepetitionInstructionEnum.Coda,e.measureIndex);y>=0&&(r.RepetitonUnderConstruction.forwardJumpInstruction=new RepetitionInstruction(y,RepetitionInstructionEnum.ToCoda,AlignmentType.Begin,r.RepetitonUnderConstruction),this.musicSheet.SourceMeasures[y].LastRepetitionInstructions.splice(0,0,r.RepetitonUnderConstruction.forwardJumpInstruction),r.ToCodaFound=!0)}}r.ToCodaFound&&(r.WaitingForCoda=!0),r.RepetitonUnderConstruction.EndingIndexDict.hasOwnProperty(1)||r.RepetitonUnderConstruction.setEndingEndIndex(1,this.currentMeasureIndex),r.RepetitonUnderConstruction.BackwardJumpInstructions.push(e),this.currentMeasure.LastRepetitionInstructions.push(e);break;case RepetitionInstructionEnum.None:break;default:throw new ArgumentOutOfRangeException("currentRepetitionInstruction")}return!0}findInstructionInMainListBackwards(e,r){for(let s=this.repetitionInstructions.length-1;s>=0;s--){const o=this.repetitionInstructions[s];if(o.measureIndex<=r&&o.type===e)return o.measureIndex}return-1}finalizeRepetition(e){const r=e.RepetitonUnderConstruction;if(r.BackwardJumpInstructions.length>0){let s=!0;const o=this.getLastFinalizedRepetition();if(o!==void 0&&r.coversIdenticalMeasures(o)){if(r.NumberOfEndings>o.NumberOfEndings){const a=this.musicSheet.Repetitions.indexOf(o,0);a>-1&&this.musicSheet.Repetitions.splice(a,1),o.removeFromRepetitionInstructions(),this.musicSheet.Repetitions.push(r)}s=!1,r.removeFromRepetitionInstructions()}else this.musicSheet.Repetitions.push(r);if(s){r.startMarker.type===RepetitionInstructionEnum.None&&this.musicSheet.SourceMeasures[r.StartIndex].FirstRepetitionInstructions.push(r.startMarker),console.log("设置循环次数3",window==null?void 0:window.DYCustomRepeatCount,this.rules.DYCustomRepeatCount,r.DefaultNumberOfRepetitions);const a=(window==null?void 0:window.DYCustomRepeatCount)>r.DefaultNumberOfRepetitions?window==null?void 0:window.DYCustomRepeatCount:r.DefaultNumberOfRepetitions;r.UserNumberOfRepetitions=a||this.rules.DYCustomRepeatCount||r.DefaultNumberOfRepetitions}}this.openRepetitions.splice(this.openRepetitions.length-1,1)}getCurrentRepetition(e){let r;for(let s=this.openRepetitions.length-1;s>=0;s--)if(this.openRepetitions[s].RepetitonUnderConstruction.FromWords===e){for(r=this.openRepetitions[s];s0)return this.openRepetitions.last();const e=this.createNewRepetition(0);return e.RepetitonUnderConstruction.startMarker=new RepetitionInstruction(0,RepetitionInstructionEnum.None,AlignmentType.Begin,e.RepetitonUnderConstruction),e}getOrCreateCurrentRepetition2(e){let r;if(this.openRepetitions.length&&this.openRepetitions.last().RepetitonUnderConstruction.EndingParts.length<2){for(let o=this.openRepetitions.length-1;o>=0;o--)if(r=this.openRepetitions[o],r.RepetitonUnderConstruction.FromWords===e){for(;o0){const s=this.openRepetitions.last(),o=s.RepetitonUnderConstruction;if(o.BackwardJumpInstructions.length>0){const a=Object.keys(o.EndingIndexDict);(a.length===0||o.EndingIndexDict[a[a.length-1]].part.EndIndex>=0)&&this.finalizeRepetition(s)}}const r=new RepetitionBuildingContainer(this.musicSheet);return this.lastRepetitionCommonPartStartIndex=e,this.openRepetitions.push(r),r}getLastFinalizedRepetition(){if(this.musicSheet.Repetitions.length>0)return this.musicSheet.Repetitions.last()}}class RepetitionBuildingContainer{constructor(e){this.RepetitonUnderConstruction=new Repetition(e)}}class MusicSymbolModuleFactory{static createRepetitionInstructionReader(){return new RepetitionInstructionReader}static createRepetitionCalculator(){return new RepetitionCalculator}}class ReaderPluginManager{constructor(){this.voiceMeasureReadPlugins=[]}addVoiceMeasureReadPlugin(e){this.voiceMeasureReadPlugins.push(e)}processVoiceMeasureReadPlugins(e,r,s){for(const o of this.voiceMeasureReadPlugins)try{o.measureReadCalculations(e,r,s)}catch(a){loglevelExports.info("VoiceGenerator.addSingleNote: ",a)}}}class MusicSheetReader{constructor(e=void 0,r=new EngravingRules){this.completeNumberOfStaves=0,this.pluginManager=new ReaderPluginManager,e?this.afterSheetReadingModules=e:this.afterSheetReadingModules=[],this.repetitionInstructionReader=MusicSymbolModuleFactory.createRepetitionInstructionReader(),this.repetitionCalculator=MusicSymbolModuleFactory.createRepetitionCalculator(),this.rules=r}get PluginManager(){return this.pluginManager}get CompleteNumberOfStaves(){return this.completeNumberOfStaves}static doCalculationsAfterDurationHasBeenSet(e){for(const r of e)r.doCalculationsAfterDurationHasBeenSet()}createMusicSheet(e,r){try{return this._createMusicSheet(e,r)}catch(s){loglevelExports.error("MusicSheetReader.CreateMusicSheet",s);return}}_removeFromArray(e,r){const s=e.indexOf(r);s!==-1&&e.splice(s,1)}trimString(e){return e.replace(/^\s+|\s+$/g,"")}_lastElement(e){return e[e.length-1]}_createMusicSheet(e,r){const s=[];let o=0;if(this.musicSheet=new MusicSheet,this.musicSheet.Path=r,this.musicSheet.Rules=this.rules,!e)throw new MusicSheetReadingException("Undefined root element");this.pushSheetLabels(e,r);const a=e.element("part-list");if(!a)throw new MusicSheetReadingException("Undefined partListNode");const l=e.elements("part"),c=a.elements();this.initializeReading(c,l,s);let u=!0;this.currentFraction=new Fraction$1(0,1);let m=!1,g=e.element("identification");for(g&&(g=g.element("encoding")),g&&(g=g.element("software")),g!==void 0&&g.value==="Guitar Pro 5"&&(m=!0);u;){this.currentMeasure!==void 0&&this.currentMeasure.HasEndLine&&this.rules.NewPartAndSystemAfterFinalBarline&&(o=0),this.currentMeasure=new SourceMeasure(this.completeNumberOfStaves,this.musicSheet.Rules);for(const d of s)try{u=u&&d.readNextXmlMeasure(this.currentMeasure,this.currentFraction,m)}catch(y){const A=ITextTranslation.translateText("ReaderErrorMessages/InstrumentError","Error while reading instruments.");throw new MusicSheetReadingException(A,y)}u&&(this.musicSheet.addMeasure(this.currentMeasure),this.checkIfRhythmInstructionsAreSetAndEqual(s),this.checkSourceMeasureForNullEntries(),o=this.setSourceMeasureDuration(s,o),MusicSheetReader.doCalculationsAfterDurationHasBeenSet(s),this.currentMeasure.AbsoluteTimestamp=this.currentFraction.clone(),this.musicSheet.SheetErrors.finalizeMeasure(this.currentMeasure.MeasureNumber),this.currentFraction.Add(this.currentMeasure.Duration),this.previousMeasure=this.currentMeasure)}this.repetitionInstructionReader&&(this.repetitionInstructionReader.removeRedundantInstructions(),this.repetitionCalculator&&this.repetitionCalculator.calculateRepetitions(this.musicSheet,this.repetitionInstructionReader.repetitionInstructions)),this.musicSheet.DefaultStartTempoInBpm===0&&(this.musicSheet.DefaultStartTempoInBpm=100),this.musicSheet.checkForInstrumentWithNoVoice(),this.musicSheet.fillStaffList();for(let d=0,y=this.afterSheetReadingModules.length;ds){if(this.areRhythmInstructionsMixed(r)&&c.SymbolEnum!==RhythmSymbolEnum.NONE)continue;s=c.Rhythm.RealValue,o=r.indexOf(c)}}if(r.length>0&&r.lengthe.Denominator){const s=r.Denominator/e.Denominator;e.expand(s)}}checkIfMeasureIsImplicit(e,r){return!this.previousMeasure&&e.lt(r)?!0:this.previousMeasure?Fraction$1.plus(this.previousMeasure.Duration,e).Equals(r):!1}allInstrumentsHaveSameDuration(e,r){let s=0;for(let o=0,a=e.length;o=0;e--)for(let r=this.currentMeasure.VerticalSourceStaffEntryContainers[e].StaffEntries.length-1;r>=0;r--){const s=this.currentMeasure.VerticalSourceStaffEntryContainers[e].StaffEntries[r];if(s)for(let o=s.VoiceEntries.length-1;o>=0;o--){const a=s.VoiceEntries[o];a.Notes.length===0&&(this._removeFromArray(a.ParentVoice.VoiceEntries,a),this._removeFromArray(s.VoiceEntries,a))}s!==void 0&&s.VoiceEntries.length===0&&s.ChordContainers.length===0&&(this.currentMeasure.VerticalSourceStaffEntryContainers[e].StaffEntries[r]=void 0)}for(let e=this.currentMeasure.VerticalSourceStaffEntryContainers.length-1;e>=0;e--){let r=0;for(let s=0,o=this.currentMeasure.VerticalSourceStaffEntryContainers[e].StaffEntries.length;s0){const o=r[0].elements("rights");if(o.length>0)for(let a=0,l=o.length;ar||P){if(!s&&!P)s=I;else if(x||M==="right")a?a+=` `+I:a=I;else if(E||M!=="right"&&M!=="left")o?o+=` `+I:o=I;else if(M==="left"){this.musicSheet.Lyricist||(this.musicSheet.Lyricist=new Label(I));break}}}}}}if(!this.musicSheet.Title&&s&&(this.musicSheet.Title=new Label(this.trimString(s))),!this.musicSheet.Subtitle&&o&&(this.musicSheet.Subtitle=new Label(this.trimString(o))),a){let y=!1;if(!this.musicSheet.Composer)y=!0;else{const A=((g=a.match(` `))!=null?g:[]).length+1,b=((d=this.musicSheet.Composer.text.match(` `))!=null?d:[]).length+1;A>=b&&(y=!0)}y&&(this.musicSheet.Composer=new Label(this.trimString(a)))}}readTitleAndComposerFromCreditsLegacy(e){var m,g,d;const r=this.computeSystemYCoordinates(e);if(r===0)return;let s=1,o,a=0,l,c;const u=e.elements("credit");for(let y=0,A=u.length;yr||k){if(!this.musicSheet.Title&&!k){const M=(d=S.attribute("font-size"))==null?void 0:d.value;if(M){const T=parseFloat(M);s0&&g.MidiInstrumentId!==MidiInstrument.Percussion&&(S.midiInstrumentID=Math.max(0,parseInt(P.value,10)-1));else if(P.name==="midi-unpitched")S.fixedKey=Math.max(0,parseInt(P.value,10));else if(P.name==="volume")try{const k=parseFloat(P.value);S.volume=k/127}catch(k){loglevelExports.debug("ExpressionReader.readExpressionParameters","read volume",k)}else if(P.name==="pan")try{const k=parseFloat(P.value);S.pan=k/64}catch(k){loglevelExports.debug("ExpressionReader.readExpressionParameters","read pan",k)}}catch(k){loglevelExports.info("MusicSheetReader.createInstrumentGroups midi settings: ",k)}}}}catch(S){loglevelExports.info("MusicSheetReader.createInstrumentGroups: ",S)}}if(g.SubInstruments.length===0){const y=new SubInstrument(g);g.SubInstruments.push(y)}s[m]=g,o?(o.InstrumentalGroups.push(g),this.musicSheet.Instruments.push(g)):(this.musicSheet.InstrumentalGroups.push(g),this.musicSheet.Instruments.push(g))}else if(u.name==="part-group"&&u.attribute("type").value==="start"){const m=new InstrumentalGroup("group",this.musicSheet,o);o?o.InstrumentalGroups.push(m):this.musicSheet.InstrumentalGroups.push(m),o=m}else if(u.name==="part-group"&&u.attribute("type").value==="stop"&&o){if(o.InstrumentalGroups.length===1){const m=o.InstrumentalGroups[0];o.Parent?(o.Parent.InstrumentalGroups.push(m),this._removeFromArray(o.Parent.InstrumentalGroups,o)):(this.musicSheet.InstrumentalGroups.push(m),this._removeFromArray(this.musicSheet.InstrumentalGroups,o))}o=o.Parent}}}catch(a){const l=ITextTranslation.translateText("ReaderErrorMessages/InstrumentError","Error while reading Instruments");throw new MusicSheetReadingException(l,a)}for(let a=0,l=this.musicSheet.Instruments.length;a0){const a=o[0];if(a){let l=a.element("attributes");l&&(l=l.element("staves")),l?r+=parseInt(l.value,10):r++}}}if(isNaN(r)||r<=0){const s=ITextTranslation.translateText("ReaderErrorMessages/StaffError","Invalid number of staves.");throw new MusicSheetReadingException(s)}return r}getInstrumentNumberOfStavesFromXml(e){let r=0;const s=e.element("measure");if(s){const o=s.element("attributes");let a;o&&(a=o.element("staves")),!o||!a?r=1:r=parseInt(a.value,10)}if(isNaN(r)||r<=0){const o=ITextTranslation.translateText("ReaderErrorMessages/StaffError","Invalid number of Staves.");throw new MusicSheetReadingException(o)}return r}}function commonjsRequire(i){throw new Error('Could not dynamically require "'+i+'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')}var jszip_minExports={},jszip_min={get exports(){return jszip_minExports},set exports(i){jszip_minExports=i}};/*! JSZip v3.10.1 - A JavaScript class for generating and reading zip files (c) 2009-2016 Stuart Knightley Dual licenced under the MIT license or GPLv3. See https://raw.github.com/Stuk/jszip/main/LICENSE.markdown. JSZip uses the library pako released under the MIT license : https://github.com/nodeca/pako/blob/main/LICENSE */(function(i,e){(function(r){i.exports=r()})(function(){return function r(s,o,a){function l(m,g){if(!o[m]){if(!s[m]){var d=typeof commonjsRequire=="function"&&commonjsRequire;if(!g&&d)return d(m,!0);if(c)return c(m,!0);var y=new Error("Cannot find module '"+m+"'");throw y.code="MODULE_NOT_FOUND",y}var A=o[m]={exports:{}};s[m][0].call(A.exports,function(b){var S=s[m][1][b];return l(S||b)},A,A.exports,r,s,o,a)}return o[m].exports}for(var c=typeof commonjsRequire=="function"&&commonjsRequire,u=0;u>2,A=(3&m)<<4|g>>4,b=1>6:64,S=2>4,g=(15&y)<<4|(A=c.indexOf(u.charAt(S++)))>>2,d=(3&A)<<6|(b=c.indexOf(u.charAt(S++))),C[E++]=m,A!==64&&(C[E++]=g),b!==64&&(C[E++]=d);return C}},{"./support":30,"./utils":32}],2:[function(r,s,o){var a=r("./external"),l=r("./stream/DataWorker"),c=r("./stream/Crc32Probe"),u=r("./stream/DataLengthProbe");function m(g,d,y,A,b){this.compressedSize=g,this.uncompressedSize=d,this.crc32=y,this.compression=A,this.compressedContent=b}m.prototype={getContentWorker:function(){var g=new l(a.Promise.resolve(this.compressedContent)).pipe(this.compression.uncompressWorker()).pipe(new u("data_length")),d=this;return g.on("end",function(){if(this.streamInfo.data_length!==d.uncompressedSize)throw new Error("Bug : uncompressed data size mismatch")}),g},getCompressedWorker:function(){return new l(a.Promise.resolve(this.compressedContent)).withStreamInfo("compressedSize",this.compressedSize).withStreamInfo("uncompressedSize",this.uncompressedSize).withStreamInfo("crc32",this.crc32).withStreamInfo("compression",this.compression)}},m.createWorkerFrom=function(g,d,y){return g.pipe(new c).pipe(new u("uncompressedSize")).pipe(d.compressWorker(y)).pipe(new u("compressedSize")).withStreamInfo("compression",d)},s.exports=m},{"./external":6,"./stream/Crc32Probe":25,"./stream/DataLengthProbe":26,"./stream/DataWorker":27}],3:[function(r,s,o){var a=r("./stream/GenericWorker");o.STORE={magic:"\0\0",compressWorker:function(){return new a("STORE compression")},uncompressWorker:function(){return new a("STORE decompression")}},o.DEFLATE=r("./flate")},{"./flate":7,"./stream/GenericWorker":28}],4:[function(r,s,o){var a=r("./utils"),l=function(){for(var c,u=[],m=0;m<256;m++){c=m;for(var g=0;g<8;g++)c=1&c?3988292384^c>>>1:c>>>1;u[m]=c}return u}();s.exports=function(c,u){return c!==void 0&&c.length?a.getTypeOf(c)!=="string"?function(m,g,d,y){var A=l,b=y+d;m^=-1;for(var S=y;S>>8^A[255&(m^g[S])];return-1^m}(0|u,c,c.length,0):function(m,g,d,y){var A=l,b=y+d;m^=-1;for(var S=y;S>>8^A[255&(m^g.charCodeAt(S))];return-1^m}(0|u,c,c.length,0):0}},{"./utils":32}],5:[function(r,s,o){o.base64=!1,o.binary=!1,o.dir=!1,o.createFolders=!0,o.date=null,o.compression=null,o.compressionOptions=null,o.comment=null,o.unixPermissions=null,o.dosPermissions=null},{}],6:[function(r,s,o){var a=null;a=typeof Promise<"u"?Promise:r("lie"),s.exports={Promise:a}},{lie:37}],7:[function(r,s,o){var a=typeof Uint8Array<"u"&&typeof Uint16Array<"u"&&typeof Uint32Array<"u",l=r("pako"),c=r("./utils"),u=r("./stream/GenericWorker"),m=a?"uint8array":"array";function g(d,y){u.call(this,"FlateWorker/"+d),this._pako=null,this._pakoAction=d,this._pakoOptions=y,this.meta={}}o.magic="\b\0",c.inherits(g,u),g.prototype.processChunk=function(d){this.meta=d.meta,this._pako===null&&this._createPako(),this._pako.push(c.transformTo(m,d.data),!1)},g.prototype.flush=function(){u.prototype.flush.call(this),this._pako===null&&this._createPako(),this._pako.push([],!0)},g.prototype.cleanUp=function(){u.prototype.cleanUp.call(this),this._pako=null},g.prototype._createPako=function(){this._pako=new l[this._pakoAction]({raw:!0,level:this._pakoOptions.level||-1});var d=this;this._pako.onData=function(y){d.push({data:y,meta:d.meta})}},o.compressWorker=function(d){return new g("Deflate",d)},o.uncompressWorker=function(){return new g("Inflate",{})}},{"./stream/GenericWorker":28,"./utils":32,pako:38}],8:[function(r,s,o){function a(A,b){var S,E="";for(S=0;S>>=8;return E}function l(A,b,S,E,x,C){var P,k,I=A.file,M=A.compression,T=C!==m.utf8encode,F=c.transformTo("string",C(I.name)),D=c.transformTo("string",m.utf8encode(I.name)),N=I.comment,O=c.transformTo("string",C(N)),B=c.transformTo("string",m.utf8encode(N)),V=D.length!==I.name.length,R=B.length!==N.length,Q="",_="",K="",G=I.dir,U=I.date,$={crc32:0,compressedSize:0,uncompressedSize:0};b&&!S||($.crc32=A.crc32,$.compressedSize=A.compressedSize,$.uncompressedSize=A.uncompressedSize);var q=0;b&&(q|=8),T||!V&&!R||(q|=2048);var W=0,xe=0;G&&(W|=16),x==="UNIX"?(xe=798,W|=function(Y,J){var ce=Y;return Y||(ce=J?16893:33204),(65535&ce)<<16}(I.unixPermissions,G)):(xe=20,W|=function(Y){return 63&(Y||0)}(I.dosPermissions)),P=U.getUTCHours(),P<<=6,P|=U.getUTCMinutes(),P<<=5,P|=U.getUTCSeconds()/2,k=U.getUTCFullYear()-1980,k<<=4,k|=U.getUTCMonth()+1,k<<=5,k|=U.getUTCDate(),V&&(_=a(1,1)+a(g(F),4)+D,Q+="up"+a(_.length,2)+_),R&&(K=a(1,1)+a(g(O),4)+B,Q+="uc"+a(K.length,2)+K);var ue="";return ue+=` \0`,ue+=a(q,2),ue+=M.magic,ue+=a(P,2),ue+=a(k,2),ue+=a($.crc32,4),ue+=a($.compressedSize,4),ue+=a($.uncompressedSize,4),ue+=a(F.length,2),ue+=a(Q.length,2),{fileRecord:d.LOCAL_FILE_HEADER+ue+F+Q,dirRecord:d.CENTRAL_FILE_HEADER+a(xe,2)+ue+a(O.length,2)+"\0\0\0\0"+a(W,4)+a(E,4)+F+Q+O}}var c=r("../utils"),u=r("../stream/GenericWorker"),m=r("../utf8"),g=r("../crc32"),d=r("../signature");function y(A,b,S,E){u.call(this,"ZipFileWorker"),this.bytesWritten=0,this.zipComment=b,this.zipPlatform=S,this.encodeFileName=E,this.streamFiles=A,this.accumulate=!1,this.contentBuffer=[],this.dirRecords=[],this.currentSourceOffset=0,this.entriesCount=0,this.currentFile=null,this._sources=[]}c.inherits(y,u),y.prototype.push=function(A){var b=A.meta.percent||0,S=this.entriesCount,E=this._sources.length;this.accumulate?this.contentBuffer.push(A):(this.bytesWritten+=A.data.length,u.prototype.push.call(this,{data:A.data,meta:{currentFile:this.currentFile,percent:S?(b+100*(S-E-1))/S:100}}))},y.prototype.openedSource=function(A){this.currentSourceOffset=this.bytesWritten,this.currentFile=A.file.name;var b=this.streamFiles&&!A.file.dir;if(b){var S=l(A,b,!1,this.currentSourceOffset,this.zipPlatform,this.encodeFileName);this.push({data:S.fileRecord,meta:{percent:0}})}else this.accumulate=!0},y.prototype.closedSource=function(A){this.accumulate=!1;var b=this.streamFiles&&!A.file.dir,S=l(A,b,!0,this.currentSourceOffset,this.zipPlatform,this.encodeFileName);if(this.dirRecords.push(S.dirRecord),b)this.push({data:function(E){return d.DATA_DESCRIPTOR+a(E.crc32,4)+a(E.compressedSize,4)+a(E.uncompressedSize,4)}(A),meta:{percent:100}});else for(this.push({data:S.fileRecord,meta:{percent:0}});this.contentBuffer.length;)this.push(this.contentBuffer.shift());this.currentFile=null},y.prototype.flush=function(){for(var A=this.bytesWritten,b=0;b=this.index;u--)m=(m<<8)+this.byteAt(u);return this.index+=c,m},readString:function(c){return a.transformTo("string",this.readData(c))},readData:function(){},lastIndexOfSignature:function(){},readAndCheckSignature:function(){},readDate:function(){var c=this.readInt(4);return new Date(Date.UTC(1980+(c>>25&127),(c>>21&15)-1,c>>16&31,c>>11&31,c>>5&63,(31&c)<<1))}},s.exports=l},{"../utils":32}],19:[function(r,s,o){var a=r("./Uint8ArrayReader");function l(c){a.call(this,c)}r("../utils").inherits(l,a),l.prototype.readData=function(c){this.checkOffset(c);var u=this.data.slice(this.zero+this.index,this.zero+this.index+c);return this.index+=c,u},s.exports=l},{"../utils":32,"./Uint8ArrayReader":21}],20:[function(r,s,o){var a=r("./DataReader");function l(c){a.call(this,c)}r("../utils").inherits(l,a),l.prototype.byteAt=function(c){return this.data.charCodeAt(this.zero+c)},l.prototype.lastIndexOfSignature=function(c){return this.data.lastIndexOf(c)-this.zero},l.prototype.readAndCheckSignature=function(c){return c===this.readData(4)},l.prototype.readData=function(c){this.checkOffset(c);var u=this.data.slice(this.zero+this.index,this.zero+this.index+c);return this.index+=c,u},s.exports=l},{"../utils":32,"./DataReader":18}],21:[function(r,s,o){var a=r("./ArrayReader");function l(c){a.call(this,c)}r("../utils").inherits(l,a),l.prototype.readData=function(c){if(this.checkOffset(c),c===0)return new Uint8Array(0);var u=this.data.subarray(this.zero+this.index,this.zero+this.index+c);return this.index+=c,u},s.exports=l},{"../utils":32,"./ArrayReader":17}],22:[function(r,s,o){var a=r("../utils"),l=r("../support"),c=r("./ArrayReader"),u=r("./StringReader"),m=r("./NodeBufferReader"),g=r("./Uint8ArrayReader");s.exports=function(d){var y=a.getTypeOf(d);return a.checkSupport(y),y!=="string"||l.uint8array?y==="nodebuffer"?new m(d):l.uint8array?new g(a.transformTo("uint8array",d)):new c(a.transformTo("array",d)):new u(d)}},{"../support":30,"../utils":32,"./ArrayReader":17,"./NodeBufferReader":19,"./StringReader":20,"./Uint8ArrayReader":21}],23:[function(r,s,o){o.LOCAL_FILE_HEADER="PK",o.CENTRAL_FILE_HEADER="PK",o.CENTRAL_DIRECTORY_END="PK",o.ZIP64_CENTRAL_DIRECTORY_LOCATOR="PK\x07",o.ZIP64_CENTRAL_DIRECTORY_END="PK",o.DATA_DESCRIPTOR="PK\x07\b"},{}],24:[function(r,s,o){var a=r("./GenericWorker"),l=r("../utils");function c(u){a.call(this,"ConvertWorker to "+u),this.destType=u}l.inherits(c,a),c.prototype.processChunk=function(u){this.push({data:l.transformTo(this.destType,u.data),meta:u.meta})},s.exports=c},{"../utils":32,"./GenericWorker":28}],25:[function(r,s,o){var a=r("./GenericWorker"),l=r("../crc32");function c(){a.call(this,"Crc32Probe"),this.withStreamInfo("crc32",0)}r("../utils").inherits(c,a),c.prototype.processChunk=function(u){this.streamInfo.crc32=l(u.data,this.streamInfo.crc32||0),this.push(u)},s.exports=c},{"../crc32":4,"../utils":32,"./GenericWorker":28}],26:[function(r,s,o){var a=r("../utils"),l=r("./GenericWorker");function c(u){l.call(this,"DataLengthProbe for "+u),this.propName=u,this.withStreamInfo(u,0)}a.inherits(c,l),c.prototype.processChunk=function(u){if(u){var m=this.streamInfo[this.propName]||0;this.streamInfo[this.propName]=m+u.data.length}l.prototype.processChunk.call(this,u)},s.exports=c},{"../utils":32,"./GenericWorker":28}],27:[function(r,s,o){var a=r("../utils"),l=r("./GenericWorker");function c(u){l.call(this,"DataWorker");var m=this;this.dataIsReady=!1,this.index=0,this.max=0,this.data=null,this.type="",this._tickScheduled=!1,u.then(function(g){m.dataIsReady=!0,m.data=g,m.max=g&&g.length||0,m.type=a.getTypeOf(g),m.isPaused||m._tickAndRepeat()},function(g){m.error(g)})}a.inherits(c,l),c.prototype.cleanUp=function(){l.prototype.cleanUp.call(this),this.data=null},c.prototype.resume=function(){return!!l.prototype.resume.call(this)&&(!this._tickScheduled&&this.dataIsReady&&(this._tickScheduled=!0,a.delay(this._tickAndRepeat,[],this)),!0)},c.prototype._tickAndRepeat=function(){this._tickScheduled=!1,this.isPaused||this.isFinished||(this._tick(),this.isFinished||(a.delay(this._tickAndRepeat,[],this),this._tickScheduled=!0))},c.prototype._tick=function(){if(this.isPaused||this.isFinished)return!1;var u=null,m=Math.min(this.max,this.index+16384);if(this.index>=this.max)return this.end();switch(this.type){case"string":u=this.data.substring(this.index,m);break;case"uint8array":u=this.data.subarray(this.index,m);break;case"array":case"nodebuffer":u=this.data.slice(this.index,m)}return this.index=m,this.push({data:u,meta:{percent:this.max?this.index/this.max*100:0}})},s.exports=c},{"../utils":32,"./GenericWorker":28}],28:[function(r,s,o){function a(l){this.name=l||"default",this.streamInfo={},this.generatedError=null,this.extraStreamInfo={},this.isPaused=!0,this.isFinished=!1,this.isLocked=!1,this._listeners={data:[],end:[],error:[]},this.previous=null}a.prototype={push:function(l){this.emit("data",l)},end:function(){if(this.isFinished)return!1;this.flush();try{this.emit("end"),this.cleanUp(),this.isFinished=!0}catch(l){this.emit("error",l)}return!0},error:function(l){return!this.isFinished&&(this.isPaused?this.generatedError=l:(this.isFinished=!0,this.emit("error",l),this.previous&&this.previous.error(l),this.cleanUp()),!0)},on:function(l,c){return this._listeners[l].push(c),this},cleanUp:function(){this.streamInfo=this.generatedError=this.extraStreamInfo=null,this._listeners=[]},emit:function(l,c){if(this._listeners[l])for(var u=0;u "+l:l}},s.exports=a},{}],29:[function(r,s,o){var a=r("../utils"),l=r("./ConvertWorker"),c=r("./GenericWorker"),u=r("../base64"),m=r("../support"),g=r("../external"),d=null;if(m.nodestream)try{d=r("../nodejs/NodejsStreamOutputAdapter")}catch(b){}function y(b,S){return new g.Promise(function(E,x){var C=[],P=b._internalType,k=b._outputType,I=b._mimeType;b.on("data",function(M,T){C.push(M),S&&S(T)}).on("error",function(M){C=[],x(M)}).on("end",function(){try{var M=function(T,F,D){switch(T){case"blob":return a.newBlob(a.transformTo("arraybuffer",F),D);case"base64":return u.encode(F);default:return a.transformTo(T,F)}}(k,function(T,F){var D,N=0,O=null,B=0;for(D=0;D"u")o.blob=!1;else{var a=new ArrayBuffer(0);try{o.blob=new Blob([a],{type:"application/zip"}).size===0}catch(c){try{var l=new(self.BlobBuilder||self.WebKitBlobBuilder||self.MozBlobBuilder||self.MSBlobBuilder);l.append(a),o.blob=l.getBlob("application/zip").size===0}catch(u){o.blob=!1}}}try{o.nodestream=!!r("readable-stream").Readable}catch(c){o.nodestream=!1}},{"readable-stream":16}],31:[function(r,s,o){for(var a=r("./utils"),l=r("./support"),c=r("./nodejsUtils"),u=r("./stream/GenericWorker"),m=new Array(256),g=0;g<256;g++)m[g]=252<=g?6:248<=g?5:240<=g?4:224<=g?3:192<=g?2:1;m[254]=m[254]=1;function d(){u.call(this,"utf-8 decode"),this.leftOver=null}function y(){u.call(this,"utf-8 encode")}o.utf8encode=function(A){return l.nodebuffer?c.newBufferFrom(A,"utf-8"):function(b){var S,E,x,C,P,k=b.length,I=0;for(C=0;C>>6:(E<65536?S[P++]=224|E>>>12:(S[P++]=240|E>>>18,S[P++]=128|E>>>12&63),S[P++]=128|E>>>6&63),S[P++]=128|63&E);return S}(A)},o.utf8decode=function(A){return l.nodebuffer?a.transformTo("nodebuffer",A).toString("utf-8"):function(b){var S,E,x,C,P=b.length,k=new Array(2*P);for(S=E=0;S>10&1023,k[E++]=56320|1023&x)}return k.length!==E&&(k.subarray?k=k.subarray(0,E):k.length=E),a.applyFromCharCode(k)}(A=a.transformTo(l.uint8array?"uint8array":"array",A))},a.inherits(d,u),d.prototype.processChunk=function(A){var b=a.transformTo(l.uint8array?"uint8array":"array",A.data);if(this.leftOver&&this.leftOver.length){if(l.uint8array){var S=b;(b=new Uint8Array(S.length+this.leftOver.length)).set(this.leftOver,0),b.set(S,this.leftOver.length)}else b=this.leftOver.concat(b);this.leftOver=null}var E=function(C,P){var k;for((P=P||C.length)>C.length&&(P=C.length),k=P-1;0<=k&&(192&C[k])==128;)k--;return k<0||k===0?P:k+m[C[k]]>P?k:P}(b),x=b;E!==b.length&&(l.uint8array?(x=b.subarray(0,E),this.leftOver=b.subarray(E,b.length)):(x=b.slice(0,E),this.leftOver=b.slice(E,b.length))),this.push({data:o.utf8decode(x),meta:A.meta})},d.prototype.flush=function(){this.leftOver&&this.leftOver.length&&(this.push({data:o.utf8decode(this.leftOver),meta:{}}),this.leftOver=null)},o.Utf8DecodeWorker=d,a.inherits(y,u),y.prototype.processChunk=function(A){this.push({data:o.utf8encode(A.data),meta:A.meta})},o.Utf8EncodeWorker=y},{"./nodejsUtils":14,"./stream/GenericWorker":28,"./support":30,"./utils":32}],32:[function(r,s,o){var a=r("./support"),l=r("./base64"),c=r("./nodejsUtils"),u=r("./external");function m(S){return S}function g(S,E){for(var x=0;x>8;this.dir=!!(16&this.externalFileAttributes),A==0&&(this.dosPermissions=63&this.externalFileAttributes),A==3&&(this.unixPermissions=this.externalFileAttributes>>16&65535),this.dir||this.fileNameStr.slice(-1)!=="/"||(this.dir=!0)},parseZIP64ExtraField:function(){if(this.extraFields[1]){var A=a(this.extraFields[1].value);this.uncompressedSize===l.MAX_VALUE_32BITS&&(this.uncompressedSize=A.readInt(8)),this.compressedSize===l.MAX_VALUE_32BITS&&(this.compressedSize=A.readInt(8)),this.localHeaderOffset===l.MAX_VALUE_32BITS&&(this.localHeaderOffset=A.readInt(8)),this.diskNumberStart===l.MAX_VALUE_32BITS&&(this.diskNumberStart=A.readInt(4))}},readExtraFields:function(A){var b,S,E,x=A.index+this.extraFieldsLength;for(this.extraFields||(this.extraFields={});A.index+4>>6:(A<65536?y[E++]=224|A>>>12:(y[E++]=240|A>>>18,y[E++]=128|A>>>12&63),y[E++]=128|A>>>6&63),y[E++]=128|63&A);return y},o.buf2binstring=function(d){return g(d,d.length)},o.binstring2buf=function(d){for(var y=new a.Buf8(d.length),A=0,b=y.length;A>10&1023,C[b++]=56320|1023&S)}return g(C,b)},o.utf8border=function(d,y){var A;for((y=y||d.length)>d.length&&(y=d.length),A=y-1;0<=A&&(192&d[A])==128;)A--;return A<0||A===0?y:A+u[d[A]]>y?A:y}},{"./common":41}],43:[function(r,s,o){s.exports=function(a,l,c,u){for(var m=65535&a|0,g=a>>>16&65535|0,d=0;c!==0;){for(c-=d=2e3>>1:l>>>1;c[u]=l}return c}();s.exports=function(l,c,u,m){var g=a,d=m+u;l^=-1;for(var y=m;y>>8^g[255&(l^c[y])];return-1^l}},{}],46:[function(r,s,o){var a,l=r("../utils/common"),c=r("./trees"),u=r("./adler32"),m=r("./crc32"),g=r("./messages"),d=0,y=4,A=0,b=-2,S=-1,E=4,x=2,C=8,P=9,k=286,I=30,M=19,T=2*k+1,F=15,D=3,N=258,O=N+D+1,B=42,V=113,R=1,Q=2,_=3,K=4;function G(H,ve){return H.msg=g[ve],ve}function U(H){return(H<<1)-(4H.avail_out&&(pe=H.avail_out),pe!==0&&(l.arraySet(H.output,ve.pending_buf,ve.pending_out,pe,H.next_out),H.next_out+=pe,ve.pending_out+=pe,H.total_out+=pe,H.avail_out-=pe,ve.pending-=pe,ve.pending===0&&(ve.pending_out=0))}function W(H,ve){c._tr_flush_block(H,0<=H.block_start?H.block_start:-1,H.strstart-H.block_start,ve),H.block_start=H.strstart,q(H.strm)}function xe(H,ve){H.pending_buf[H.pending++]=ve}function ue(H,ve){H.pending_buf[H.pending++]=ve>>>8&255,H.pending_buf[H.pending++]=255&ve}function Y(H,ve){var pe,ee,ne=H.max_chain_length,me=H.strstart,Be=H.prev_length,oe=H.nice_match,Ae=H.strstart>H.w_size-O?H.strstart-(H.w_size-O):0,Me=H.window,Le=H.w_mask,Ce=H.prev,he=H.strstart+N,Pe=Me[me+Be-1],ye=Me[me+Be];H.prev_length>=H.good_match&&(ne>>=2),oe>H.lookahead&&(oe=H.lookahead);do if(Me[(pe=ve)+Be]===ye&&Me[pe+Be-1]===Pe&&Me[pe]===Me[me]&&Me[++pe]===Me[me+1]){me+=2,pe++;do;while(Me[++me]===Me[++pe]&&Me[++me]===Me[++pe]&&Me[++me]===Me[++pe]&&Me[++me]===Me[++pe]&&Me[++me]===Me[++pe]&&Me[++me]===Me[++pe]&&Me[++me]===Me[++pe]&&Me[++me]===Me[++pe]&&meAe&&--ne!=0);return Be<=H.lookahead?Be:H.lookahead}function J(H){var ve,pe,ee,ne,me,Be,oe,Ae,Me,Le,Ce=H.w_size;do{if(ne=H.window_size-H.lookahead-H.strstart,H.strstart>=Ce+(Ce-O)){for(l.arraySet(H.window,H.window,Ce,Ce,0),H.match_start-=Ce,H.strstart-=Ce,H.block_start-=Ce,ve=pe=H.hash_size;ee=H.head[--ve],H.head[ve]=Ce<=ee?ee-Ce:0,--pe;);for(ve=pe=Ce;ee=H.prev[--ve],H.prev[ve]=Ce<=ee?ee-Ce:0,--pe;);ne+=Ce}if(H.strm.avail_in===0)break;if(Be=H.strm,oe=H.window,Ae=H.strstart+H.lookahead,Me=ne,Le=void 0,Le=Be.avail_in,Me=D)for(me=H.strstart-H.insert,H.ins_h=H.window[me],H.ins_h=(H.ins_h<=D&&(H.ins_h=(H.ins_h<=D)if(ee=c._tr_tally(H,H.strstart-H.match_start,H.match_length-D),H.lookahead-=H.match_length,H.match_length<=H.max_lazy_match&&H.lookahead>=D){for(H.match_length--;H.strstart++,H.ins_h=(H.ins_h<=D&&(H.ins_h=(H.ins_h<=D&&H.match_length<=H.prev_length){for(ne=H.strstart+H.lookahead-D,ee=c._tr_tally(H,H.strstart-1-H.prev_match,H.prev_length-D),H.lookahead-=H.prev_length-1,H.prev_length-=2;++H.strstart<=ne&&(H.ins_h=(H.ins_h<H.pending_buf_size-5&&(pe=H.pending_buf_size-5);;){if(H.lookahead<=1){if(J(H),H.lookahead===0&&ve===d)return R;if(H.lookahead===0)break}H.strstart+=H.lookahead,H.lookahead=0;var ee=H.block_start+pe;if((H.strstart===0||H.strstart>=ee)&&(H.lookahead=H.strstart-ee,H.strstart=ee,W(H,!1),H.strm.avail_out===0)||H.strstart-H.block_start>=H.w_size-O&&(W(H,!1),H.strm.avail_out===0))return R}return H.insert=0,ve===y?(W(H,!0),H.strm.avail_out===0?_:K):(H.strstart>H.block_start&&(W(H,!1),H.strm.avail_out),R)}),new Ee(4,4,8,4,ce),new Ee(4,5,16,8,ce),new Ee(4,6,32,32,ce),new Ee(4,4,16,16,ge),new Ee(8,16,32,32,ge),new Ee(8,16,128,128,ge),new Ee(8,32,128,256,ge),new Ee(32,128,258,1024,ge),new Ee(32,258,258,4096,ge)],o.deflateInit=function(H,ve){return ae(H,ve,C,15,8,0)},o.deflateInit2=ae,o.deflateReset=ie,o.deflateResetKeep=De,o.deflateSetHeader=function(H,ve){return H&&H.state?H.state.wrap!==2?b:(H.state.gzhead=ve,A):b},o.deflate=function(H,ve){var pe,ee,ne,me;if(!H||!H.state||5>8&255),xe(ee,ee.gzhead.time>>16&255),xe(ee,ee.gzhead.time>>24&255),xe(ee,ee.level===9?2:2<=ee.strategy||ee.level<2?4:0),xe(ee,255&ee.gzhead.os),ee.gzhead.extra&&ee.gzhead.extra.length&&(xe(ee,255&ee.gzhead.extra.length),xe(ee,ee.gzhead.extra.length>>8&255)),ee.gzhead.hcrc&&(H.adler=m(H.adler,ee.pending_buf,ee.pending,0)),ee.gzindex=0,ee.status=69):(xe(ee,0),xe(ee,0),xe(ee,0),xe(ee,0),xe(ee,0),xe(ee,ee.level===9?2:2<=ee.strategy||ee.level<2?4:0),xe(ee,3),ee.status=V);else{var Be=C+(ee.w_bits-8<<4)<<8;Be|=(2<=ee.strategy||ee.level<2?0:ee.level<6?1:ee.level===6?2:3)<<6,ee.strstart!==0&&(Be|=32),Be+=31-Be%31,ee.status=V,ue(ee,Be),ee.strstart!==0&&(ue(ee,H.adler>>>16),ue(ee,65535&H.adler)),H.adler=1}if(ee.status===69)if(ee.gzhead.extra){for(ne=ee.pending;ee.gzindex<(65535&ee.gzhead.extra.length)&&(ee.pending!==ee.pending_buf_size||(ee.gzhead.hcrc&&ee.pending>ne&&(H.adler=m(H.adler,ee.pending_buf,ee.pending-ne,ne)),q(H),ne=ee.pending,ee.pending!==ee.pending_buf_size));)xe(ee,255&ee.gzhead.extra[ee.gzindex]),ee.gzindex++;ee.gzhead.hcrc&&ee.pending>ne&&(H.adler=m(H.adler,ee.pending_buf,ee.pending-ne,ne)),ee.gzindex===ee.gzhead.extra.length&&(ee.gzindex=0,ee.status=73)}else ee.status=73;if(ee.status===73)if(ee.gzhead.name){ne=ee.pending;do{if(ee.pending===ee.pending_buf_size&&(ee.gzhead.hcrc&&ee.pending>ne&&(H.adler=m(H.adler,ee.pending_buf,ee.pending-ne,ne)),q(H),ne=ee.pending,ee.pending===ee.pending_buf_size)){me=1;break}me=ee.gzindexne&&(H.adler=m(H.adler,ee.pending_buf,ee.pending-ne,ne)),me===0&&(ee.gzindex=0,ee.status=91)}else ee.status=91;if(ee.status===91)if(ee.gzhead.comment){ne=ee.pending;do{if(ee.pending===ee.pending_buf_size&&(ee.gzhead.hcrc&&ee.pending>ne&&(H.adler=m(H.adler,ee.pending_buf,ee.pending-ne,ne)),q(H),ne=ee.pending,ee.pending===ee.pending_buf_size)){me=1;break}me=ee.gzindexne&&(H.adler=m(H.adler,ee.pending_buf,ee.pending-ne,ne)),me===0&&(ee.status=103)}else ee.status=103;if(ee.status===103&&(ee.gzhead.hcrc?(ee.pending+2>ee.pending_buf_size&&q(H),ee.pending+2<=ee.pending_buf_size&&(xe(ee,255&H.adler),xe(ee,H.adler>>8&255),H.adler=0,ee.status=V)):ee.status=V),ee.pending!==0){if(q(H),H.avail_out===0)return ee.last_flush=-1,A}else if(H.avail_in===0&&U(ve)<=U(pe)&&ve!==y)return G(H,-5);if(ee.status===666&&H.avail_in!==0)return G(H,-5);if(H.avail_in!==0||ee.lookahead!==0||ve!==d&&ee.status!==666){var oe=ee.strategy===2?function(Ae,Me){for(var Le;;){if(Ae.lookahead===0&&(J(Ae),Ae.lookahead===0)){if(Me===d)return R;break}if(Ae.match_length=0,Le=c._tr_tally(Ae,0,Ae.window[Ae.strstart]),Ae.lookahead--,Ae.strstart++,Le&&(W(Ae,!1),Ae.strm.avail_out===0))return R}return Ae.insert=0,Me===y?(W(Ae,!0),Ae.strm.avail_out===0?_:K):Ae.last_lit&&(W(Ae,!1),Ae.strm.avail_out===0)?R:Q}(ee,ve):ee.strategy===3?function(Ae,Me){for(var Le,Ce,he,Pe,ye=Ae.window;;){if(Ae.lookahead<=N){if(J(Ae),Ae.lookahead<=N&&Me===d)return R;if(Ae.lookahead===0)break}if(Ae.match_length=0,Ae.lookahead>=D&&0Ae.lookahead&&(Ae.match_length=Ae.lookahead)}if(Ae.match_length>=D?(Le=c._tr_tally(Ae,1,Ae.match_length-D),Ae.lookahead-=Ae.match_length,Ae.strstart+=Ae.match_length,Ae.match_length=0):(Le=c._tr_tally(Ae,0,Ae.window[Ae.strstart]),Ae.lookahead--,Ae.strstart++),Le&&(W(Ae,!1),Ae.strm.avail_out===0))return R}return Ae.insert=0,Me===y?(W(Ae,!0),Ae.strm.avail_out===0?_:K):Ae.last_lit&&(W(Ae,!1),Ae.strm.avail_out===0)?R:Q}(ee,ve):a[ee.level].func(ee,ve);if(oe!==_&&oe!==K||(ee.status=666),oe===R||oe===_)return H.avail_out===0&&(ee.last_flush=-1),A;if(oe===Q&&(ve===1?c._tr_align(ee):ve!==5&&(c._tr_stored_block(ee,0,0,!1),ve===3&&($(ee.head),ee.lookahead===0&&(ee.strstart=0,ee.block_start=0,ee.insert=0))),q(H),H.avail_out===0))return ee.last_flush=-1,A}return ve!==y?A:ee.wrap<=0?1:(ee.wrap===2?(xe(ee,255&H.adler),xe(ee,H.adler>>8&255),xe(ee,H.adler>>16&255),xe(ee,H.adler>>24&255),xe(ee,255&H.total_in),xe(ee,H.total_in>>8&255),xe(ee,H.total_in>>16&255),xe(ee,H.total_in>>24&255)):(ue(ee,H.adler>>>16),ue(ee,65535&H.adler)),q(H),0=pe.w_size&&(me===0&&($(pe.head),pe.strstart=0,pe.block_start=0,pe.insert=0),Me=new l.Buf8(pe.w_size),l.arraySet(Me,ve,Le-pe.w_size,pe.w_size,0),ve=Me,Le=pe.w_size),Be=H.avail_in,oe=H.next_in,Ae=H.input,H.avail_in=Le,H.next_in=0,H.input=ve,J(pe);pe.lookahead>=D;){for(ee=pe.strstart,ne=pe.lookahead-(D-1);pe.ins_h=(pe.ins_h<>>=D=F>>>24,P-=D,(D=F>>>16&255)===0)Q[g++]=65535&F;else{if(!(16&D)){if(!(64&D)){F=k[(65535&F)+(C&(1<>>=D,P-=D),P<15&&(C+=R[u++]<>>=D=F>>>24,P-=D,!(16&(D=F>>>16&255))){if(!(64&D)){F=I[(65535&F)+(C&(1<>>=D,P-=D,(D=g-d)>3,C&=(1<<(P-=N<<3))-1,a.next_in=u,a.next_out=g,a.avail_in=u>>24&255)+(B>>>8&65280)+((65280&B)<<8)+((255&B)<<24)}function C(){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 a.Buf16(320),this.work=new a.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function P(B){var V;return B&&B.state?(V=B.state,B.total_in=B.total_out=V.total=0,B.msg="",V.wrap&&(B.adler=1&V.wrap),V.mode=b,V.last=0,V.havedict=0,V.dmax=32768,V.head=null,V.hold=0,V.bits=0,V.lencode=V.lendyn=new a.Buf32(S),V.distcode=V.distdyn=new a.Buf32(E),V.sane=1,V.back=-1,y):A}function k(B){var V;return B&&B.state?((V=B.state).wsize=0,V.whave=0,V.wnext=0,P(B)):A}function I(B,V){var R,Q;return B&&B.state?(Q=B.state,V<0?(R=0,V=-V):(R=1+(V>>4),V<48&&(V&=15)),V&&(V<8||15=K.wsize?(a.arraySet(K.window,V,R-K.wsize,K.wsize,0),K.wnext=0,K.whave=K.wsize):(Q<(_=K.wsize-K.wnext)&&(_=Q),a.arraySet(K.window,V,R-Q,_,K.wnext),(Q-=_)?(a.arraySet(K.window,V,R-Q,Q,0),K.wnext=Q,K.whave=K.wsize):(K.wnext+=_,K.wnext===K.wsize&&(K.wnext=0),K.whave>>8&255,R.check=c(R.check,me,2,0),W=q=0,R.mode=2;break}if(R.flags=0,R.head&&(R.head.done=!1),!(1&R.wrap)||(((255&q)<<8)+(q>>8))%31){B.msg="incorrect header check",R.mode=30;break}if((15&q)!=8){B.msg="unknown compression method",R.mode=30;break}if(W-=4,H=8+(15&(q>>>=4)),R.wbits===0)R.wbits=H;else if(H>R.wbits){B.msg="invalid window size",R.mode=30;break}R.dmax=1<>8&1),512&R.flags&&(me[0]=255&q,me[1]=q>>>8&255,R.check=c(R.check,me,2,0)),W=q=0,R.mode=3;case 3:for(;W<32;){if(U===0)break e;U--,q+=Q[K++]<>>8&255,me[2]=q>>>16&255,me[3]=q>>>24&255,R.check=c(R.check,me,4,0)),W=q=0,R.mode=4;case 4:for(;W<16;){if(U===0)break e;U--,q+=Q[K++]<>8),512&R.flags&&(me[0]=255&q,me[1]=q>>>8&255,R.check=c(R.check,me,2,0)),W=q=0,R.mode=5;case 5:if(1024&R.flags){for(;W<16;){if(U===0)break e;U--,q+=Q[K++]<>>8&255,R.check=c(R.check,me,2,0)),W=q=0}else R.head&&(R.head.extra=null);R.mode=6;case 6:if(1024&R.flags&&(U<(Y=R.length)&&(Y=U),Y&&(R.head&&(H=R.head.extra_len-R.length,R.head.extra||(R.head.extra=new Array(R.head.extra_len)),a.arraySet(R.head.extra,Q,K,Y,H)),512&R.flags&&(R.check=c(R.check,Q,Y,K)),U-=Y,K+=Y,R.length-=Y),R.length))break e;R.length=0,R.mode=7;case 7:if(2048&R.flags){if(U===0)break e;for(Y=0;H=Q[K+Y++],R.head&&H&&R.length<65536&&(R.head.name+=String.fromCharCode(H)),H&&Y>9&1,R.head.done=!0),B.adler=R.check=0,R.mode=12;break;case 10:for(;W<32;){if(U===0)break e;U--,q+=Q[K++]<>>=7&W,W-=7&W,R.mode=27;break}for(;W<3;){if(U===0)break e;U--,q+=Q[K++]<>>=1)){case 0:R.mode=14;break;case 1:if(N(R),R.mode=20,V!==6)break;q>>>=2,W-=2;break e;case 2:R.mode=17;break;case 3:B.msg="invalid block type",R.mode=30}q>>>=2,W-=2;break;case 14:for(q>>>=7&W,W-=7&W;W<32;){if(U===0)break e;U--,q+=Q[K++]<>>16^65535)){B.msg="invalid stored block lengths",R.mode=30;break}if(R.length=65535&q,W=q=0,R.mode=15,V===6)break e;case 15:R.mode=16;case 16:if(Y=R.length){if(U>>=5,W-=5,R.ndist=1+(31&q),q>>>=5,W-=5,R.ncode=4+(15&q),q>>>=4,W-=4,286>>=3,W-=3}for(;R.have<19;)R.lens[Be[R.have++]]=0;if(R.lencode=R.lendyn,R.lenbits=7,pe={bits:R.lenbits},ve=m(0,R.lens,0,19,R.lencode,0,R.work,pe),R.lenbits=pe.bits,ve){B.msg="invalid code lengths set",R.mode=30;break}R.have=0,R.mode=19;case 19:for(;R.have>>16&255,Ie=65535&ne,!((ge=ne>>>24)<=W);){if(U===0)break e;U--,q+=Q[K++]<>>=ge,W-=ge,R.lens[R.have++]=Ie;else{if(Ie===16){for(ee=ge+2;W>>=ge,W-=ge,R.have===0){B.msg="invalid bit length repeat",R.mode=30;break}H=R.lens[R.have-1],Y=3+(3&q),q>>>=2,W-=2}else if(Ie===17){for(ee=ge+3;W>>=ge)),q>>>=3,W-=3}else{for(ee=ge+7;W>>=ge)),q>>>=7,W-=7}if(R.have+Y>R.nlen+R.ndist){B.msg="invalid bit length repeat",R.mode=30;break}for(;Y--;)R.lens[R.have++]=H}}if(R.mode===30)break;if(R.lens[256]===0){B.msg="invalid code -- missing end-of-block",R.mode=30;break}if(R.lenbits=9,pe={bits:R.lenbits},ve=m(g,R.lens,0,R.nlen,R.lencode,0,R.work,pe),R.lenbits=pe.bits,ve){B.msg="invalid literal/lengths set",R.mode=30;break}if(R.distbits=6,R.distcode=R.distdyn,pe={bits:R.distbits},ve=m(d,R.lens,R.nlen,R.ndist,R.distcode,0,R.work,pe),R.distbits=pe.bits,ve){B.msg="invalid distances set",R.mode=30;break}if(R.mode=20,V===6)break e;case 20:R.mode=21;case 21:if(6<=U&&258<=$){B.next_out=G,B.avail_out=$,B.next_in=K,B.avail_in=U,R.hold=q,R.bits=W,u(B,ue),G=B.next_out,_=B.output,$=B.avail_out,K=B.next_in,Q=B.input,U=B.avail_in,q=R.hold,W=R.bits,R.mode===12&&(R.back=-1);break}for(R.back=0;Ee=(ne=R.lencode[q&(1<>>16&255,Ie=65535&ne,!((ge=ne>>>24)<=W);){if(U===0)break e;U--,q+=Q[K++]<>De)])>>>16&255,Ie=65535&ne,!(De+(ge=ne>>>24)<=W);){if(U===0)break e;U--,q+=Q[K++]<>>=De,W-=De,R.back+=De}if(q>>>=ge,W-=ge,R.back+=ge,R.length=Ie,Ee===0){R.mode=26;break}if(32&Ee){R.back=-1,R.mode=12;break}if(64&Ee){B.msg="invalid literal/length code",R.mode=30;break}R.extra=15&Ee,R.mode=22;case 22:if(R.extra){for(ee=R.extra;W>>=R.extra,W-=R.extra,R.back+=R.extra}R.was=R.length,R.mode=23;case 23:for(;Ee=(ne=R.distcode[q&(1<>>16&255,Ie=65535&ne,!((ge=ne>>>24)<=W);){if(U===0)break e;U--,q+=Q[K++]<>De)])>>>16&255,Ie=65535&ne,!(De+(ge=ne>>>24)<=W);){if(U===0)break e;U--,q+=Q[K++]<>>=De,W-=De,R.back+=De}if(q>>>=ge,W-=ge,R.back+=ge,64&Ee){B.msg="invalid distance code",R.mode=30;break}R.offset=Ie,R.extra=15&Ee,R.mode=24;case 24:if(R.extra){for(ee=R.extra;W>>=R.extra,W-=R.extra,R.back+=R.extra}if(R.offset>R.dmax){B.msg="invalid distance too far back",R.mode=30;break}R.mode=25;case 25:if($===0)break e;if(Y=ue-$,R.offset>Y){if((Y=R.offset-Y)>R.whave&&R.sane){B.msg="invalid distance too far back",R.mode=30;break}J=Y>R.wnext?(Y-=R.wnext,R.wsize-Y):R.wnext-Y,Y>R.length&&(Y=R.length),ce=R.window}else ce=_,J=G-R.offset,Y=R.length;for($T?(D=J[ce+E[V]],W[xe+E[V]]):(D=96,0),C=1<>G)+(P-=C)]=F<<24|D<<16|N|0,P!==0;);for(C=1<>=1;if(C!==0?(q&=C-1,q+=C):q=0,V++,--ue[B]==0){if(B===Q)break;B=d[y+E[V]]}if(_>>7)]}function xe(ne,me){ne.pending_buf[ne.pending++]=255&me,ne.pending_buf[ne.pending++]=me>>>8&255}function ue(ne,me,Be){ne.bi_valid>x-Be?(ne.bi_buf|=me<>x-ne.bi_valid,ne.bi_valid+=Be-x):(ne.bi_buf|=me<>>=1,Be<<=1,0<--me;);return Be>>>1}function ce(ne,me,Be){var oe,Ae,Me=new Array(E+1),Le=0;for(oe=1;oe<=E;oe++)Me[oe]=Le=Le+Be[oe-1]<<1;for(Ae=0;Ae<=me;Ae++){var Ce=ne[2*Ae+1];Ce!==0&&(ne[2*Ae]=J(Me[Ce]++,Ce))}}function ge(ne){var me;for(me=0;me>1;1<=Be;Be--)De(ne,Me,Be);for(Ae=he;Be=ne.heap[1],ne.heap[1]=ne.heap[ne.heap_len--],De(ne,Me,1),oe=ne.heap[1],ne.heap[--ne.heap_max]=Be,ne.heap[--ne.heap_max]=oe,Me[2*Ae]=Me[2*Be]+Me[2*oe],ne.depth[Ae]=(ne.depth[Be]>=ne.depth[oe]?ne.depth[Be]:ne.depth[oe])+1,Me[2*Be+1]=Me[2*oe+1]=Ae,ne.heap[1]=Ae++,De(ne,Me,1),2<=ne.heap_len;);ne.heap[--ne.heap_max]=ne.heap[1],function(ye,Ve){var Ue,je,_e,Ke,tt,$e,ot=Ve.dyn_tree,yt=Ve.max_code,ct=Ve.stat_desc.static_tree,dt=Ve.stat_desc.has_stree,Pt=Ve.stat_desc.extra_bits,ht=Ve.stat_desc.extra_base,pt=Ve.stat_desc.max_length,Ct=0;for(Ke=0;Ke<=E;Ke++)ye.bl_count[Ke]=0;for(ot[2*ye.heap[ye.heap_max]+1]=0,Ue=ye.heap_max+1;Ue>=7;Ae>>=1)if(1&Pe&&Ce.dyn_ltree[2*he]!==0)return l;if(Ce.dyn_ltree[18]!==0||Ce.dyn_ltree[20]!==0||Ce.dyn_ltree[26]!==0)return c;for(he=32;he>>3,(Me=ne.static_len+3+7>>>3)<=Ae&&(Ae=Me)):Ae=Me=Be+5,Be+4<=Ae&&me!==-1?ee(ne,me,Be,oe):ne.strategy===4||Me===Ae?(ue(ne,2+(oe?1:0),3),ie(ne,O,B)):(ue(ne,4+(oe?1:0),3),function(Ce,he,Pe,ye){var Ve;for(ue(Ce,he-257,5),ue(Ce,Pe-1,5),ue(Ce,ye-4,4),Ve=0;Ve>>8&255,ne.pending_buf[ne.d_buf+2*ne.last_lit+1]=255&me,ne.pending_buf[ne.l_buf+ne.last_lit]=255&Be,ne.last_lit++,me===0?ne.dyn_ltree[2*Be]++:(ne.matches++,me--,ne.dyn_ltree[2*(R[Be]+d+1)]++,ne.dyn_dtree[2*W(me)]++),ne.last_lit===ne.lit_bufsize-1},o._tr_align=function(ne){ue(ne,2,3),Y(ne,P,O),function(me){me.bi_valid===16?(xe(me,me.bi_buf),me.bi_buf=0,me.bi_valid=0):8<=me.bi_valid&&(me.pending_buf[me.pending++]=255&me.bi_buf,me.bi_buf>>=8,me.bi_valid-=8)}(ne)}},{"../utils/common":41}],53:[function(r,s,o){s.exports=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}},{}],54:[function(r,s,o){(function(a){(function(l,c){if(!l.setImmediate){var u,m,g,d,y=1,A={},b=!1,S=l.document,E=Object.getPrototypeOf&&Object.getPrototypeOf(l);E=E&&E.setTimeout?E:l,u={}.toString.call(l.process)==="[object process]"?function(k){process.nextTick(function(){C(k)})}:function(){if(l.postMessage&&!l.importScripts){var k=!0,I=l.onmessage;return l.onmessage=function(){k=!1},l.postMessage("","*"),l.onmessage=I,k}}()?(d="setImmediate$"+Math.random()+"$",l.addEventListener?l.addEventListener("message",P,!1):l.attachEvent("onmessage",P),function(k){l.postMessage(d+k,"*")}):l.MessageChannel?((g=new MessageChannel).port1.onmessage=function(k){C(k.data)},function(k){g.port2.postMessage(k)}):S&&"onreadystatechange"in S.createElement("script")?(m=S.documentElement,function(k){var I=S.createElement("script");I.onreadystatechange=function(){C(k),I.onreadystatechange=null,m.removeChild(I),I=null},m.appendChild(I)}):function(k){setTimeout(C,0,k)},E.setImmediate=function(k){typeof k!="function"&&(k=new Function(""+k));for(var I=new Array(arguments.length-1),M=0;M"u"?a===void 0?this:a:self)}).call(this,typeof commonjsGlobal<"u"?commonjsGlobal:typeof self<"u"?self:typeof window<"u"?window:{})},{}]},{},[10])(10)})})(jszip_min);class MXLHelper{static MXLtoIXmlElement(e){const r=new jszip_minExports;return r.loadAsync(e).then(a=>r.file("META-INF/container.xml").async("text"),a=>{throw a}).then(a=>{const u=new DOMParser().parseFromString(a,"text/xml").getElementsByTagName("rootfile")[0].getAttribute("full-path");return r.file(u).async("text")},a=>{throw a}).then(a=>{const c=new DOMParser().parseFromString(a,"text/xml"),u=new IXmlElement(c.documentElement);return Promise.resolve(u)},a=>{throw a}).then(a=>a,a=>{throw new Error("extractSheetFromMxl: "+a.message)})}static MXLtoXMLstring(e){const r=new jszip_minExports;return r.loadAsync(e).then(s=>r.file("META-INF/container.xml").async("text"),s=>{throw loglevelExports.error(s),s}).then(s=>{const l=new DOMParser().parseFromString(s,"text/xml").getElementsByTagName("rootfile")[0].getAttribute("full-path");return r.file(l).async("text")},s=>{throw s})}}class PlaybackNoteGenerator{calculate(e){const r=new MusicPartManagerIterator(e);for(;!r.EndReached;){const s=r.CurrentEnrolledTimestamp,o=r.CurrentAudibleVoiceEntries();for(const a of o)this.handleVoiceEntry(e,a,s);r.moveToNext()}}handleVoiceEntry(e,r,s){if(r.IsGrace)return;const o=r.ParentVoice;let a;e.PlaybackDataDict.containsKey(o)?a=e.PlaybackDataDict.getValue(o):(a=[],e.PlaybackDataDict.setValue(o,a));for(const l of r.PlaybackEntries)if(l.HasNotes){for(const u of l.Notes)u.setLength();const c=Fraction$1.plus(s,l.TimestampShift);PlaybackNoteGenerator.addEntrySorted(a,l,c)}}static addEntrySorted(e,r,s){if(e.length===0)e.push({enrolledTimestamp:s,playbackEntry:r});else for(let o=e.length-1;o>=0;o--){const a=e[o];if(s.RealValue>a.enrolledTimestamp.RealValue)if(o===e.length-1){e.push({enrolledTimestamp:s,playbackEntry:r});break}else{e.splice(o+1,0,{enrolledTimestamp:s,playbackEntry:r});break}}}}class ScreenViewingRegion{constructor(e,r,s,o){this.psi=new BoundingBox$1(void 0),this.displaySizeInPixel=e,this.RelativeDisplaySize=r,this.RelativeDisplayPosition=s,this.WidthInUnits=o}static createWithRelativeDefaults(e,r){return new ScreenViewingRegion(e,new SizeF2D(1,1),new PointF2D(0,0),r)}static createWithDefaults(){return new ScreenViewingRegion(new SizeF2D(1,1),new SizeF2D(1,1),new PointF2D(0,0),1)}get UpperLeftPositionInUnits(){return this.psi.AbsolutePosition}set UpperLeftPositionInUnits(e){this.psi.AbsolutePosition=e}get DisplaySizeInPixel(){return this.displaySizeInPixel}set DisplaySizeInPixel(e){this.displaySizeInPixel=e,this.regionSizeInPixel=new SizeF2D(this.displaySizeInPixel.width*this.relativeRegionSize.width,this.displaySizeInPixel.height*this.relativeRegionSize.height),this.recalculateDependentVariables()}get RelativeDisplaySize(){return this.relativeRegionSize}set RelativeDisplaySize(e){this.relativeRegionSize=e,this.regionSizeInPixel=new SizeF2D(this.displaySizeInPixel.width*this.relativeRegionSize.width,this.displaySizeInPixel.height*this.relativeRegionSize.height),this.recalculateDependentVariables()}get RegionSizeInPixel(){return this.regionSizeInPixel}get WidthInUnits(){return this.psi.BorderRight}set WidthInUnits(e){this.psi.BorderRight=e,this.recalculateDependentVariables()}get ViewRegionInUnits(){return new SizeF2D(this.psi.BorderRight,this.psi.BorderBottom)}isVisible(e,r){const s=this.psi.collisionDetection(e);return this.psi.liesInsideBorders(e),s}isInsideDisplayArea(e,r){return this.RelativeDisplayPosition.x<=e&&e<=this.RelativeDisplayPosition.x+this.RelativeDisplaySize.width&&this.RelativeDisplayPosition.y<=r&&r<=this.RelativeDisplayPosition.y+this.RelativeDisplaySize.height}transformToUnitCoordinates(e){return new PointF2D(this.UpperLeftPositionInUnits.x+this.ViewRegionInUnits.width*((e.x-this.RelativeDisplayPosition.x)/this.RelativeDisplaySize.width),this.UpperLeftPositionInUnits.y+this.ViewRegionInUnits.height*((e.y-this.RelativeDisplayPosition.y)/this.RelativeDisplaySize.height))}transformLengthXToUnitCoordinates(e){return e/this.horizontalUnitToPixelRatio}transformLengthYToUnitCoordinates(e){return e/this.verticalUnitToPixelRatio}recalculateDependentVariables(){const e=this.regionSizeInPixel.width/this.regionSizeInPixel.height;this.psi.BorderBottom=this.psi.BorderRight/e,this.horizontalUnitToPixelRatio=this.regionSizeInPixel.width/this.ViewRegionInUnits.width,this.verticalUnitToPixelRatio=this.regionSizeInPixel.height/this.ViewRegionInUnits.height}}class AbstractZoomView{constructor(e){this.aspectRatio=1,this.zoomViews=[],this.mouseZoomMode=!1,this.autoScrollY=!0,this.displayInteractionManager=e,this.displayInteractionManager.addListener(this),this.offsetXMin=Number.MIN_VALUE,this.offsetYMin=Number.MIN_VALUE,this.rangeXMin=1,this.rangeYMin=1,this.offsetXMax=Number.MAX_VALUE,this.offsetYMax=Number.MAX_VALUE,this.rangeXMax=1e9,this.rangeYMax=1e9,this.XScrollingEnabled=!1,this.YScrollingEnabled=!0}positionTouched(e,r){if(!this.convertToUnitsReady())return;const s=this.getPositionInUnits(e,r);this.unitPosTouched(s,e,r)}get TouchActive(){return this.displayInteractionManager.TouchActive}get TouchMoving(){return this.displayInteractionManager.TouchMoving}positionDoubleTouched(e,r){if(!this.convertToUnitsReady())return;const s=this.getPositionInUnits(e,r);this.unitPosDoubleTouched(s,e,r)}get UsesManuallyControlledZoomMode(){return this.usesManuallyControlledZoomMode}set UsesManuallyControlledZoomMode(e){this.usesManuallyControlledZoomMode=e}mouseDown(e,r,s=!1){if(!this.convertToUnitsReady())return;this.selectScrollControllerY(!1),this.lastRangeX=Math.max(1,this.RangeX),this.lastRangeY=Math.max(1,this.RangeY),this.lastOffsetX=this.OffsetX,this.lastOffsetY=this.OffsetY;const o=this.getPositionInUnits(e,r);this.unitPosTouchDown(o,e,r),this.usesManuallyControlledZoomMode||(s?this.mouseZoomMode=!0:this.mouseZoomMode=!1)}mouseUp(e,r){const s=this.getPositionInUnits(e,r);this.unitPosTouchUp(s,e,r)}mouseMove(e,r,s,o){this.mouseZoomMode?(Math.abs(s-0)>1e-8&&(this.RangeX=Math.abs(this.lastRangeX/(1+s))),!this.lockRanges&&Math.abs(o-0)>1e-8&&(this.RangeY=Math.abs(this.lastRangeY/(1-o)))):(Math.abs(s-0)>1e-8&&(this.OffsetX=this.lastOffsetX-s*this.RangeX),Math.abs(o-0)>1e-8&&(this.OffsetY=this.lastOffsetY-o*this.RangeY));const a=this.getPositionInUnits(e,r);this.unitPosMove(a,e,r)}zoom(e){this.RangeX=Math.abs(this.lastRangeX/e)}addZoomView(e){this.zoomViews.push(e)}get OffsetX(){return this.offsetX}set OffsetX(e){this.offsetX=Math.min(this.offsetXMax,Math.max(this.offsetXMin,e));for(const r of this.zoomViews)r.viewportXChanged(this.offsetX,this.RangeX)}get OffsetY(){return this.offsetY}set OffsetY(e){this.offsetY=e,this.offsetY>this.offsetYMax?this.offsetY=this.offsetYMax:this.offsetY(i[i.SingleTouch=0]="SingleTouch",i[i.DoubleTouch=1]="DoubleTouch",i[i.TouchUp=2]="TouchUp",i[i.TouchDown=3]="TouchDown",i[i.Move=4]="Move",i))(InteractionType||{});class VoiceEntryInteractionListener{constructor(e){this.renderingManager=e}userDisplayInteraction(e,r,s){var o,a;switch(s){case InteractionType.TouchDown:case InteractionType.SingleTouch:case InteractionType.DoubleTouch:{const l=this.renderingManager.GraphicalMusicSheet.GetNearestVoiceEntry(r);if(l&&l.parentStaffEntry.parentVerticalContainer!==void 0){const c=l.parentStaffEntry.parentVerticalContainer.AbsoluteTimestamp;this.renderingManager.setStartPosition(c),((o=l.notes[0])==null?void 0:o.sourceNote.Pitch)!==void 0&&((a=this.renderingManager.PlaybackManager)==null||a.playVoiceEntry(l.parentVoiceEntry))}break}}}}class SheetRenderingManager extends AbstractZoomView{constructor(e,r){super(e),this.mainViewingRegion=ScreenViewingRegion.createWithDefaults(),this.tryAgainToRenderCount=0,this.yOffsetMouseDown=Number.MIN_VALUE,this.unlockCursorDistancePixel=50,this.relativeTopPosition=.06,this.internalPreviewImageScale=3,this.listeners=[],this.LockDisplayToCursor=!0,this.ZoomActive=!1,this.rules=r,this.addZoomView(this),this.lockRanges=!0,this.TopBarHeightInPixel=70,this.BottomBarHeightInPixel=0,this.rules.UseDefaultVoiceInteractionListener&&this.listeners.push(new VoiceEntryInteractionListener(this))}addListener(e){this.listeners.push(e)}get Listeners(){return this.listeners}convertToUnitsReady(){return this.graphicalMusicSheet!==void 0}unitPosTouched(e,r,s){if(!this.SingleTouchDisabled){const o=new PointF2D(r,s);this.handleUserDisplayInteraction(o,e,InteractionType.SingleTouch)}}unitPosDoubleTouched(e,r,s){if(!this.DoubleTouchDisabled){const o=new PointF2D(r,s);this.handleUserDisplayInteraction(o,e,InteractionType.DoubleTouch)}}unitPosTouchDown(e,r,s){const o=new PointF2D(r,s);this.handleUserDisplayInteraction(o,e,InteractionType.TouchDown),this.yOffsetMouseDown=e.y}unitPosTouchUp(e,r,s){const o=new PointF2D(r,s);this.handleUserDisplayInteraction(o,e,InteractionType.TouchUp),this.displayInteractionManager.WasZoomGestureActive===!1&&this.unlockFromCursorIfNecessary(e),this.yOffsetMouseDown=Number.MIN_VALUE}unitPosMove(e,r,s){const o=new PointF2D(r,s);this.handleUserDisplayInteraction(o,e,InteractionType.Move),this.unlockFromCursorIfNecessary(e)}get MainViewingRegion(){return this.mainViewingRegion}setMusicSheet(e){this.graphicalMusicSheet=e,this.adaptDisplayLimitsToSheet(),this.setYOffset(0,!0)}viewportXChanged(e,r){this.graphicalMusicSheet!==void 0&&this.horizontalViewportChanged(e,r)}viewportYChanged(e,r){this.graphicalMusicSheet!==void 0&&(this.yOffsetMouseDown<=Number.MIN_VALUE+.5&&(this.yOffsetMouseDown=e),this.verticalViewportChanged(e,r))}displaySizeChanged(e,r){super.viewSizeChanged(e,r),!(Math.abs(e-0)<1e-7||Math.abs(r-0)<1e-7)&&(this.graphicalMusicSheet!==void 0&&this.graphicalMusicSheet.EnforceRedrawOfMusicSystems(),this.mainViewingRegion.DisplaySizeInPixel=new SizeF2D(e,r),this.adaptDisplayLimitsToSheet())}calcDisplayYPosition(e){return e.PositionAndShape.AbsolutePosition.y+e.PositionAndShape.BorderMarginTop-this.topBarHeightInUnits()-this.relativeTopPosition*this.heightWithoutTopBottomBarsInUnits()}yPositionForLastSystem(e){return e.PositionAndShape.AbsolutePosition.y+e.PositionAndShape.BorderMarginBottom-this.topBarHeightInUnits()-(1-this.relativeTopPosition)*this.heightWithoutTopBottomBarsInUnits()}scorePositionChanged(e,r,s,o,a,l){const c=this.calcDisplayYPosition(o);this.setYPosition(c,l)}setXPosition(e,r){this.LockDisplayToCursor&&this.setXOffset(e,r)}setYPosition(e,r){this.LockDisplayToCursor&&this.setYOffset(e,r)}get DrawingParameters(){return this.musicSheetDrawer.drawingParameters}topBarHeightInUnits(){return this.mainViewingRegion.transformLengthYToUnitCoordinates(this.TopBarHeightInPixel)}bottomBarHeightInUnits(){return this.mainViewingRegion.transformLengthYToUnitCoordinates(this.BottomBarHeightInPixel)}heightWithoutTopBottomBarsInUnits(){return this.mainViewingRegion.ViewRegionInUnits.height-this.topBarHeightInUnits()-this.bottomBarHeightInUnits()}activePositionToBottomBarHeight(){return(this.mainViewingRegion.ViewRegionInUnits.height-this.topBarHeightInUnits()-this.bottomBarHeightInUnits())*(1-2*this.relativeTopPosition)}getClickPosition(e,r){return this.mainViewingRegion.transformToUnitCoordinates(new PointF2D(e,r))}graphicalObjectIsVisible(e){return this.mainViewingRegion.isVisible(e,!1)}adaptDisplayLimitsToSheet(){if(this.graphicalMusicSheet===void 0||this.graphicalMusicSheet.MusicPages.length===0||this.graphicalMusicSheet.MusicPages[0].MusicSystems.length===0)return;this.offsetXMin=0,this.rangeXMin=this.graphicalMusicSheet.MinAllowedSystemWidth,this.rangeXMax=300,this.offsetYMin=-.3*this.RangeY;const e=this.graphicalMusicSheet.MusicPages.last().PositionAndShape;this.offsetYMax=Math.max(0,e.BorderMarginBottom-.7*this.RangeY),this.OffsetY>this.offsetYMax&&this.setYOffset(this.offsetYMax,!0)}horizontalViewportChanged(e,r){this.mainViewingRegion.WidthInUnits!==r&&(this.mainViewingRegion.WidthInUnits=r)}verticalViewportChanged(e,r){this.mainViewingRegion.UpperLeftPositionInUnits=new PointF2D(this.mainViewingRegion.UpperLeftPositionInUnits.x,e)}unlockFromCursorIfNecessary(e){if(this.LockDisplayToCursor===!1||this.ZoomActive||this.displayInteractionManager.ZoomGestureActive||this.displayInteractionManager.WasZoomGestureActive)return;Math.abs((e.y-this.yOffsetMouseDown)*this.mainViewingRegion.RegionSizeInPixel.height/this.mainViewingRegion.ViewRegionInUnits.height)>this.unlockCursorDistancePixel&&(this.LockDisplayToCursor=!1)}getPositionInUnits(e,r){return this.mainViewingRegion.transformToUnitCoordinates(new PointF2D(e,r))}handleUserDisplayInteraction(e,r,s){switch(s){case InteractionType.TouchDown:case InteractionType.SingleTouch:case InteractionType.DoubleTouch:case InteractionType.TouchUp:case InteractionType.TouchDown:case InteractionType.Move:for(const o of this.listeners)o.userDisplayInteraction(e,r,s);break;default:throw new Error("type")}}setStartPosition(e){var r;this.graphicalMusicSheet!==void 0&&(this.graphicalMusicSheet.ParentMusicSheet.SelectionStart=e,(r=this.PlaybackManager)==null||r.reset())}get GraphicalMusicSheet(){return this.graphicalMusicSheet}}class WebSheetRenderingManager extends SheetRenderingManager{mouseMove(e,r,s,o){const a=this.getPositionInUnits(e,r);this.unitPosMove(a,e,r)}}class AbstractDisplayInteractionManager{constructor(){this.listeners=[],this.zoomGestureActive=!1,this.touchCount=0,this.touchActive=!1,this.touchMoving=!1,this.displayWidth=1,this.displayHeight=1,this.displayDpi=96,this.maxNumerOfFingers=2,this.movementThreshInch=.075,this.interactionWasZoomGesture=!1}addListener(e){this.listeners.push(e)}get ZoomGestureActive(){return this.zoomGestureActive}get WasZoomGestureActive(){return this.interactionWasZoomGesture}displaySizeChanged(e,r){this.displayWidth=e,this.displayHeight=r;for(const s of this.listeners)s.displaySizeChanged(this.displayWidth,this.displayHeight)}Dispose(){this.dispose()}Initialize(){this.initialize()}get DisplayDpi(){return this.displayDpi}get TouchActive(){return this.touchActive}get TouchMoving(){return this.touchMoving}touchDown(e,r,s){this.interactionWasZoomGesture=!1;const o=e/this.displayWidth,a=r/this.displayHeight;this.lastRelPosX=o,this.lastRelPosY=a,this.lastPixelX=e,this.lastPixelY=r,this.touchActive=!0,this.touchMoving=!1,this.touchCount=Math.min(this.touchCount+1,this.maxNumerOfFingers);for(const l of this.listeners)l.mouseDown(o,a,!s)}move(e,r){if(this.touchActive&&!this.zoomGestureActive){const s=e/this.displayWidth,o=r/this.displayHeight,a=s-this.lastRelPosX,l=o-this.lastRelPosY;this.touchMoving=!0;for(const c of this.listeners)c.mouseMove(s,o,a,l)}}zoomGestureStarted(){this.zoomGestureActive=!0}zoomGestureCompleted(){this.zoomGestureActive=!1,this.interactionWasZoomGesture=!0}zoomGestureMove(e){this.zoomGestureActive&&this.listeners.forEach(function(r){r.zoom(e)})}touchUp(e,r){this.touchActive=!1,this.touchMoving=!1,this.touchCount=Math.max(0,this.touchCount-1);const s=e/this.displayWidth,o=r/this.displayHeight;for(const a of this.listeners)a.mouseUp(s,o)}click(e,r){if(!this.mouseDidMove(this.lastPixelX,e,this.lastPixelY,r)&&!this.ZoomGestureActive){const s=e/this.displayWidth,o=r/this.displayHeight;for(const a of this.listeners)a.positionTouched(s,o)}}doubleClick(e,r){if(!this.mouseDidMove(this.lastPixelX,e,this.lastPixelY,r)&&!this.ZoomGestureActive){const s=e/this.displayWidth,o=r/this.displayHeight;for(const a of this.listeners)a.positionDoubleTouched(s,o)}}mouseDidMove(e,r,s,o){const a=Math.abs(e-r)/this.displayDpi,l=Math.abs(s-o)/this.displayDpi;return a>this.movementThreshInch||l>this.movementThreshInch}}class WebDisplayInteractionManager extends AbstractDisplayInteractionManager{constructor(e){super(),this.fullOffsetLeft=0,this.fullOffsetTop=0,this.fullScrollTop=0,this.fullScrollLeft=0,this.parentScrollMap=new Map,this.scrollCallbackMap=new Map,this.timeout=void 0,this.resizeObserver=void 0,this.EventCallbackMap=new Dictionary,this.DOUBLE_CLICK_WINDOW=200,this.lastClick=0,this.osmdSheetMusicContainer=e,this.listenForInteractions()}get FullOffsetTop(){return this.fullOffsetTop}get FullScrollTop(){return this.fullScrollTop}get FullOffsetLeft(){return this.fullOffsetLeft}get FullScrollLeft(){return this.fullScrollLeft}static resizeCallback(e,r){clearTimeout(r.timeout),r.timeout=setTimeout(()=>{r.fullOffsetLeft=0,r.fullOffsetTop=0;let s=r.osmdSheetMusicContainer;for(;s;)r.fullOffsetLeft+=s.offsetLeft,r.fullOffsetTop+=s.offsetTop,s=s.offsetParent;r.resizeEventListener(),r.deregisterScrollOffsets(),r.registerScrollOffsets()},500)}registerScrollOffsets(){let e=this.osmdSheetMusicContainer;this.fullScrollTop=0,this.fullScrollLeft=0;const r=this;for(;e&&e!==document.documentElement;){if(this.parentScrollMap.set(e,[e.scrollTop,e.scrollLeft]),this.fullScrollLeft+=e.scrollLeft,this.fullScrollTop+=e.scrollTop,e.scrollHeight>e.clientHeight){const s=function(o){const a=r.parentScrollMap.get(this),l=a[0],c=a[1];r.fullScrollTop=r.fullScrollTop-l+this.scrollTop,r.fullScrollLeft=r.fullScrollLeft-c+this.scrollLeft,r.parentScrollMap.set(this,[this.scrollTop,this.scrollLeft])};this.scrollCallbackMap.set(e,s),e.addEventListener("scroll",s)}e=e.parentElement}}deregisterScrollOffsets(){for(const e of this.scrollCallbackMap.keys())e.removeEventListener("scroll",this.scrollCallbackMap.get(e));this.scrollCallbackMap.clear()}initialize(){this.fullOffsetLeft=0,this.fullOffsetTop=0;let e=this.osmdSheetMusicContainer;const r=[],s=this;for(window.ResizeObserver&&(this.resizeObserver=new ResizeObserver(o=>{WebDisplayInteractionManager.resizeCallback(o,s)}));e;)this.fullOffsetLeft+=e.offsetLeft,this.fullOffsetTop+=e.offsetTop,this.resizeObserver?this.resizeObserver.observe(e):r.push(e),e=e.offsetParent;if(this.resizeObserver)this.disposeResizeListener=()=>{s.resizeObserver.disconnect(),s.resizeObserver=void 0};else{let o=()=>{WebDisplayInteractionManager.resizeCallback(r,s)};window.addEventListener("resize",o),this.disposeResizeListener=()=>{window.removeEventListener("resize",o),o=void 0}}s.registerScrollOffsets()}dispose(){this.disposeResizeListener();for(const e of this.EventCallbackMap.keys()){const r=this.EventCallbackMap.getValue(e);r[0].removeEventListener(e,r[1])}this.EventCallbackMap.clear(),this.deregisterScrollOffsets(),this.scrollCallbackMap.clear(),this.parentScrollMap.clear()}isTouch(){if("ontouchstart"in window||window.DocumentTouch)return!0;if(!window.matchMedia)return!1;const r=["(",["-webkit-","-moz-","-o-","-ms-"].join("touch-enabled),("),"heartz",")"].join("");return window.matchMedia(r).matches}get downEventName(){return this.isTouch()?"touchstart":"mousedown"}get moveEventName(){return this.isTouch()?"touchmove":"mousemove"}listenForInteractions(){const e=this.downEventListener.bind(this),r=this.touchEndEventListener.bind(this),s=this.moveEventListener.bind(this);this.osmdSheetMusicContainer.addEventListener("mousedown",e),this.osmdSheetMusicContainer.addEventListener("touchend",r),document.addEventListener(this.moveEventName,s),this.EventCallbackMap.setValue("mousedown",[this.osmdSheetMusicContainer,e]),this.EventCallbackMap.setValue("touchend",[this.osmdSheetMusicContainer,r]),this.EventCallbackMap.setValue(this.moveEventName,[document,s])}downEventListener(e){const r=new Date().getTime(),s=r-this.lastClick;clearTimeout(this.clickTimeout);let o=0,a=0;this.isTouch()&&e instanceof TouchEvent?(o=e.touches[0].pageX,a=e.touches[0].pageY):e instanceof MouseEvent&&(o=e.pageX,a=e.pageY);const l=this.getOffsetCoordinates(o,a);if(s0)this.doubleClick(l.x,l.y);else{const c=this;this.clickTimeout=setTimeout(function(){clearTimeout(this.clickTimeout),c.isTouch()?c.touchDown(l.x,l.y,void 0):c.click(l.x,l.y)},this.DOUBLE_CLICK_WINDOW)}this.lastClick=r}moveEventListener(e){let r=0,s=0;if(this.isTouch()&&e instanceof TouchEvent){let a;e.touches&&e.touches.length>0?a=e.touches[0]:e.changedTouches&&e.changedTouches.length>0&&(a=e.changedTouches[0]),r=a==null?void 0:a.clientX,s=a==null?void 0:a.clientY}else e instanceof MouseEvent&&(r=e.clientX,s=e.clientY);const o=this.getOffsetCoordinates(r,s);this.move(o.x,o.y)}touchEndEventListener(e){let r;e.touches&&e.touches.length>0?r=e.touches[0]:e.changedTouches&&e.changedTouches.length>0&&(r=e.changedTouches[0]);const s=this.getOffsetCoordinates(r==null?void 0:r.pageX,r==null?void 0:r.pageY);this.touchUp(s.x,s.y)}resizeEventListener(){this.displaySizeChanged(this.osmdSheetMusicContainer.clientWidth,this.osmdSheetMusicContainer.clientHeight)}getOffsetCoordinates(e,r){const s=e-this.fullOffsetLeft+this.fullScrollLeft,o=r-this.fullOffsetTop+this.fullScrollTop;return new PointF2D(s,o)}}class DynamicsCalculator{static fillDynamicsList(e,r,s){for(let o=0;o=0&&s[u].push(new DynamicsContainer(c.InstantaneousDynamic,u))}if(c.StartingContinuousDynamic!==void 0){s[o].push(new DynamicsContainer(c.StartingContinuousDynamic,c.StaffNumber));const u=this.getOtherStaffIndexIfLinkedStavesAreDetected(e,o,c.StartingContinuousDynamic.Placement);u>=0&&s[u].push(new DynamicsContainer(c.StartingContinuousDynamic,u))}}}}static getOtherStaffIndexIfLinkedStavesAreDetected(e,r,s){const o=e.getStaffFromIndex(r),a=o.ParentInstrument.Staves.indexOf(o),l=o.ParentInstrument.Staves.length;return l>1&&a===0&&s===PlacementEnum.Below?r+1:l>1&&a===1&&s===PlacementEnum.Above?r-1:-1}static fillDynamicExpressions(e){const r=e.DynListStaves,s=e.getCompleteNumberOfStaves(),o=e.TimestampSortedDynamicExpressionsList;for(let a=0;a{e(this.processStringXml(s))},s=>{loglevelExports.error(new Error("[OSMD] Invalid MXL file: "+s)),r(new Error("[OSMD] Invalid MXL file: "+s))})}processStringXml(i){const e=new DOMParser;if(i.substr(0,3)==="")return loglevelExports.debug("[OSMD] UTF with BOM detected, truncate first three bytes and pass along: "+i),e.parseFromString(i.substr(3),"application/xml");if(i.substr(0,6).includes("{r.isMxl(d)?r.processMxl(d,c,u):c(r.processStringXml(d))},d=>{throw u(d),d});else{const d=new Error("[OSMD] osmd.load(string): Could not process string. Did not find {e.init(this.sheet.MusicPartManager,this.graphic)}),this.drawingParameters.DrawingParametersEnum===DrawingParametersEnum.leadsheet&&(this.graphic.LeadSheet=!0),this.renderingManager.setMusicSheet(this.graphic),this.interactionManager.Initialize()}render(){var e;if(!this.graphic)throw new Error("OpenSheetMusicDisplay: Before rendering a music sheet, please load a MusicXML file");(e=this.drawer)==null||e.clear();let i=this.container.offsetWidth;this.rules.RenderSingleHorizontalStaffline&&(i=this.rules.SheetMaximumWidth),this.sheet.pageWidth=i/this.zoom/10,this.renderingManager.MainViewingRegion.WidthInUnits=this.sheet.pageWidth,this.rules.PageFormat&&!this.rules.PageFormat.IsUndefined?(this.rules.PageHeight=this.sheet.pageWidth/this.rules.PageFormat.aspectRatio,loglevelExports.debug("[OSMD] PageHeight: "+this.rules.PageHeight)):(loglevelExports.debug("[OSMD] endless/undefined pageformat, id: "+this.rules.PageFormat.idString),this.rules.PageHeight=100001),this.graphic.reCalculate(),this.drawingParameters.drawCursors&&(this.graphic.Cursors.length=0),this.createOrRefreshRenderBackend(),this.needBackendUpdate=!1,this.drawer.setZoom(this.zoom);for(const r of this.sheet.SourceMeasures)r.WasRendered=!1;this.drawer.drawSheet(this.graphic),this.enableOrDisableCursors(this.drawingParameters.drawCursors),this.drawingParameters.drawCursors&&this.cursors.forEach(r=>{r.update()}),this.zoomUpdated=!1,this.interactionManager.displaySizeChanged(this.container.clientWidth,this.container.clientHeight),this.rules.RenderCount++}createOrRefreshRenderBackend(){if(this.drawer&&this.drawer.Backends){this.drawer.Backends[0]&&this.drawer.Backends[0].removeAllChildrenFromContainer(this.container);for(const s of this.drawer.Backends)s.free();this.drawer.Backends.clear()}this.drawingParameters.Rules=this.rules,this.drawer=new VexFlowMusicSheetDrawer(this.drawingParameters),this.drawer.drawableBoundingBoxElement=this.DrawBoundingBox,this.drawer.bottomLineVisible=this.drawBottomLine,this.drawer.skyLineVisible=this.drawSkyLine;let i=this.container.offsetWidth;this.rules.RenderSingleHorizontalStaffline&&(i=(this.EngravingRules.PageLeftMargin+this.graphic.MusicPages[0].PositionAndShape.Size.width+this.EngravingRules.PageRightMargin)*10*this.zoom);let e;const r=32767;for(const s of this.graphic.MusicPages){if(s.PageNumber>this.rules.MaxPageToDrawNumber)break;const o=this.createBackend(this.backendType,s),a=" exceeds CanvasBackend limit of 32767. Cutting off score.";o.getOSMDBackendType()===BackendType.Canvas&&i>r&&(loglevelExports.warn("[OSMD] Warning: width of "+i+a),i=r),this.rules.PageFormat&&!this.rules.PageFormat.IsUndefined?e=i/this.rules.PageFormat.aspectRatio:(e=s.PositionAndShape.Size.height,e+=this.rules.PageBottomMargin,o.getOSMDBackendType()===BackendType.Canvas&&(e+=.1),e+=s.PositionAndShape.BorderTop,this.rules.RenderTitle&&(e+=this.rules.TitleTopDistance),e*=this.zoom*10),o.getOSMDBackendType()===BackendType.Canvas&&e>r&&(loglevelExports.warn("[OSMD] Warning: height of "+e+a),e=Math.min(e,r)),o.resize(i,e),o.clear(),o.getContext().setFillStyle(this.rules.DefaultColorMusic),o.getContext().setStrokeStyle(this.rules.DefaultColorMusic),this.drawer.Backends.push(o),this.graphic.drawer=this.drawer}}exportSVG(){var i;for(const e of(i=this.drawer)==null?void 0:i.Backends)e instanceof SvgVexFlowBackend&&e.export()}IsReadyToRender(){return this.graphic!==void 0}clear(){var i;(i=this.drawer)==null||i.clear(),this.reset()}dispose(){this.disposeResizeListener&&this.disposeResizeListener(),this.InteractionManager&&this.InteractionManager.Dispose()}setOptions(i){if(this.rules||(this.rules=new EngravingRules),!this.drawingParameters&&!i.drawingParameters?this.drawingParameters=new DrawingParameters(DrawingParametersEnum.default,this.rules):i.drawingParameters&&(this.drawingParameters?this.drawingParameters.DrawingParametersEnum=DrawingParametersEnum[i.drawingParameters.toLowerCase()]:this.drawingParameters=new DrawingParameters(DrawingParametersEnum[i.drawingParameters],this.rules)),i==null){loglevelExports.warn(`warning: osmd.setOptions() called without an options parameter, has no effect. example usage: osmd.setOptions({drawCredits: false, drawPartNames: false})`);return}this.OnXMLRead=function(o){return o},i.onXMLRead&&(this.OnXMLRead=i.onXMLRead);let r=!this.drawer||!this.drawer.Backends||this.drawer.Backends.length<1;if(i.backend!==void 0){const o=OSMDOptions.BackendTypeFromString(i.backend);r=r||this.backendType!==o,this.backendType=o}this.needBackendUpdate=r,i.autoBeam!==void 0&&(this.rules.AutoBeamNotes=i.autoBeam);const s=i.autoBeamOptions;if(s&&(s.maintain_stem_directions===void 0&&(s.maintain_stem_directions=!1),this.rules.AutoBeamOptions=s,s.groups&&s.groups.length)){for(const o of s.groups)if(o.length!==2)throw new Error("Each fraction in autoBeamOptions.groups must be of length 2, e.g. [3,4] for beaming three fourths")}i.percussionOneLineCutoff!==void 0&&(this.rules.PercussionOneLineCutoff=i.percussionOneLineCutoff),this.rules.PercussionOneLineCutoff!==0&&i.percussionForceVoicesOneLineCutoff!==void 0&&(this.rules.PercussionForceVoicesOneLineCutoff=i.percussionForceVoicesOneLineCutoff),i.alignRests!==void 0&&(this.rules.AlignRests=i.alignRests),i.coloringMode!==void 0&&this.setColoringMode(i),i.coloringEnabled!==void 0&&(this.rules.ColoringEnabled=i.coloringEnabled),i.colorStemsLikeNoteheads!==void 0&&(this.rules.ColorStemsLikeNoteheads=i.colorStemsLikeNoteheads),i.disableCursor&&(this.drawingParameters.drawCursors=!1),i.drawHiddenNotes&&(this.drawingParameters.drawHiddenNotes=!0),i.drawCredits!==void 0&&(this.drawingParameters.DrawCredits=i.drawCredits),i.drawComposer!==void 0&&(this.drawingParameters.DrawComposer=i.drawComposer),i.drawTitle!==void 0&&(this.drawingParameters.DrawTitle=i.drawTitle),i.drawSubtitle!==void 0&&(this.drawingParameters.DrawSubtitle=i.drawSubtitle),i.drawLyricist!==void 0&&(this.drawingParameters.DrawLyricist=i.drawLyricist),i.drawMetronomeMarks!==void 0&&(this.rules.MetronomeMarksDrawn=i.drawMetronomeMarks),i.drawPartNames!==void 0&&(this.drawingParameters.DrawPartNames=i.drawPartNames,i.drawPartAbbreviations||(this.rules.RenderPartAbbreviations=i.drawPartNames)),i.drawPartAbbreviations!==void 0&&(this.rules.RenderPartAbbreviations=i.drawPartAbbreviations),i.drawFingerings===!1&&(this.rules.RenderFingerings=!1),i.drawMeasureNumbers!==void 0&&(this.rules.RenderMeasureNumbers=i.drawMeasureNumbers),i.drawMeasureNumbersOnlyAtSystemStart&&(this.rules.RenderMeasureNumbersOnlyAtSystemStart=i.drawMeasureNumbersOnlyAtSystemStart),i.drawLyrics!==void 0&&(this.rules.RenderLyrics=i.drawLyrics),i.drawTimeSignatures!==void 0&&(this.rules.RenderTimeSignatures=i.drawTimeSignatures),i.drawSlurs!==void 0&&(this.rules.RenderSlurs=i.drawSlurs),i.measureNumberInterval!==void 0&&(this.rules.MeasureNumberLabelOffset=i.measureNumberInterval),i.useXMLMeasureNumbers!==void 0&&(this.rules.UseXMLMeasureNumbers=i.useXMLMeasureNumbers),i.fingeringPosition!==void 0&&(this.rules.FingeringPosition=AbstractExpression.PlacementEnumFromString(i.fingeringPosition)),i.fingeringInsideStafflines!==void 0&&(this.rules.FingeringInsideStafflines=i.fingeringInsideStafflines),i.newSystemFromXML!==void 0&&(this.rules.NewSystemAtXMLNewSystemAttribute=i.newSystemFromXML),i.newSystemFromNewPageInXML!==void 0&&(this.rules.NewSystemAtXMLNewPageAttribute=i.newSystemFromNewPageInXML),i.newPageFromXML!==void 0&&(this.rules.NewPageAtXMLNewPageAttribute=i.newPageFromXML),i.fillEmptyMeasuresWithWholeRest!==void 0&&(this.rules.FillEmptyMeasuresWithWholeRest=i.fillEmptyMeasuresWithWholeRest),i.followCursor!==void 0&&(this.FollowCursor=i.followCursor),i.setWantedStemDirectionByXml!==void 0&&(this.rules.SetWantedStemDirectionByXml=i.setWantedStemDirectionByXml),i.darkMode?(this.rules.applyDefaultColorMusic("#FFFFFF"),this.rules.PageBackgroundColor="#000000"):i.darkMode===!1&&(this.rules.applyDefaultColorMusic("#000000"),this.rules.PageBackgroundColor=void 0),i.defaultColorMusic&&this.rules.applyDefaultColorMusic(i.defaultColorMusic),i.defaultColorNotehead&&(this.rules.DefaultColorNotehead=i.defaultColorNotehead),i.defaultColorRest&&(this.rules.DefaultColorRest=i.defaultColorRest),i.defaultColorStem&&(this.rules.DefaultColorStem=i.defaultColorStem),i.defaultColorLabel&&(this.rules.DefaultColorLabel=i.defaultColorLabel),i.defaultColorTitle&&(this.rules.DefaultColorTitle=i.defaultColorTitle),i.defaultFontFamily&&(this.rules.DefaultFontFamily=i.defaultFontFamily),i.defaultFontStyle&&(this.rules.DefaultFontStyle=i.defaultFontStyle),i.drawUpToMeasureNumber&&(this.rules.MaxMeasureToDrawIndex=i.drawUpToMeasureNumber-1),i.drawFromMeasureNumber&&(this.rules.MinMeasureToDrawIndex=i.drawFromMeasureNumber-1),i.drawUpToPageNumber&&(this.rules.MaxPageToDrawNumber=i.drawUpToPageNumber),i.drawUpToSystemNumber&&(this.rules.MaxSystemToDrawNumber=i.drawUpToSystemNumber),i.tupletsRatioed&&(this.rules.TupletsRatioed=!0),i.tupletsBracketed&&(this.rules.TupletsBracketed=!0),i.tripletsBracketed&&(this.rules.TripletsBracketed=!0),i.autoResize?(this.resizeHandlerAttached||this.autoResize(),this.autoResizeEnabled=!0):i.autoResize===!1&&(this.autoResizeEnabled=!1),i.pageFormat!==void 0&&this.setPageFormat(i.pageFormat),i.pageBackgroundColor!==void 0&&(this.rules.PageBackgroundColor=i.pageBackgroundColor),i.performanceMode!==void 0&&(this.rules.PerformanceMode=i.performanceMode),i.renderSingleHorizontalStaffline!==void 0&&(this.rules.RenderSingleHorizontalStaffline=i.renderSingleHorizontalStaffline),i.spacingFactorSoftmax!==void 0&&(this.rules.SoftmaxFactorVexFlow=i.spacingFactorSoftmax),i.spacingBetweenTextLines!==void 0&&(this.rules.SpacingBetweenTextLines=i.spacingBetweenTextLines),i.stretchLastSystemLine!==void 0&&(this.rules.StretchLastSystemLine=i.stretchLastSystemLine),i.autoGenerateMultipleRestMeasuresFromRestMeasures!==void 0&&(this.rules.AutoGenerateMultipleRestMeasuresFromRestMeasures=i.autoGenerateMultipleRestMeasuresFromRestMeasures),i.cursorsOptions!==void 0?this.cursorsOptions=i.cursorsOptions:this.cursorsOptions=[{type:CursorType.Standard,color:this.EngravingRules.DefaultColorCursor,alpha:.5,follow:!0}],i.preferredSkyBottomLineBatchCalculatorBackend!==void 0&&(this.rules.PreferredSkyBottomLineBatchCalculatorBackend=i.preferredSkyBottomLineBatchCalculatorBackend),i.skyBottomLineBatchMinMeasures!==void 0&&(this.rules.SkyBottomLineBatchMinMeasures=i.skyBottomLineBatchMinMeasures)}setColoringMode(i){if(i.coloringMode===ColoringModes.XML){this.rules.ColoringMode=ColoringModes.XML;return}const e=[NoteEnum.C,NoteEnum.D,NoteEnum.E,NoteEnum.F,NoteEnum.G,NoteEnum.A,NoteEnum.B];let r;if(i.coloringMode===ColoringModes.CustomColorSet){if(!i.coloringSetCustom||i.coloringSetCustom.length!==8)throw new Error("Invalid amount of colors: With coloringModes.customColorSet, you have to provide a coloringSetCustom parameter (array) with 8 strings (C to B, rest note).");for(const o of i.coloringSetCustom)if(!/^\#[0-9a-fA-F]{6}$/.test(o))throw new Error(`One of the color strings in options.coloringSetCustom was not a valid HTML Hex color: `+o);r=i.coloringSetCustom}else if(i.coloringMode===ColoringModes.AutoColoring){r=[];const o=Object.keys(AutoColorSet);for(let a=0;a{i.hide()}),this.sheet=void 0,this.graphic=void 0,this.zoom=1,this.rules.RenderCount=0}autoResize(){const i=this;this.handleResize(()=>{},()=>{var e;((e=this.graphic)==null?void 0:e.GetCalculator)instanceof VexFlowMusicSheetCalculator&&(this.graphic.GetCalculator.beamsNeedUpdate=!0),i.IsReadyToRender()&&i.render()})}handleResize(i,e){let r,s;const a=this;function l(){a.AutoResizeEnabled&&(r=new Date().getTime(),s||(i(),r=new Date().getTime(),s=window.setTimeout(c,200)))}function c(){s=void 0,window.clearTimeout(s),new Date().getTime()-r<200?s=window.setTimeout(c,200):e()}window.attachEvent?window.attachEvent("onresize",l):window.addEventListener("resize",l),this.disposeResizeListener=()=>{window.detachEvent?window.detachEvent("onresize",l):window.removeEventListener("resize",l),this.resizeHandlerAttached=!1},this.resizeHandlerAttached=!0,window.setTimeout(i,0),window.setTimeout(e,1)}enableOrDisableCursors(i){var e,r,s,o,a,l,c,u,m;if(this.drawingParameters.drawCursors=i,i){for(let g=0;g{g.hide()})}createBackend(i,e){let r;return i===void 0||i===BackendType.SVG?r=new SvgVexFlowBackend(this.rules):r=new CanvasVexFlowBackend(this.rules),r.graphicalMusicPage=e,r.initialize(this.container,this.zoom),r}static StringToPageFormat(i){let e=PageFormat.UndefinedPageFormat;if(i.match("^[0-9]+x[0-9]+$")){const r=i.split("x"),s=Number.parseInt(r[0],10),o=Number.parseInt(r[1],10);s>0&&s<32768&&o>0&&o<32768&&(e=new PageFormat(s,o,`customPageFormat${i}`))}return i=i.replace(" ","_"),i=i.replace("Landscape","L"),i=i.replace("Portrait","P"),_OpenSheetMusicDisplay.PageFormatStandards.hasOwnProperty(i)&&(e=_OpenSheetMusicDisplay.PageFormatStandards[i]),e}setPageFormat(i){const e=_OpenSheetMusicDisplay.StringToPageFormat(i);this.needBackendUpdate=!e.Equals(this.rules.PageFormat),this.rules.PageFormat=e}setCustomPageFormat(i,e){if(i>0&&e>0){const r=new PageFormat(i,e);this.rules.PageFormat=r}}set DrawSkyLine(i){this.drawSkyLine=i,this.drawer&&(this.drawer.skyLineVisible=i)}get DrawSkyLine(){return this.drawer.skyLineVisible}set DrawBottomLine(i){this.drawBottomLine=i,this.drawer&&(this.drawer.bottomLineVisible=i)}get DrawBottomLine(){return this.drawer.bottomLineVisible}set DrawBoundingBox(i){this.setDrawBoundingBox(i,!0)}get DrawBoundingBox(){return this.drawBoundingBox}setDrawBoundingBox(i,e=!1){this.drawBoundingBox=i,this.drawer&&(this.drawer.drawableBoundingBoxElement=i),e&&this.render()}get AutoResizeEnabled(){return this.autoResizeEnabled}set AutoResizeEnabled(i){this.autoResizeEnabled=i}get Zoom(){return this.zoom}set Zoom(i){var e;this.zoom=i,this.zoomUpdated=!0,((e=this.graphic)==null?void 0:e.GetCalculator)instanceof VexFlowMusicSheetCalculator&&(this.graphic.GetCalculator.beamsNeedUpdate=this.zoomUpdated)}set FollowCursor(i){this.followCursor=i}get FollowCursor(){return this.followCursor}set TransposeCalculator(i){MusicSheetCalculator.transposeCalculator=i}get TransposeCalculator(){return MusicSheetCalculator.transposeCalculator}get Sheet(){return this.sheet}get Drawer(){return this.drawer}get GraphicSheet(){return this.graphic}get DrawingParameters(){return this.drawingParameters}get EngravingRules(){return this.rules}get InteractionManager(){return this.interactionManager}get Version(){return this.version}};let OpenSheetMusicDisplay=_OpenSheetMusicDisplay;OpenSheetMusicDisplay.PageFormatStandards={A3_L:new PageFormat(420,297,"A3_L"),A3_P:new PageFormat(297,420,"A3_P"),A4_L:new PageFormat(297,210,"A4_L"),A4_P:new PageFormat(210,297,"A4_P"),A5_L:new PageFormat(210,148,"A5_L"),A5_P:new PageFormat(148,210,"A5_P"),A6_L:new PageFormat(148,105,"A6_L"),A6_P:new PageFormat(105,148,"A6_P"),Endless:PageFormat.UndefinedPageFormat,Letter_L:new PageFormat(279.4,215.9,"Letter_L"),Letter_P:new PageFormat(215.9,279.4,"Letter_P")};var handlebarsExports={},handlebars={get exports(){return handlebarsExports},set exports(i){handlebarsExports=i}},handlebars_runtimeExports={},handlebars_runtime={get exports(){return handlebars_runtimeExports},set exports(i){handlebars_runtimeExports=i}},base$1={},utils={};utils.__esModule=!0;utils.extend=extend;utils.indexOf=indexOf;utils.escapeExpression=escapeExpression;utils.isEmpty=isEmpty;utils.createFrame=createFrame;utils.blockParams=blockParams;utils.appendContextPath=appendContextPath;var escape$1={"&":"&","<":"<",">":">",'"':""","'":"'","`":"`","=":"="},badChars=/[&<>"'`=]/g,possible=/[&<>"'`=]/;function escapeChar(i){return escape$1[i]}function extend(i){for(var e=1;e0?(a.ids&&(a.ids=[a.name]),s.helpers.each(o,a)):l(this);if(a.data&&a.ids){var u=r.createFrame(a.data);u.contextPath=r.appendContextPath(a.data.contextPath,a.name),a={data:u}}return c(o,a)})},i.exports=e.default})(blockHelperMissing,blockHelperMissingExports);var eachExports={},each={get exports(){return eachExports},set exports(i){eachExports=i}};(function(i,e){e.__esModule=!0;function r(l){return l&&l.__esModule?l:{default:l}}var s=utils,o=exceptionExports,a=r(o);e.default=function(l){l.registerHelper("each",function(c,u){if(!u)throw new a.default("Must pass iterator to #each");var m=u.fn,g=u.inverse,d=0,y="",A=void 0,b=void 0;u.data&&u.ids&&(b=s.appendContextPath(u.data.contextPath,u.ids[0])+"."),s.isFunction(c)&&(c=c.call(this)),u.data&&(A=s.createFrame(u.data));function S(k,I,M){A&&(A.key=k,A.index=I,A.first=I===0,A.last=!!M,b&&(A.contextPath=b+k)),y=y+m(c[k],{data:A,blockParams:s.blockParams([c[k],k],[b+k,null])})}if(c&&typeof c=="object")if(s.isArray(c))for(var E=c.length;d=0?a=l:a=parseInt(a,10)}return a},log:function(a){if(a=s.lookupLevel(a),typeof console<"u"&&s.lookupLevel(s.level)<=a){var l=s.methodMap[a];console[l]||(l="log");for(var c=arguments.length,u=Array(c>1?c-1:0),m=1;m= 2.0.0-beta.1",7:">= 4.0.0 <4.3.0",8:">= 4.3.0"};base$1.REVISION_CHANGES=REVISION_CHANGES;var objectType="[object Object]";function HandlebarsEnvironment(i,e,r){this.helpers=i||{},this.partials=e||{},this.decorators=r||{},_helpers$2.registerDefaultHelpers(this),_decorators.registerDefaultDecorators(this)}HandlebarsEnvironment.prototype={constructor:HandlebarsEnvironment,logger:_logger2.default,log:_logger2.default.log,registerHelper:function i(e,r){if(_utils$3.toString.call(e)===objectType){if(r)throw new _exception2$3.default("Arg not supported with multiple helpers");_utils$3.extend(this.helpers,e)}else this.helpers[e]=r},unregisterHelper:function i(e){delete this.helpers[e]},registerPartial:function i(e,r){if(_utils$3.toString.call(e)===objectType)_utils$3.extend(this.partials,e);else{if(typeof r>"u")throw new _exception2$3.default('Attempting to register a partial called "'+e+'" as undefined');this.partials[e]=r}},unregisterPartial:function i(e){delete this.partials[e]},registerDecorator:function i(e,r){if(_utils$3.toString.call(e)===objectType){if(r)throw new _exception2$3.default("Arg not supported with multiple decorators");_utils$3.extend(this.decorators,e)}else this.decorators[e]=r},unregisterDecorator:function i(e){delete this.decorators[e]},resetLoggedPropertyAccesses:function i(){_internalProtoAccess$1.resetLoggedProperties()}};var log=_logger2.default.log;base$1.log=log;base$1.createFrame=_utils$3.createFrame;base$1.logger=_logger2.default;var safeStringExports={},safeString={get exports(){return safeStringExports},set exports(i){safeStringExports=i}};(function(i,e){e.__esModule=!0;function r(s){this.string=s}r.prototype.toString=r.prototype.toHTML=function(){return""+this.string},e.default=r,i.exports=e.default})(safeString,safeStringExports);var runtime={},wrapHelper$1={};wrapHelper$1.__esModule=!0;wrapHelper$1.wrapHelper=wrapHelper;function wrapHelper(i,e){if(typeof i!="function")return i;var r=function(){var o=arguments[arguments.length-1];return arguments[arguments.length-1]=e(o),i.apply(this,arguments)};return r}runtime.__esModule=!0;runtime.checkRevision=checkRevision;runtime.template=template;runtime.wrapProgram=wrapProgram;runtime.resolvePartial=resolvePartial;runtime.invokePartial=invokePartial;runtime.noop=noop;function _interopRequireDefault$3(i){return i&&i.__esModule?i:{default:i}}function _interopRequireWildcard$1(i){if(i&&i.__esModule)return i;var e={};if(i!=null)for(var r in i)Object.prototype.hasOwnProperty.call(i,r)&&(e[r]=i[r]);return e.default=i,e}var _utils$2=utils,Utils=_interopRequireWildcard$1(_utils$2),_exception$2=exceptionExports,_exception2$2=_interopRequireDefault$3(_exception$2),_base=base$1,_helpers$1=helpers$1,_internalWrapHelper=wrapHelper$1,_internalProtoAccess=protoAccess;function checkRevision(i){var e=i&&i[0]||1,r=_base.COMPILER_REVISION;if(!(e>=_base.LAST_COMPATIBLE_COMPILER_REVISION&&e<=_base.COMPILER_REVISION))if(e<_base.LAST_COMPATIBLE_COMPILER_REVISION){var s=_base.REVISION_CHANGES[r],o=_base.REVISION_CHANGES[e];throw new _exception2$2.default("Template was precompiled with an older version of Handlebars than the current runtime. Please update your precompiler to a newer version ("+s+") or downgrade your runtime to an older version ("+o+").")}else throw new _exception2$2.default("Template was precompiled with a newer version of Handlebars than the current runtime. Please update your runtime to a newer version ("+i[1]+").")}function template(i,e){if(!e)throw new _exception2$2.default("No environment passed to template");if(!i||!i.main)throw new _exception2$2.default("Unknown template object: "+typeof i);i.main.decorator=i.main_d,e.VM.checkRevision(i.compiler);var r=i.compiler&&i.compiler[0]===7;function s(l,c,u){u.hash&&(c=Utils.extend({},c,u.hash),u.ids&&(u.ids[0]=!0)),l=e.VM.resolvePartial.call(this,l,c,u);var m=Utils.extend({},u,{hooks:this.hooks,protoAccessControl:this.protoAccessControl}),g=e.VM.invokePartial.call(this,l,c,m);if(g==null&&e.compile&&(u.partials[u.name]=e.compile(l,i.compilerOptions,e),g=u.partials[u.name](c,m)),g!=null){if(u.indent){for(var d=g.split(` `),y=0,A=d.length;y"u"&&(this.lexer.yylloc={});var E=this.lexer.yylloc;d.push(E);var x=this.lexer.options&&this.lexer.options.ranges;typeof this.yy.parseError=="function"&&(this.parseError=this.yy.parseError);function C(){var V;return V=u.lexer.lex()||1,typeof V!="number"&&(V=u.symbols_[V]||V),V}for(var P,k,I,M,T={},F,D,N,O;;){if(k=m[m.length-1],this.defaultActions[k]?I=this.defaultActions[k]:((P===null||typeof P>"u")&&(P=C()),I=y[k]&&y[k][P]),typeof I>"u"||!I.length||!I[0]){var B="";{O=[];for(F in y[k])this.terminals_[F]&&F>2&&O.push("'"+this.terminals_[F]+"'");this.lexer.showPosition?B="Parse error on line "+(b+1)+`: `+this.lexer.showPosition()+` Expecting `+O.join(", ")+", got '"+(this.terminals_[P]||P)+"'":B="Parse error on line "+(b+1)+": Unexpected "+(P==1?"end of input":"'"+(this.terminals_[P]||P)+"'"),this.parseError(B,{text:this.lexer.match,token:this.terminals_[P]||P,line:this.lexer.yylineno,loc:E,expected:O})}}if(I[0]instanceof Array&&I.length>1)throw new Error("Parse Error: multiple actions possible at state: "+k+", token: "+P);switch(I[0]){case 1:m.push(P),g.push(this.lexer.yytext),d.push(this.lexer.yylloc),m.push(I[1]),P=null,S=this.lexer.yyleng,A=this.lexer.yytext,b=this.lexer.yylineno,E=this.lexer.yylloc;break;case 2:if(D=this.productions_[I[1]][1],T.$=g[g.length-D],T._$={first_line:d[d.length-(D||1)].first_line,last_line:d[d.length-1].last_line,first_column:d[d.length-(D||1)].first_column,last_column:d[d.length-1].last_column},x&&(T._$.range=[d[d.length-(D||1)].range[0],d[d.length-1].range[1]]),M=this.performAction.call(T,A,S,b,this.yy,I[1],g,d),typeof M<"u")return M;D&&(m=m.slice(0,-1*D*2),g=g.slice(0,-1*D),d=d.slice(0,-1*D)),m.push(this.productions_[I[1]][0]),g.push(T.$),d.push(T._$),N=y[m[m.length-2]][m[m.length-1]],m.push(N);break;case 3:return!0}}return!0}},o=function(){var l={EOF:1,parseError:function(u,m){if(this.yy.parser)this.yy.parser.parseError(u,m);else throw new Error(u)},setInput:function(u){return this._input=u,this._more=this._less=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var u=this._input[0];this.yytext+=u,this.yyleng++,this.offset++,this.match+=u,this.matched+=u;var m=u.match(/(?:\r\n?|\n).*/g);return m?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),u},unput:function(u){var m=u.length,g=u.split(/(?:\r\n?|\n)/g);this._input=u+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-m-1),this.offset-=m;var d=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),g.length-1&&(this.yylineno-=g.length-1);var y=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:g?(g.length===d.length?this.yylloc.first_column:0)+d[d.length-g.length].length-g[0].length:this.yylloc.first_column-m},this.options.ranges&&(this.yylloc.range=[y[0],y[0]+this.yyleng-m]),this},more:function(){return this._more=!0,this},less:function(u){this.unput(this.match.slice(u))},pastInput:function(){var u=this.matched.substr(0,this.matched.length-this.match.length);return(u.length>20?"...":"")+u.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var u=this.match;return u.length<20&&(u+=this._input.substr(0,20-u.length)),(u.substr(0,20)+(u.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var u=this.pastInput(),m=new Array(u.length+1).join("-");return u+this.upcomingInput()+` `+m+"^"},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var u,m,g,d,y;this._more||(this.yytext="",this.match="");for(var A=this._currentRules(),b=0;bm[0].length)&&(m=g,d=b,!this.options.flex)));b++);return m?(y=m[0].match(/(?:\r\n?|\n).*/g),y&&(this.yylineno+=y.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:y?y[y.length-1].length-y[y.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+m[0].length},this.yytext+=m[0],this.match+=m[0],this.matches=m,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._input=this._input.slice(m[0].length),this.matched+=m[0],u=this.performAction.call(this,this.yy,this,A[d],this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),u||void 0):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. `+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var u=this.next();return typeof u<"u"?u:this.lex()},begin:function(u){this.conditionStack.push(u)},popState:function(){return this.conditionStack.pop()},_currentRules:function(){return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules},topState:function(){return this.conditionStack[this.conditionStack.length-2]},pushState:function(u){this.begin(u)}};return l.options={},l.performAction=function(u,m,g,d){function y(A,b){return m.yytext=m.yytext.substring(A,m.yyleng-b+A)}switch(g){case 0:if(m.yytext.slice(-2)==="\\\\"?(y(0,1),this.begin("mu")):m.yytext.slice(-1)==="\\"?(y(0,1),this.begin("emu")):this.begin("mu"),m.yytext)return 15;break;case 1:return 15;case 2:return this.popState(),15;case 3:return this.begin("raw"),15;case 4:return this.popState(),this.conditionStack[this.conditionStack.length-1]==="raw"?15:(y(5,9),"END_RAW_BLOCK");case 5:return 15;case 6:return this.popState(),14;case 7:return 65;case 8:return 68;case 9:return 19;case 10:return this.popState(),this.begin("raw"),23;case 11:return 55;case 12:return 60;case 13:return 29;case 14:return 47;case 15:return this.popState(),44;case 16:return this.popState(),44;case 17:return 34;case 18:return 39;case 19:return 51;case 20:return 48;case 21:this.unput(m.yytext),this.popState(),this.begin("com");break;case 22:return this.popState(),14;case 23:return 48;case 24:return 73;case 25:return 72;case 26:return 72;case 27:return 87;case 28:break;case 29:return this.popState(),54;case 30:return this.popState(),33;case 31:return m.yytext=y(1,2).replace(/\\"/g,'"'),80;case 32:return m.yytext=y(1,2).replace(/\\'/g,"'"),80;case 33:return 85;case 34:return 82;case 35:return 82;case 36:return 83;case 37:return 84;case 38:return 81;case 39:return 75;case 40:return 77;case 41:return 72;case 42:return m.yytext=m.yytext.replace(/\\([\\\]])/g,"$1"),72;case 43:return"INVALID";case 44:return 5}},l.rules=[/^(?:[^\x00]*?(?=(\{\{)))/,/^(?:[^\x00]+)/,/^(?:[^\x00]{2,}?(?=(\{\{|\\\{\{|\\\\\{\{|$)))/,/^(?:\{\{\{\{(?=[^/]))/,/^(?:\{\{\{\{\/[^\s!"#%-,\.\/;->@\[-\^`\{-~]+(?=[=}\s\/.])\}\}\}\})/,/^(?:[^\x00]+?(?=(\{\{\{\{)))/,/^(?:[\s\S]*?--(~)?\}\})/,/^(?:\()/,/^(?:\))/,/^(?:\{\{\{\{)/,/^(?:\}\}\}\})/,/^(?:\{\{(~)?>)/,/^(?:\{\{(~)?#>)/,/^(?:\{\{(~)?#\*?)/,/^(?:\{\{(~)?\/)/,/^(?:\{\{(~)?\^\s*(~)?\}\})/,/^(?:\{\{(~)?\s*else\s*(~)?\}\})/,/^(?:\{\{(~)?\^)/,/^(?:\{\{(~)?\s*else\b)/,/^(?:\{\{(~)?\{)/,/^(?:\{\{(~)?&)/,/^(?:\{\{(~)?!--)/,/^(?:\{\{(~)?![\s\S]*?\}\})/,/^(?:\{\{(~)?\*?)/,/^(?:=)/,/^(?:\.\.)/,/^(?:\.(?=([=~}\s\/.)|])))/,/^(?:[\/.])/,/^(?:\s+)/,/^(?:\}(~)?\}\})/,/^(?:(~)?\}\})/,/^(?:"(\\["]|[^"])*")/,/^(?:'(\\[']|[^'])*')/,/^(?:@)/,/^(?:true(?=([~}\s)])))/,/^(?:false(?=([~}\s)])))/,/^(?:undefined(?=([~}\s)])))/,/^(?:null(?=([~}\s)])))/,/^(?:-?[0-9]+(?:\.[0-9]+)?(?=([~}\s)])))/,/^(?:as\s+\|)/,/^(?:\|)/,/^(?:([^\s!"#%-,\.\/;->@\[-\^`\{-~]+(?=([=~}\s\/.)|]))))/,/^(?:\[(\\\]|[^\]])*\])/,/^(?:.)/,/^(?:$)/],l.conditions={mu:{rules:[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,32,33,34,35,36,37,38,39,40,41,42,43,44],inclusive:!1},emu:{rules:[2],inclusive:!1},com:{rules:[6],inclusive:!1},raw:{rules:[3,4,5],inclusive:!1},INITIAL:{rules:[0,1,44],inclusive:!0}},l}();s.lexer=o;function a(){this.yy={}}return a.prototype=s,s.Parser=a,new a}();e.default=r,i.exports=e.default})(parser$1,parserExports);var whitespaceControlExports={},whitespaceControl={get exports(){return whitespaceControlExports},set exports(i){whitespaceControlExports=i}},visitorExports={},visitor={get exports(){return visitorExports},set exports(i){visitorExports=i}};(function(i,e){e.__esModule=!0;function r(m){return m&&m.__esModule?m:{default:m}}var s=exceptionExports,o=r(s);function a(){this.parents=[]}a.prototype={constructor:a,mutating:!1,acceptKey:function(g,d){var y=this.accept(g[d]);if(this.mutating){if(y&&!a.prototype[y.type])throw new o.default('Unexpected node type "'+y.type+'" found when accepting '+d+" on "+g.type);g[d]=y}},acceptRequired:function(g,d){if(this.acceptKey(g,d),!g[d])throw new o.default(g.type+" requires "+d)},acceptArray:function(g){for(var d=0,y=g.length;d0)throw new _exception2$1.default("Invalid path: "+s,{loc:r});u===".."&&a++}else o.push(u)}return{type:"PathExpression",data:i,depth:a,parts:o,original:s,loc:r}}function prepareMustache(i,e,r,s,o,a){var l=s.charAt(3)||s.charAt(2),c=l!=="{"&&l!=="&",u=/\*/.test(s);return{type:u?"Decorator":"MustacheStatement",path:i,params:e,hash:r,escaped:c,strip:o,loc:this.locInfo(a)}}function prepareRawBlock(i,e,r,s){validateClose(i,r),s=this.locInfo(s);var o={type:"Program",body:e,strip:{},loc:s};return{type:"BlockStatement",path:i.path,params:i.params,hash:i.hash,program:o,openStrip:{},inverseStrip:{},closeStrip:{},loc:s}}function prepareBlock(i,e,r,s,o,a){s&&s.path&&validateClose(i,s);var l=/\*/.test(i.open);e.blockParams=i.blockParams;var c=void 0,u=void 0;if(r){if(l)throw new _exception2$1.default("Unexpected inverse block on decorator",r);r.chain&&(r.program.body[0].closeStrip=s.strip),u=r.strip,c=r.program}return o&&(o=c,c=e,e=o),{type:l?"DecoratorBlock":"BlockStatement",path:i.path,params:i.params,hash:i.hash,program:e,inverse:c,openStrip:i.strip,inverseStrip:u,closeStrip:s&&s.strip,loc:this.locInfo(a)}}function prepareProgram(i,e){if(!e&&i.length){var r=i[0].loc,s=i[i.length-1].loc;r&&s&&(e={source:r.source,start:{line:r.start.line,column:r.start.column},end:{line:s.end.line,column:s.end.column}})}return{type:"Program",body:i,strip:{},loc:e}}function preparePartialBlock(i,e,r,s){return validateClose(i,r),{type:"PartialBlockStatement",name:i.path,params:i.params,hash:i.hash,program:e,openStrip:i.strip,closeStrip:r&&r.strip,loc:this.locInfo(s)}}base.__esModule=!0;base.parseWithoutProcessing=parseWithoutProcessing;base.parse=parse$2;function _interopRequireWildcard(i){if(i&&i.__esModule)return i;var e={};if(i!=null)for(var r in i)Object.prototype.hasOwnProperty.call(i,r)&&(e[r]=i[r]);return e.default=i,e}function _interopRequireDefault$1(i){return i&&i.__esModule?i:{default:i}}var _parser=parserExports,_parser2=_interopRequireDefault$1(_parser),_whitespaceControl=whitespaceControlExports,_whitespaceControl2=_interopRequireDefault$1(_whitespaceControl),_helpers=helpers,Helpers=_interopRequireWildcard(_helpers),_utils$1=utils;base.parser=_parser2.default;var yy={};_utils$1.extend(yy,Helpers);function parseWithoutProcessing(i,e){if(i.type==="Program")return i;_parser2.default.yy=yy,yy.locInfo=function(s){return new yy.SourceLocation(e&&e.srcName,s)};var r=_parser2.default.parse(i);return r}function parse$2(i,e){var r=parseWithoutProcessing(i,e),s=new _whitespaceControl2.default(e);return s.accept(r)}var compiler={};compiler.__esModule=!0;compiler.Compiler=Compiler;compiler.precompile=precompile;compiler.compile=compile;function _interopRequireDefault(i){return i&&i.__esModule?i:{default:i}}var _exception=exceptionExports,_exception2=_interopRequireDefault(_exception),_utils=utils,_ast=astExports,_ast2=_interopRequireDefault(_ast),slice=[].slice;function Compiler(){}Compiler.prototype={compiler:Compiler,equals:function i(e){var r=this.opcodes.length;if(e.opcodes.length!==r)return!1;for(var s=0;s1)throw new _exception2.default("Unsupported number of partial arguments: "+s.length,e);s.length||(this.options.explicitPartialContext?this.opcode("pushLiteral","undefined"):s.push({type:"PathExpression",parts:[],depth:0}));var o=e.name.original,a=e.name.type==="SubExpression";a&&this.accept(e.name),this.setupFullMustacheParams(e,r,void 0,!0);var l=e.indent||"";this.options.preventIndent&&l&&(this.opcode("appendContent",l),l=""),this.opcode("invokePartial",a,o,l),this.opcode("append")},PartialBlockStatement:function i(e){this.PartialStatement(e)},MustacheStatement:function i(e){this.SubExpression(e),e.escaped&&!this.options.noEscape?this.opcode("appendEscaped"):this.opcode("append")},Decorator:function i(e){this.DecoratorBlock(e)},ContentStatement:function i(e){e.value&&this.opcode("appendContent",e.value)},CommentStatement:function i(){},SubExpression:function i(e){transformLiteralToPath(e);var r=this.classifySexpr(e);r==="simple"?this.simpleSexpr(e):r==="helper"?this.helperSexpr(e):this.ambiguousSexpr(e)},ambiguousSexpr:function i(e,r,s){var o=e.path,a=o.parts[0],l=r!=null||s!=null;this.opcode("getContext",o.depth),this.opcode("pushProgram",r),this.opcode("pushProgram",s),o.strict=!0,this.accept(o),this.opcode("invokeAmbiguous",a,l)},simpleSexpr:function i(e){var r=e.path;r.strict=!0,this.accept(r),this.opcode("resolvePossibleLambda")},helperSexpr:function i(e,r,s){var o=this.setupFullMustacheParams(e,r,s),a=e.path,l=a.parts[0];if(this.options.knownHelpers[l])this.opcode("invokeKnownHelper",o.length,l);else{if(this.options.knownHelpersOnly)throw new _exception2.default("You specified knownHelpersOnly, but used the unknown helper "+l,e);a.strict=!0,a.falsy=!0,this.accept(a),this.opcode("invokeHelper",o.length,a.original,_ast2.default.helpers.simpleId(a))}},PathExpression:function i(e){this.addDepth(e.depth),this.opcode("getContext",e.depth);var r=e.parts[0],s=_ast2.default.helpers.scopedId(e),o=!e.depth&&!s&&this.blockParamIndex(r);o?this.opcode("lookupBlockParam",o,e.parts):r?e.data?(this.options.data=!0,this.opcode("lookupData",e.depth,e.parts,e.strict)):this.opcode("lookupOnContext",e.parts,e.falsy,e.strict,s):this.opcode("pushContext")},StringLiteral:function i(e){this.opcode("pushString",e.value)},NumberLiteral:function i(e){this.opcode("pushLiteral",e.value)},BooleanLiteral:function i(e){this.opcode("pushLiteral",e.value)},UndefinedLiteral:function i(){this.opcode("pushLiteral","undefined")},NullLiteral:function i(){this.opcode("pushLiteral","null")},Hash:function i(e){var r=e.pairs,s=0,o=r.length;for(this.opcode("pushHash");s=0)return[r,a]}}};function precompile(i,e,r){if(i==null||typeof i!="string"&&i.type!=="Program")throw new _exception2.default("You must pass a string or Handlebars AST to Handlebars.precompile. You passed "+i);e=e||{},"data"in e||(e.data=!0),e.compat&&(e.useDepths=!0);var s=r.parse(i,e),o=new r.Compiler().compile(s,e);return new r.JavaScriptCompiler().compile(o,e)}function compile(i,e,r){if(e===void 0&&(e={}),i==null||typeof i!="string"&&i.type!=="Program")throw new _exception2.default("You must pass a string or Handlebars AST to Handlebars.compile. You passed "+i);e=_utils.extend({},e),"data"in e||(e.data=!0),e.compat&&(e.useDepths=!0);var s=void 0;function o(){var l=r.parse(i,e),c=new r.Compiler().compile(l,e),u=new r.JavaScriptCompiler().compile(c,e,void 0,!0);return r.template(u)}function a(l,c){return s||(s=o()),s.call(this,l,c)}return a._setup=function(l){return s||(s=o()),s._setup(l)},a._child=function(l,c,u,m){return s||(s=o()),s._child(l,c,u,m)},a}function argEquals(i,e){if(i===e)return!0;if(_utils.isArray(i)&&_utils.isArray(e)&&i.length===e.length){for(var r=0;r>1;return u?-m:m}return base64Vlq.encode=function(u){var m="",g,d=a(u);do g=d&s,d>>>=e,d>0&&(g|=o),m+=i.encode(g);while(d>0);return m},base64Vlq.decode=function(u,m,g){var d=u.length,y=0,A=0,b,S;do{if(m>=d)throw new Error("Expected more digits in base 64 VLQ value.");if(S=i.decode(u.charCodeAt(m++)),S===-1)throw new Error("Invalid base64 digit: "+u.charAt(m-1));b=!!(S&o),S&=s,y=y+(S<=0;O--)D=F[O],D==="."?F.splice(O,1):D===".."?N++:N>0&&(D===""?(F.splice(O+1,N),N=0):(F.splice(O,2),N--));return I=F.join("/"),I===""&&(I=T?"/":"."),M?(M.path=I,a(M)):I}i.normalize=l;function c(k,I){k===""&&(k="."),I===""&&(I=".");var M=o(I),T=o(k);if(T&&(k=T.path||"/"),M&&!M.scheme)return T&&(M.scheme=T.scheme),a(M);if(M||I.match(s))return I;if(T&&!T.host&&!T.path)return T.host=I,a(T);var F=I.charAt(0)==="/"?I:l(k.replace(/\/+$/,"")+"/"+I);return T?(T.path=F,a(T)):F}i.join=c,i.isAbsolute=function(k){return k.charAt(0)==="/"||r.test(k)};function u(k,I){k===""&&(k="."),k=k.replace(/\/$/,"");for(var M=0;I.indexOf(k+"/")!==0;){var T=k.lastIndexOf("/");if(T<0||(k=k.slice(0,T),k.match(/^([^\/]+:\/)?\/*$/)))return I;++M}return Array(M+1).join("../")+I.substr(k.length+1)}i.relative=u;var m=function(){var k=Object.create(null);return!("__proto__"in k)}();function g(k){return k}function d(k){return A(k)?"$"+k:k}i.toSetString=m?g:d;function y(k){return A(k)?k.slice(1):k}i.fromSetString=m?g:y;function A(k){if(!k)return!1;var I=k.length;if(I<9||k.charCodeAt(I-1)!==95||k.charCodeAt(I-2)!==95||k.charCodeAt(I-3)!==111||k.charCodeAt(I-4)!==116||k.charCodeAt(I-5)!==111||k.charCodeAt(I-6)!==114||k.charCodeAt(I-7)!==112||k.charCodeAt(I-8)!==95||k.charCodeAt(I-9)!==95)return!1;for(var M=I-10;M>=0;M--)if(k.charCodeAt(M)!==36)return!1;return!0}function b(k,I,M){var T=E(k.source,I.source);return T!==0||(T=k.originalLine-I.originalLine,T!==0)||(T=k.originalColumn-I.originalColumn,T!==0||M)||(T=k.generatedColumn-I.generatedColumn,T!==0)||(T=k.generatedLine-I.generatedLine,T!==0)?T:E(k.name,I.name)}i.compareByOriginalPositions=b;function S(k,I,M){var T=k.generatedLine-I.generatedLine;return T!==0||(T=k.generatedColumn-I.generatedColumn,T!==0||M)||(T=E(k.source,I.source),T!==0)||(T=k.originalLine-I.originalLine,T!==0)||(T=k.originalColumn-I.originalColumn,T!==0)?T:E(k.name,I.name)}i.compareByGeneratedPositionsDeflated=S;function E(k,I){return k===I?0:k===null?1:I===null?-1:k>I?1:-1}function x(k,I){var M=k.generatedLine-I.generatedLine;return M!==0||(M=k.generatedColumn-I.generatedColumn,M!==0)||(M=E(k.source,I.source),M!==0)||(M=k.originalLine-I.originalLine,M!==0)||(M=k.originalColumn-I.originalColumn,M!==0)?M:E(k.name,I.name)}i.compareByGeneratedPositionsInflated=x;function C(k){return JSON.parse(k.replace(/^\)]}'[^\n]*\n/,""))}i.parseSourceMapInput=C;function P(k,I,M){if(I=I||"",k&&(k[k.length-1]!=="/"&&I[0]!=="/"&&(k+="/"),I=k+I),M){var T=o(M);if(!T)throw new Error("sourceMapURL could not be parsed");if(T.path){var F=T.path.lastIndexOf("/");F>=0&&(T.path=T.path.substring(0,F+1))}I=c(a(T),I)}return l(I)}i.computeSourceURL=P}(util)),util}var arraySet={},hasRequiredArraySet;function requireArraySet(){if(hasRequiredArraySet)return arraySet;hasRequiredArraySet=1;var i=requireUtil(),e=Object.prototype.hasOwnProperty,r=typeof Map<"u";function s(){this._array=[],this._set=r?new Map:Object.create(null)}return s.fromArray=function(a,l){for(var c=new s,u=0,m=a.length;u=0)return l}else{var c=i.toSetString(a);if(e.call(this._set,c))return this._set[c]}throw new Error('"'+a+'" is not in the set.')},s.prototype.at=function(a){if(a>=0&&aa||l==a&&u>=c||i.compareByGeneratedPositionsInflated(s,o)<=0}function r(){this._array=[],this._sorted=!0,this._last={generatedLine:-1,generatedColumn:0}}return r.prototype.unsortedForEach=function(o,a){this._array.forEach(o,a)},r.prototype.add=function(o){e(this._last,o)?(this._last=o,this._array.push(o)):(this._sorted=!1,this._array.push(o))},r.prototype.toArray=function(){return this._sorted||(this._array.sort(i.compareByGeneratedPositionsInflated),this._sorted=!0),this._array},mappingList.MappingList=r,mappingList}var hasRequiredSourceMapGenerator;function requireSourceMapGenerator(){if(hasRequiredSourceMapGenerator)return sourceMapGenerator;hasRequiredSourceMapGenerator=1;var i=requireBase64Vlq(),e=requireUtil(),r=requireArraySet().ArraySet,s=requireMappingList().MappingList;function o(a){a||(a={}),this._file=e.getArg(a,"file",null),this._sourceRoot=e.getArg(a,"sourceRoot",null),this._skipValidation=e.getArg(a,"skipValidation",!1),this._sources=new r,this._names=new r,this._mappings=new s,this._sourcesContents=null}return o.prototype._version=3,o.fromSourceMap=function(l){var c=l.sourceRoot,u=new o({file:l.file,sourceRoot:c});return l.eachMapping(function(m){var g={generated:{line:m.generatedLine,column:m.generatedColumn}};m.source!=null&&(g.source=m.source,c!=null&&(g.source=e.relative(c,g.source)),g.original={line:m.originalLine,column:m.originalColumn},m.name!=null&&(g.name=m.name)),u.addMapping(g)}),l.sources.forEach(function(m){var g=m;c!==null&&(g=e.relative(c,m)),u._sources.has(g)||u._sources.add(g);var d=l.sourceContentFor(m);d!=null&&u.setSourceContent(m,d)}),u},o.prototype.addMapping=function(l){var c=e.getArg(l,"generated"),u=e.getArg(l,"original",null),m=e.getArg(l,"source",null),g=e.getArg(l,"name",null);this._skipValidation||this._validateMapping(c,u,m,g),m!=null&&(m=String(m),this._sources.has(m)||this._sources.add(m)),g!=null&&(g=String(g),this._names.has(g)||this._names.add(g)),this._mappings.add({generatedLine:c.line,generatedColumn:c.column,originalLine:u!=null&&u.line,originalColumn:u!=null&&u.column,source:m,name:g})},o.prototype.setSourceContent=function(l,c){var u=l;this._sourceRoot!=null&&(u=e.relative(this._sourceRoot,u)),c!=null?(this._sourcesContents||(this._sourcesContents=Object.create(null)),this._sourcesContents[e.toSetString(u)]=c):this._sourcesContents&&(delete this._sourcesContents[e.toSetString(u)],Object.keys(this._sourcesContents).length===0&&(this._sourcesContents=null))},o.prototype.applySourceMap=function(l,c,u){var m=c;if(c==null){if(l.file==null)throw new Error(`SourceMapGenerator.prototype.applySourceMap requires either an explicit source file, or the source map's "file" property. Both were omitted.`);m=l.file}var g=this._sourceRoot;g!=null&&(m=e.relative(g,m));var d=new r,y=new r;this._mappings.unsortedForEach(function(A){if(A.source===m&&A.originalLine!=null){var b=l.originalPositionFor({line:A.originalLine,column:A.originalColumn});b.source!=null&&(A.source=b.source,u!=null&&(A.source=e.join(u,A.source)),g!=null&&(A.source=e.relative(g,A.source)),A.originalLine=b.line,A.originalColumn=b.column,b.name!=null&&(A.name=b.name))}var S=A.source;S!=null&&!d.has(S)&&d.add(S);var E=A.name;E!=null&&!y.has(E)&&y.add(E)},this),this._sources=d,this._names=y,l.sources.forEach(function(A){var b=l.sourceContentFor(A);b!=null&&(u!=null&&(A=e.join(u,A)),g!=null&&(A=e.relative(g,A)),this.setSourceContent(A,b))},this)},o.prototype._validateMapping=function(l,c,u,m){if(c&&typeof c.line!="number"&&typeof c.column!="number")throw new Error("original.line and original.column are not numbers -- you probably meant to omit the original mapping entirely and only map the generated position. If so, pass null for the original mapping instead of an object with empty or null values.");if(!(l&&"line"in l&&"column"in l&&l.line>0&&l.column>=0&&!c&&!u&&!m)){if(l&&"line"in l&&"column"in l&&c&&"line"in c&&"column"in c&&l.line>0&&l.column>=0&&c.line>0&&c.column>=0&&u)return;throw new Error("Invalid mapping: "+JSON.stringify({generated:l,source:u,original:c,name:m}))}},o.prototype._serializeMappings=function(){for(var l=0,c=1,u=0,m=0,g=0,d=0,y="",A,b,S,E,x=this._mappings.toArray(),C=0,P=x.length;C0){if(!e.compareByGeneratedPositionsInflated(b,x[C-1]))continue;A+=","}A+=i.encode(b.generatedColumn-l),l=b.generatedColumn,b.source!=null&&(E=this._sources.indexOf(b.source),A+=i.encode(E-d),d=E,A+=i.encode(b.originalLine-1-m),m=b.originalLine-1,A+=i.encode(b.originalColumn-u),u=b.originalColumn,b.name!=null&&(S=this._names.indexOf(b.name),A+=i.encode(S-g),g=S)),y+=A}return y},o.prototype._generateSourcesContent=function(l,c){return l.map(function(u){if(!this._sourcesContents)return null;c!=null&&(u=e.relative(c,u));var m=e.toSetString(u);return Object.prototype.hasOwnProperty.call(this._sourcesContents,m)?this._sourcesContents[m]:null},this)},o.prototype.toJSON=function(){var l={version:this._version,sources:this._sources.toArray(),names:this._names.toArray(),mappings:this._serializeMappings()};return this._file!=null&&(l.file=this._file),this._sourceRoot!=null&&(l.sourceRoot=this._sourceRoot),this._sourcesContents&&(l.sourcesContent=this._generateSourcesContent(l.sources,l.sourceRoot)),l},o.prototype.toString=function(){return JSON.stringify(this.toJSON())},sourceMapGenerator.SourceMapGenerator=o,sourceMapGenerator}var sourceMapConsumer={},binarySearch={},hasRequiredBinarySearch;function requireBinarySearch(){return hasRequiredBinarySearch||(hasRequiredBinarySearch=1,function(i){i.GREATEST_LOWER_BOUND=1,i.LEAST_UPPER_BOUND=2;function e(r,s,o,a,l,c){var u=Math.floor((s-r)/2)+r,m=l(o,a[u],!0);return m===0?u:m>0?s-u>1?e(u,s,o,a,l,c):c==i.LEAST_UPPER_BOUND?s1?e(r,u,o,a,l,c):c==i.LEAST_UPPER_BOUND?u:r<0?-1:r}i.search=function(s,o,a,l){if(o.length===0)return-1;var c=e(-1,o.length,s,o,a,l||i.GREATEST_LOWER_BOUND);if(c<0)return-1;for(;c-1>=0&&a(o[c],o[c-1],!0)===0;)--c;return c}}(binarySearch)),binarySearch}var quickSort={},hasRequiredQuickSort;function requireQuickSort(){if(hasRequiredQuickSort)return quickSort;hasRequiredQuickSort=1;function i(s,o,a){var l=s[o];s[o]=s[a],s[a]=l}function e(s,o){return Math.round(s+Math.random()*(o-s))}function r(s,o,a,l){if(a=0){var S=this._originalMappings[b];if(g.column===void 0)for(var E=S.originalLine;S&&S.originalLine===E;)A.push({line:i.getArg(S,"generatedLine",null),column:i.getArg(S,"generatedColumn",null),lastColumn:i.getArg(S,"lastGeneratedColumn",null)}),S=this._originalMappings[++b];else for(var x=S.originalColumn;S&&S.originalLine===d&&S.originalColumn==x;)A.push({line:i.getArg(S,"generatedLine",null),column:i.getArg(S,"generatedColumn",null),lastColumn:i.getArg(S,"lastGeneratedColumn",null)}),S=this._originalMappings[++b]}return A},sourceMapConsumer.SourceMapConsumer=a;function l(m,g){var d=m;typeof m=="string"&&(d=i.parseSourceMapInput(m));var y=i.getArg(d,"version"),A=i.getArg(d,"sources"),b=i.getArg(d,"names",[]),S=i.getArg(d,"sourceRoot",null),E=i.getArg(d,"sourcesContent",null),x=i.getArg(d,"mappings"),C=i.getArg(d,"file",null);if(y!=this._version)throw new Error("Unsupported version: "+y);S&&(S=i.normalize(S)),A=A.map(String).map(i.normalize).map(function(P){return S&&i.isAbsolute(S)&&i.isAbsolute(P)?i.relative(S,P):P}),this._names=r.fromArray(b.map(String),!0),this._sources=r.fromArray(A,!0),this._absoluteSources=this._sources.toArray().map(function(P){return i.computeSourceURL(S,P,g)}),this.sourceRoot=S,this.sourcesContent=E,this._mappings=x,this._sourceMapURL=g,this.file=C}l.prototype=Object.create(a.prototype),l.prototype.consumer=a,l.prototype._findSourceIndex=function(m){var g=m;if(this.sourceRoot!=null&&(g=i.relative(this.sourceRoot,g)),this._sources.has(g))return this._sources.indexOf(g);var d;for(d=0;d1&&(F.source=E+N[1],E+=N[1],F.originalLine=b+N[2],b=F.originalLine,F.originalLine+=1,F.originalColumn=S+N[3],S=F.originalColumn,N.length>4&&(F.name=x+N[4],x+=N[4])),T.push(F),typeof F.originalLine=="number"&&M.push(F)}o(T,i.compareByGeneratedPositionsDeflated),this.__generatedMappings=T,o(M,i.compareByOriginalPositions),this.__originalMappings=M},l.prototype._findMapping=function(g,d,y,A,b,S){if(g[y]<=0)throw new TypeError("Line must be greater than or equal to 1, got "+g[y]);if(g[A]<0)throw new TypeError("Column must be greater than or equal to 0, got "+g[A]);return e.search(g,d,b,S)},l.prototype.computeColumnSpans=function(){for(var g=0;g=0){var A=this._generatedMappings[y];if(A.generatedLine===d.generatedLine){var b=i.getArg(A,"source",null);b!==null&&(b=this._sources.at(b),b=i.computeSourceURL(this.sourceRoot,b,this._sourceMapURL));var S=i.getArg(A,"name",null);return S!==null&&(S=this._names.at(S)),{source:b,line:i.getArg(A,"originalLine",null),column:i.getArg(A,"originalColumn",null),name:S}}}return{source:null,line:null,column:null,name:null}},l.prototype.hasContentsOfAllSources=function(){return this.sourcesContent?this.sourcesContent.length>=this._sources.size()&&!this.sourcesContent.some(function(g){return g==null}):!1},l.prototype.sourceContentFor=function(g,d){if(!this.sourcesContent)return null;var y=this._findSourceIndex(g);if(y>=0)return this.sourcesContent[y];var A=g;this.sourceRoot!=null&&(A=i.relative(this.sourceRoot,A));var b;if(this.sourceRoot!=null&&(b=i.urlParse(this.sourceRoot))){var S=A.replace(/^file:\/\//,"");if(b.scheme=="file"&&this._sources.has(S))return this.sourcesContent[this._sources.indexOf(S)];if((!b.path||b.path=="/")&&this._sources.has("/"+A))return this.sourcesContent[this._sources.indexOf("/"+A)]}if(d)return null;throw new Error('"'+A+'" is not in the SourceMap.')},l.prototype.generatedPositionFor=function(g){var d=i.getArg(g,"source");if(d=this._findSourceIndex(d),d<0)return{line:null,column:null,lastColumn:null};var y={source:d,originalLine:i.getArg(g,"line"),originalColumn:i.getArg(g,"column")},A=this._findMapping(y,this._originalMappings,"originalLine","originalColumn",i.compareByOriginalPositions,i.getArg(g,"bias",a.GREATEST_LOWER_BOUND));if(A>=0){var b=this._originalMappings[A];if(b.source===y.source)return{line:i.getArg(b,"generatedLine",null),column:i.getArg(b,"generatedColumn",null),lastColumn:i.getArg(b,"lastGeneratedColumn",null)}}return{line:null,column:null,lastColumn:null}},sourceMapConsumer.BasicSourceMapConsumer=l;function u(m,g){var d=m;typeof m=="string"&&(d=i.parseSourceMapInput(m));var y=i.getArg(d,"version"),A=i.getArg(d,"sections");if(y!=this._version)throw new Error("Unsupported version: "+y);this._sources=new r,this._names=new r;var b={line:-1,column:0};this._sections=A.map(function(S){if(S.url)throw new Error("Support for url field in sections not implemented.");var E=i.getArg(S,"offset"),x=i.getArg(E,"line"),C=i.getArg(E,"column");if(x=0;u--)this.prepend(c[u]);else if(c[o]||typeof c=="string")this.children.unshift(c);else throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+c);return this},a.prototype.walk=function(c){for(var u,m=0,g=this.children.length;m0){for(u=[],m=0;m0&&(S+=", "+E.join(", "));var x=0;Object.keys(this.aliases).forEach(function(k){var I=b.aliases[k];I.children&&I.referenceCount>1&&(S+=", alias"+ ++x+"="+k,I.children[0]="alias"+x)}),this.lookupPropertyFunctionIsUsed&&(S+=", "+this.lookupPropertyFunctionVarDeclaration());var C=["container","depth0","helpers","partials","data"];(this.useBlockParams||this.useDepths)&&C.push("blockParams"),this.useDepths&&C.push("depths");var P=this.mergeSource(S);return A?(C.push(P),Function.apply(this,C)):this.source.wrap(["function(",C.join(","),`) { `,P,"}"])},mergeSource:function(A){var b=this.environment.isSimple,S=!this.forceBuffer,E=void 0,x=void 0,C=void 0,P=void 0;return this.source.each(function(k){k.appendToBuffer?(C?k.prepend(" + "):C=k,P=k):(C&&(x?C.prepend("buffer += "):E=!0,P.add(";"),C=P=void 0),x=!0,b||(S=!1))}),S?C?(C.prepend("return "),P.add(";")):x||this.source.push('return "";'):(A+=", buffer = "+(E?"":this.initializeBuffer()),C?(C.prepend("return buffer + "),P.add(";")):this.source.push("return buffer;")),A&&this.source.prepend("var "+A.substring(2)+(E?"":`; `)),this.source.merge()},lookupPropertyFunctionVarDeclaration:function(){return` lookupProperty = container.lookupProperty || function(parent, propertyName) { if (Object.prototype.hasOwnProperty.call(parent, propertyName)) { return parent[propertyName]; } return undefined } `.trim()},blockValue:function(A){var b=this.aliasable("container.hooks.blockHelperMissing"),S=[this.contextName(0)];this.setupHelperArgs(A,0,S);var E=this.popStack();S.splice(1,0,E),this.push(this.source.functionCall(b,"call",S))},ambiguousBlockValue:function(){var A=this.aliasable("container.hooks.blockHelperMissing"),b=[this.contextName(0)];this.setupHelperArgs("",0,b,!0),this.flushInline();var S=this.topStack();b.splice(1,0,S),this.pushSource(["if (!",this.lastHelper,") { ",S," = ",this.source.functionCall(A,"call",b),"}"])},appendContent:function(A){this.pendingContent?A=this.pendingContent+A:this.pendingLocation=this.source.currentLocation,this.pendingContent=A},append:function(){if(this.isInline())this.replaceStack(function(b){return[" != null ? ",b,' : ""']}),this.pushSource(this.appendToBuffer(this.popStack()));else{var A=this.popStack();this.pushSource(["if (",A," != null) { ",this.appendToBuffer(A,void 0,!0)," }"]),this.environment.isSimple&&this.pushSource(["else { ",this.appendToBuffer("''",void 0,!0)," }"])}},appendEscaped:function(){this.pushSource(this.appendToBuffer([this.aliasable("container.escapeExpression"),"(",this.popStack(),")"]))},getContext:function(A){this.lastContext=A},pushContext:function(){this.pushStackLiteral(this.contextName(this.lastContext))},lookupOnContext:function(A,b,S,E){var x=0;!E&&this.options.compat&&!this.lastContext?this.push(this.depthedLookup(A[x++])):this.pushContext(),this.resolvePath("context",A,x,b,S)},lookupBlockParam:function(A,b){this.useBlockParams=!0,this.push(["blockParams[",A[0],"][",A[1],"]"]),this.resolvePath("context",b,1)},lookupData:function(A,b,S){A?this.pushStackLiteral("container.data(data, "+A+")"):this.pushStackLiteral("data"),this.resolvePath("data",b,0,!0,S)},resolvePath:function(A,b,S,E,x){var C=this;if(this.options.strict||this.options.assumeObjects){this.push(d(this.options.strict&&x,this,b,S,A));return}for(var P=b.length;Sthis.stackVars.length&&this.stackVars.push("stack"+this.stackSlot),this.topStackName()},topStackName:function(){return"stack"+this.stackSlot},flushInline:function(){var A=this.inlineStack;this.inlineStack=[];for(var b=0,S=A.length;b64&&i<91?i-65:i>96&&i<123?i-71:i>47&&i<58?i+4:i===43?62:i===47?63:0}function decode(i,e){for(var r=i.replace(/[^A-Za-z0-9\+\/]/g,""),s=r.length,o=e?Math.ceil((s*3+1>>2)/e)*e:s*3+1>>2,a=new Uint8Array(o),l,c,u=0,m=0,g=0;g>>(16>>>l&24)&255;u=0}return a}var base64={decode},fetch$1=function(i,e){return new Promise(function(r,s){var o=new XMLHttpRequest;e&&(o.responseType=e),o.open("GET",i),o.onload=function(){o.status===200?r(o.response):s(Error(o.statusText))},o.onerror=function(){s(Error("Network Error"))},o.send()})};(function(i){var e=base64,r=fetch$1;function s(T){return function(F){return typeof F=="string"&&T.test(F)}}function o(T,F){return typeof T=="string"?T+F:typeof T=="function"?T(F):F}function a(T,F,D,N){var O=l(F)?c:u(F)?m:g(F)?d:y(F)?A:b(F)?S:E(F)?x:C(F)?P:k(F)?I:null,B=D||{};return O?O(T,F,B):N?Promise.resolve(N):Promise.reject("Source not valid ("+F+")")}a.fetch=r;function l(T){return T instanceof ArrayBuffer}function c(T,F,D){return new Promise(function(N,O){T.decodeAudioData(F,function(B){N(B)},function(){O("Can't decode audio data ("+F.slice(0,30)+"...)")})})}var u=s(/\.(mp3|wav|ogg)(\?.*)?$/i);function m(T,F,D){var N=o(D.from,F);return a(T,a.fetch(N,"arraybuffer"),D)}function g(T){return T&&typeof T.then=="function"}function d(T,F,D){return F.then(function(N){return a(T,N,D)})}var y=Array.isArray;function A(T,F,D){return Promise.all(F.map(function(N){return a(T,N,D,N)}))}function b(T){return T&&typeof T=="object"}function S(T,F,D){var N={},O=Object.keys(F).map(function(B){if(D.only&&D.only.indexOf(B)===-1)return null;var V=F[B];return a(T,V,D,V).then(function(R){N[B]=R})});return Promise.all(O).then(function(){return N})}var E=s(/\.json(\?.*)?$/i);function x(T,F,D){var N=o(D.from,F);return a(T,a.fetch(N,"text").then(JSON.parse),D)}var C=s(/^data:audio/);function P(T,F,D){var N=F.indexOf(",");return a(T,e.decode(F.slice(N+1)).buffer,D)}var k=s(/\.js(\?.*)?$/i);function I(T,F,D){var N=o(D.from,F);return a(T,a.fetch(N,"text").then(M),D)}function M(T){var F=T.indexOf("MIDI.Soundfont.");if(F<0)throw Error("Invalid MIDI.js Soundfont format");F=T.indexOf("=",F)+2;var D=T.lastIndexOf(",");return JSON.parse(T.slice(F,D)+"}")}i.exports&&(i.exports=a),typeof window<"u"&&(window.loadAudio=a)})(lib$1);var libExports={},lib={get exports(){return libExports},set exports(i){libExports=i}},adsr=ADSR$1;function ADSR$1(i){var e=i.createGain(),r=e._voltage=getVoltage(i),s=scale(r),o=scale(r),a=scale(r);return e._startAmount=scale(o),e._endAmount=scale(a),e._multiplier=scale(s),e._multiplier.connect(e),e._startAmount.connect(e),e._endAmount.connect(e),e.value=s.gain,e.startValue=o.gain,e.endValue=a.gain,e.startValue.value=0,e.endValue.value=0,Object.defineProperties(e,props),e}var props={attack:{value:0,writable:!0},decay:{value:0,writable:!0},sustain:{value:1,writable:!0},release:{value:0,writable:!0},getReleaseDuration:{value:function(){return this.release}},start:{value:function(i){var e=this._multiplier.gain,r=this._startAmount.gain,s=this._endAmount.gain;this._voltage.start(i),this._decayFrom=this._decayFrom=i+this.attack,this._startedAt=i;var o=this.sustain;e.cancelScheduledValues(i),r.cancelScheduledValues(i),s.cancelScheduledValues(i),s.setValueAtTime(0,i),this.attack?(e.setValueAtTime(0,i),e.linearRampToValueAtTime(1,i+this.attack),r.setValueAtTime(1,i),r.linearRampToValueAtTime(0,i+this.attack)):(e.setValueAtTime(1,i),r.setValueAtTime(0,i)),this.decay&&e.setTargetAtTime(o,this._decayFrom,getTimeConstant(this.decay))}},stop:{value:function(i,e){e&&(i=i-this.release);var r=i+this.release;if(this.release){var s=this._multiplier.gain,o=this._startAmount.gain,a=this._endAmount.gain;s.cancelScheduledValues(i),o.cancelScheduledValues(i),a.cancelScheduledValues(i);var l=getTimeConstant(this.release);if(this.attack&&i=e&&(m=e),m}var ADSR=adsr,EMPTY={},DEFAULTS={gain:1,attack:.01,decay:.1,sustain:.9,release:.3,loop:!1,cents:0,loopStart:0,loopEnd:0};function SamplePlayer(i,e,r){var s=!1,o=0,a={},l=i.createGain();l.gain.value=1;var c=Object.assign({},DEFAULTS,r),u={context:i,out:l,opts:c};return e instanceof AudioBuffer?u.buffer=e:u.buffers=e,u.start=function(d,y,A){if(u.buffer&&d!==null)return u.start(null,d,y);var b=d?u.buffers[d]:u.buffer;if(b){if(!s){console.warn("SamplePlayer not connected to any node.");return}}else{console.warn("Buffer "+d+" not found.");return}var S=A||EMPTY;y=Math.max(i.currentTime,y||0),u.emit("start",y,d,S);var E=g(d,b,S);return E.id=m(d,E),E.env.start(y),E.source.start(y),u.emit("started",y,E.id,E),S.duration&&E.stop(y+S.duration),E},u.play=function(d,y,A){return u.start(d,y,A)},u.stop=function(d,y){var A;return y=y||Object.keys(a),y.map(function(b){return A=a[b],A?(A.stop(d),A.id):null})},u.connect=function(d){return s=!0,l.connect(d),u},u.emit=function(d,y,A,b){u.onevent&&u.onevent(d,y,A,b);var S=u["on"+d];S&&S.forEach(E=>{E(y,A,b)})},u;function m(d,y){return y.id=o++,a[y.id]=y,y.startTime=i.currentTime,y.source.onended=function(){var A=i.currentTime;y.source.disconnect(),y.env.disconnect(),y.disconnect(),u.emit("ended",A,y.id,y)},y.id}function g(d,y,A){var b=i.createGain();return b.gain.value=0,b.connect(l),b.env=envelope(i,A,c),b.env.connect(b.gain),b.source=i.createBufferSource(),b.source.buffer=y,b.source.connect(b),b.source.loop=A.loop||c.loop,b.source.playbackRate.value=centsToRate(A.cents||c.cents),b.source.loopStart=A.loopStart||c.loopStart,b.source.loopEnd=A.loopEnd||c.loopEnd,b.stop=function(S){var E=S||i.currentTime;u.emit("stop",E,d);var x=b.env.stop(E);b.source.stop(x)},b}}function isNum$1(i){return typeof i=="number"}var PARAMS=["attack","decay","sustain","release"];function envelope(i,e,r){var s=ADSR(i),o=e.adsr||r.adsr;return PARAMS.forEach(function(a,l){o?s[a]=o[l]:s[a]=e[a]||r[a]}),s.value.value=isNum$1(e.gain)?e.gain:isNum$1(r.gain)?r.gain:1,s}function centsToRate(i){return i?Math.pow(2,i/1200):1}var player=SamplePlayer,events=function(i){return i.on=function(e,r){if(arguments.length===1&&typeof e=="function")return i.on("event",e);var s="on"+e;return i[s]?i[s].push(r):i[s]=[r],i},i},REGEX$1=/^([a-gA-G])(#{1,}|b{1,}|x{1,}|)(-?\d*)\s*(.*)\s*$/;function regex$1(){return REGEX$1}var SEMITONES$1=[0,2,4,5,7,9,11];function parse$1(i,e,r){if(typeof i!="string")return null;var s=REGEX$1.exec(i);if(!s||!e&&s[4])return null;var o={letter:s[1].toUpperCase(),acc:s[2].replace(/x/g,"##")};return o.pc=o.letter+o.acc,o.step=(o.letter.charCodeAt(0)+3)%7,o.alt=o.acc[0]==="b"?-o.acc.length:o.acc.length,o.chroma=SEMITONES$1[o.step]+o.alt,s[3]&&(o.oct=+s[3],o.midi=o.chroma+12*(o.oct+1),o.freq=midiToFreq$1(o.midi,r)),e&&(o.tonicOf=s[4]),o}function midiToFreq$1(i,e){return Math.pow(2,(i-69)/12)*(e||440)}var parser={parse:parse$1,regex:regex$1,midiToFreq:midiToFreq$1},FNS=["letter","acc","pc","step","alt","chroma","oct","midi","freq"];FNS.forEach(function(i){parser[i]=function(e){var r=parse$1(e);return r&&typeof r[i]<"u"?r[i]:null}});var noteParser$1=parser,note$2=noteParser$1,isMidi=function(i){return i!==null&&i!==[]&&i>=0&&i<129},toMidi=function(i){return isMidi(i)?+i:note$2.midi(i)},notes$1=function(i){if(i.buffers){var e=i.opts.map,r=typeof e=="function"?e:toMidi,s=function(a){return a?r(a)||a:null};i.buffers=mapBuffers(i.buffers,s);var o=i.start;i.start=function(a,l,c){var u=s(a),m=u%1;return m&&(u=Math.floor(u),c=Object.assign(c||{},{cents:Math.floor(m*100)})),o(u,l,c)}}return i};function mapBuffers(i,e){return Object.keys(i).reduce(function(r,s){return r[e(s)]=i[s],r},{})}var isArr=Array.isArray,isObj=function(i){return i&&typeof i=="object"},OPTS={},scheduler=function(i){return i.schedule=function(e,r){var s=i.context.currentTime,o=e"u"?null:i.step?build(i.step,i.alt,i.oct):i<0||i>6?null:LETTERS.charAt(i)+accStr(e)+octStr(r)}function midi(i){if((isNum(i)||isStr(i))&&i>=0&&i<128)return+i;var e=parse(i);return e&&isDef(e.midi)?e.midi:null}function freq(i,e){var r=midi(i);return r===null?null:midiToFreq(r,e)}function letter(i){return(parse(i)||{}).letter}function acc(i){return(parse(i)||{}).acc}function pc(i){return(parse(i)||{}).pc}function step(i){return(parse(i)||{}).step}function alt(i){return(parse(i)||{}).alt}function chroma(i){return(parse(i)||{}).chroma}function oct(i){return(parse(i)||{}).oct}const noteParser=Object.freeze(Object.defineProperty({__proto__:null,acc,alt,build,chroma,freq,letter,midi,oct,parse,pc,regex,step},Symbol.toStringTag,{value:"Module"})),require$$0=getAugmentedNamespace(noteParser);var legacy,hasRequiredLegacy;function requireLegacy(){if(hasRequiredLegacy)return legacy;hasRequiredLegacy=1;var i=require$$0;function e(o,a){if(console.warn("new Soundfont() is deprected"),console.log("Please use Soundfont.instrument() instead of new Soundfont().instrument()"),!(this instanceof e))return new e(o);this.nameToUrl=a||e.nameToUrl,this.ctx=o,this.instruments={},this.promises=[]}e.prototype.onready=function(o){console.warn("deprecated API"),console.log("Please use Promise.all(Soundfont.instrument(), Soundfont.instrument()).then() instead of new Soundfont().onready()"),Promise.all(this.promises).then(o)},e.prototype.instrument=function(o,a){console.warn("new Soundfont().instrument() is deprecated."),console.log("Please use Soundfont.instrument() instead.");var l=this.ctx;if(o=o||"default",o in this.instruments)return this.instruments[o];var c={name:o,play:s(l,a)};if(this.instruments[o]=c,o!=="default"){var u=e.instrument(l,o,a).then(function(m){return c.play=m.play,c});this.promises.push(u),c.onready=function(m){console.warn("onready is deprecated. Use Soundfont.instrument().then()"),u.then(m)}}else c.onready=function(m){console.warn("onready is deprecated. Use Soundfont.instrument().then()"),m()};return c};function r(o,a,l){return console.warn("Soundfont.loadBuffers is deprecate."),console.log("Use Soundfont.instrument(..) and get buffers properties from the result."),e.instrument(o,a,l).then(function(c){return c.buffers})}e.loadBuffers=r;function s(o,a){return a=a||{},function(l,c,u,m){console.warn("The oscillator player is deprecated."),console.log("Starting with version 0.9.0 you will have to wait until the soundfont is loaded to play sounds.");var g=l>0&&l<129?+l:i.midi(l),d=g?i.midiToFreq(g,440):null;if(d){u=u||.2,m=m||{};var y=m.destination||a.destination||o.destination,A=m.vcoType||a.vcoType||"sine",b=m.gain||a.gain||.4,S=o.createOscillator();S.type=A,S.frequency.value=d;var E=o.createGain();return E.gain.value=b,S.connect(E),E.connect(y),S.start(c),u>0&&S.stop(c+u),S}}}return e.noteToMidi=i.midi,legacy=e,legacy}(function(i){var e=libExports$1,r=libExports;function s(c,u,m){if(arguments.length===1)return function(b,S){return s(c,b,S)};var g=m||{},d=g.isSoundfontURL||o,y=g.nameToUrl||a,A=d(u)?u:y(u,g.soundfont,g.format);return e(c,A,{only:g.only||g.notes}).then(function(b){var S=r(c,b,g).connect(g.destination?g.destination:c.destination);return S.url=A,S.name=u,S})}function o(c){return/\.js(\?.*)?$/i.test(c)}function a(c,u,m){return m=m==="ogg"?m:"mp3",u=u==="FluidR3_GM"?u:"MusyngKite","https://gleitz.github.io/midi-js-soundfonts/"+u+"/"+c+"-"+m+".js"}var l=requireLegacy();l.instrument=s,l.nameToUrl=a,i.exports&&(i.exports=l),typeof window<"u"&&(window.Soundfont=l)})(lib$2);NoteEnum.C,NoteEnum.D,NoteEnum.E,NoteEnum.F,NoteEnum.G,NoteEnum.A,NoteEnum.B;const selectionContainer="_selectionContainer_etp0s_1",position="_position_etp0s_8",note$1="_note_etp0s_11",selectBox="_selectBox_etp0s_14",selectHandle="_selectHandle_etp0s_20",selectHandleRight="_selectHandleRight_etp0s_34",playIng="_playIng_etp0s_39",disable="_disable_etp0s_43",line="_line_etp0s_46",eyeLine="_eyeLine_etp0s_58",lineStaff="_lineStaff_etp0s_61",lineJianPu="_lineJianPu_etp0s_64",scoreItem="_scoreItem_etp0s_70",dotWrap="_dotWrap_etp0s_107",noteFollow="_noteFollow_etp0s_122",linePC="_linePC_etp0s_158",noteDot="_noteDot_etp0s_162",staveBg="_staveBg_etp0s_170",styles$h={selectionContainer,position,note:note$1,selectBox,selectHandle,selectHandleRight,playIng,disable,line,eyeLine,lineStaff,lineJianPu,scoreItem,dotWrap,noteFollow,linePC,noteDot,staveBg},noteMove="_noteMove_6dz5a_1",activeModel="_activeModel_6dz5a_14",toolBox="_toolBox_6dz5a_17",moveDisabled="_moveDisabled_6dz5a_33",hideTool="_hideTool_6dz5a_36",rightHideIcon$1="_rightHideIcon_6dz5a_39",styles$g={noteMove,activeModel,toolBox,moveDisabled,hideTool,rightHideIcon:rightHideIcon$1},tooltip="",TooltipSfc="",buttonGroup="",ButtonGroupSfc="",rightHideIcon="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADoAAAB4CAYAAACjK+FPAAAAAXNSR0IArs4c6QAAA9hJREFUeF7tnctrE1EUxr+J7wfqRsdCA2okIhMfNCXZVKyKWOzSZVbdCS5KcetON6J/RKEQBKFLwVWpUgvddNFVNkWbGrptSCsVm8otmTDpTDptb+49cx8Xumrn3PM735m5Z5r2HAf86zyAqwAuAjgF4HTr6xi/6Z5Z+Occ0dQZANdbgOeOaEPmZYcGPQHgJoAbAFIyPeXc61CgaQAeAAar2joQKEvv2wAyqtEF/I0FPQ4gD+CKwpDM9X1BmZJFAJcVh4wFZfcje+josLoqyh4893UgbDFEgp4E8AQAuz91WZGgOqWsL1QI9CyAxwCOWjElNQNCoHcAXEuqtxx+hUCftgpyDpuJvLQD9BKAB4l0k9+pDtBbALL8NhNpoQOUVUGql3rdotwB+hDAhUTqwe9UB+gzAKxY0HG1QdlL9KiOhHtLQPYyPWJB1Y9AO3WtouqLuUtgFdVEyDaGVdQqqmgEbOoqKlxXt62iVlFFI2BTV1Hh7MPIpq5NXUUjYFNXUeHsU9emLmnqzszMvCgUCqOO4zgLCwtfhoeHP3M6lDxFl5aWXuZyuecBsJ3Jycn3Y2NjPzhgkwUaAbnLtry8/D2TyXzQArQbJIObm5srDw0NfVIedD/IRqPx23XdV5ubm02lQWMga4ODgxOVSuUPByT9b+olQdKCSoSkA5UMSQNKACkflAhSLighpDxQYkg5oCsrK2/S6XQh6hxsNBq9OifjjlmxtW61Wn3T399PDSle0e3t7elUKhX6S+6NjY1aPp/vRcUTp6T/fbGKNpvNacdxQqD1er3qed7E6urq34N6yvlzYkFrtdrbvr6+e1FO1uv1X57nvZYEKxaUAa6trb1zXfcuMax4UAZYqVTGs9ks+8+L0JKkrBzQBMDKAyWGlQtKCCsflAiWBpQAlg5UMiwtqERYetA42PX19Z+u645vbW3tcJSByQCNg52dnZ3i/PwlOaD7wWr1kYSfllHlYrlc/lgqlb5pkbpBiPn5+dLAwMAI+9hwcXHxa7FYnOKAFP/izelcLy9P1j3aS7I9tiyowOCSmLaKkoRd4KZWUYHBJTFtFSUJu8BNraICg0ti2ipKEnaBm1pFBQaXxLRVlCTsAje1igoMLolpqyhJ2AVuahUVGFwS021FjWncxMJsRCsuBmpMczVj2uUZ0wDRmJaW7D41okkpA821JgqQHHYCN22fo/4erJHwI8WmChwkPiFQdpERraEZqDHNvhmsEe3b/ZzXKYUj71Ef1JgRCwzYiKEZQWW1H4MSPKO0H2wThDViVFEQWPvhU1HlVnCcGBsl5o8US9Q4sf9BGvvA8pV1NwAAAABJRU5ErkJggg==";let extStyleConfigJson={};window.innerWidth||document.documentElement.clientWidth||document.body.clientWidth;const showToolBox=ref(!0),moveData=reactive({open:!1,zoom:1,partIndex:"0",hasExtJson:!1,isWeb:!1,modelList:[],activeIndex:-1,sw:0,tool:{isAddAndSub:!1},noteCoords:[]}),initNoteCoord=()=>{const i=Array.from(document.querySelectorAll(".node-dot"));moveData.noteCoords=i.map(e=>{var s;const r=((s=e==null?void 0:e.getBoundingClientRect)==null?void 0:s.call(e))||{x:0,y:0};return{x:r.x,y:r.y}})},computedDistance=(i,e)=>{let r=-1,s=0,o,a,l;return moveData.noteCoords.forEach((c,u)=>{o=Math.abs(c.x-i),a=Math.abs(c.y-e),l=Math.sqrt(o*o+a*a),l=Number(l.toFixed(0)),l!==0&&(r===-1||l{setEleId(d,"temp"+l),l++});let c=1;[...r].forEach(d=>{setEleId(d,"text"+c),c++});let u=1;[...s].forEach(d=>{setEleId(d,"section"+u),u++});let m=1;[...o].forEach(d=>{setEleId(d,"repet"+m),m++});let g=1;[...a].forEach(d=>{setEleId(d,"line"+g),g++})}function setEleId(i,e){if(!i||!e)return;i.getAttribute("id")||i.setAttribute("id",e),createModelBox(i)}function createModelBox(i){var c;const e=((c=document.getElementById("musicAndSelection"))==null?void 0:c.getBoundingClientRect())||{x:0,y:0},r=e.x||0,s=e.y||0,o=i.getBoundingClientRect(),a={left:o.x-r+"px",top:o.y-s+"px",width:o.width+"px",height:o.height+"px"},l=i.getAttribute("class");moveData.modelList.push({id:i.getAttribute("id"),bbox:a,type:l,isMove:!1,left:o.left,top:o.top,width:o.width,height:o.height,x:0,y:0,zoom:state$1.zoom,isDelete:!1,d2:getLineGroupPathDx(i),dx:0})}function getBox(i){var a;if(!i)return{};const e=((a=document.getElementById("musicAndSelection"))==null?void 0:a.getBoundingClientRect())||{x:0,y:0},r=e.x||0,s=e.y||0,o=i.getBoundingClientRect();return{left:o.x-r,top:o.y-s,width:o.width,height:o.height}}const filterMoveData=async()=>{const i=state$1.examSongId;if(i){const e=window.fontSize,r=moveData.modelList.filter(o=>o.isMove).map(o=>{var d,y,A,b;const a=o.left+o.x,l=o.top+o.y,c=computedDistance(a,l),u=a-((d=moveData.noteCoords[c])==null?void 0:d.x),m=l-((y=moveData.noteCoords[c])==null?void 0:y.y);let g={id:o.id,isMove:o.isMove,isDelete:o.isDelete,x:o.x,y:o.y,xRem:Math.abs(o.x/e),yRem:Math.abs(o.y/e),zoom:o.zoom,w:moveData.sw,type:o.type,noteIdx:c,noteRelativeX:u,noteRelativeY:m};if(o.type==="vf-lineGroup"&&(g.dx=o.dx),o.id.includes("text")){const S=((b=(A=document.querySelector("#"+o.id))==null?void 0:A.querySelector("text"))==null?void 0:b.innerHTML)||"";g.textContent=S}return g});extStyleConfigJson[moveData.partIndex]=r,console.log("🚀 ~ extStyleConfigJson",extStyleConfigJson);const s=await request.post("/musicSheet/img",{requestType:"json",data:{id:i,extStyleConfigJson:JSON.stringify(extStyleConfigJson)}});s&&s.code==200&&showToast("保存成功"),clearActiveModel()}},dragData={open:!1,startX:0,startY:0,x:0,y:0,repeatEdit:!1},undoData=reactive({undoList:[],redoList:[],activeItem:null});function onDown(i){const e=i.target,r=moveData.modelList.findIndex(s=>s.id===e.dataset.id);if(r>-1){const s=moveData.modelList[r];moveData.activeIndex=r,dragData.startX=i.clientX,dragData.startY=i.clientY,dragData.x=s.x,dragData.y=s.y,dragData.repeatEdit=s.noteIdx>=0,document.onmousemove=onMove,document.onmouseup=onUp,dragData.open=!0,s.type==="vf-lineGroup"?moveData.tool.isAddAndSub=!0:moveData.tool.isAddAndSub=!1,undoData.activeItem={...s};return}moveData.activeIndex=-1}function onMove(i){if(dragData.open){const e=i.clientX-dragData.startX+dragData.x,r=i.clientY-dragData.startY+dragData.y;setModelPostion(moveData.modelList[moveData.activeIndex],e,r,dragData.repeatEdit)}}function onUp(i){document.onmousemove=null,document.onmouseup=null,dragData.open=!1;const e=i.clientX-dragData.startX+dragData.x,r=i.clientY-dragData.startY+dragData.y;(e||r)&&(moveData.modelList[moveData.activeIndex].isMove=!0,moveData.modelList[moveData.activeIndex].x=e,moveData.modelList[moveData.activeIndex].y=r,undoData.activeItem&&undoData.undoList.push({...undoData.activeItem})),undoData.activeItem=null}const renderSvgItem=i=>{if(setModelPostion(i,i.x,i.y),i.isDelete){const e=document.querySelector("#"+i.id);e&&(e.style.display="none")}else{const e=document.querySelector("#"+i.id);e&&(e.style.display="")}};async function setModelPostion(i,e,r,s){var o;if(i){const a=document.querySelector("#"+i.id),l=document.querySelector(`[data-id=${i.id}]`);if(e===0&&r===0)a&&a.removeAttribute("transform"),l&&(l.style.transform="");else{let c=e,u=r;if(i.noteIdx>=0&&!s){moveData.noteCoords.length||await initNoteCoord();const m=moveData.noteCoords[i.noteIdx].x+i.noteRelativeX,g=moveData.noteCoords[i.noteIdx].y+i.noteRelativeY,d=((o=document.getElementById(i.id))==null?void 0:o.getBoundingClientRect())||{x:0,y:0};c=m-d.x,u=g-d.y,a&&a.setAttribute("transform",`translate(${c/moveData.zoom}, ${u/moveData.zoom})`),l&&(l.style.transform=`translate(${c}px, ${u}px)`)}else a&&a.setAttribute("transform",`translate(${c/moveData.zoom}, ${u/moveData.zoom})`),l&&(l.style.transform=`translate(${c}px, ${u}px)`)}}}const handleDeleteMoveNote=()=>{const i=moveData.modelList[moveData.activeIndex];if(i){moveData.modelList[moveData.activeIndex].isMove=!0,undoData.undoList.push({...moveData.modelList[moveData.activeIndex]}),moveData.modelList[moveData.activeIndex].isDelete=!i.isDelete;const e=document.querySelector("#"+i.id);e&&(e.style.display=moveData.modelList[moveData.activeIndex].isDelete?"none":"")}else showToast("选中需要删除的元素")},resetMoveNote=()=>{for(let i=0;i{if(!["add","sub"].includes(i))return;const e=moveData.modelList[moveData.activeIndex];if(!e||e.type!=="vf-lineGroup")return;e.isMove=!0;const r=i==="add"?10:-10;undoData.undoList.push({...moveData.modelList[moveData.activeIndex]}),moveData.modelList[moveData.activeIndex].dx=e.dx+r,renderLineGroup(moveData.modelList[moveData.activeIndex])};function getLineGroupPathDx(i){var r,s,o,a;if(!i)return 0;const e=i.querySelectorAll("path");if(e!=null&&e.length)for(let l=0;l{const i=undoData.undoList.pop();if(i){const e=moveData.modelList.findIndex(r=>r.id===i.id);e>-1&&(moveData.modelList[e]=i,renderSvgItem(moveData.modelList[e]),i.type==="vf-lineGroup"&&renderLineGroup(i))}},renderForMoveData=()=>{if(state$1.extStyleConfigJson)try{extStyleConfigJson=JSON.parse(state$1.extStyleConfigJson)}catch(e){extStyleConfigJson={}}if(!extStyleConfigJson||!(extStyleConfigJson!=null&&extStyleConfigJson[moveData.partIndex])){initSvgId();return}else initSvgId();const i=extStyleConfigJson==null?void 0:extStyleConfigJson[moveData.partIndex];i&&Array.isArray(i)&&nextTick(()=>{console.log("🚀 ~ list",i),i.forEach(e=>{var s,o,a,l,c,u,m;let r=moveData.modelList.findIndex(g=>g.id===e.id);if(e.type==="vf-text"&&e.textContent){let g=((a=(o=document.querySelector("#"+((s=moveData.modelList[r])==null?void 0:s.id)))==null?void 0:o.querySelector("text"))==null?void 0:a.innerHTML)||"",d=r,y=!1,A=r,b=r;if(g!==e.textContent)for(;!y;){let S=moveData.modelList[A]&&((c=(l=document.querySelector("#"+moveData.modelList[A].id))==null?void 0:l.querySelector("text"))==null?void 0:c.innerHTML)||"",E=moveData.modelList[b]&&((m=(u=document.querySelector("#"+moveData.modelList[b].id))==null?void 0:u.querySelector("text"))==null?void 0:m.innerHTML)||"";S===e.textContent||E===e.textContent?(y=!0,d=S===e.textContent?A:b):(!S&&!E&&(y=!0,d=-1),A=A-1,b=b+1)}r=d,e.id=`text${d+1}`}r>-1&&(moveData.modelList[r]={...moveData.modelList[r],...e},renderSvgItem(moveData.modelList[r]),e.type==="vf-lineGroup"&&renderLineGroup(moveData.modelList[r]))})})},MoveMusicScore=defineComponent({name:"move-music-score",setup(){moveData.zoom=state$1.zoom;const e=getQuery().isMove==="1";return console.log("🚀 ~ isOpen:",e),onMounted(()=>{nextTick(()=>initNoteCoord());const r=document.getElementById("toolBox");r&&document.body.appendChild(r)}),()=>createVNode("div",{class:[moveData.open?"":styles$g.moveDisabled]},[createVNode("div",{id:"toolBox"},[createVNode("div",{class:[styles$g.toolBox,!showToolBox.value&&styles$g.hideTool]},[createVNode(Switch,{modelValue:moveData.open,"onUpdate:modelValue":r=>moveData.open=r},null),moveData.open&&createVNode(Fragment,null,[moveData.tool.isAddAndSub&&createVNode(ButtonGroup,{size:"small",elevation:!1},{default:()=>[createVNode(Button,{onClick:()=>handleAddAndSub("add")},{default:()=>[createTextVNode("加")]}),createVNode(Button,{onClick:()=>handleAddAndSub("sub")},{default:()=>[createTextVNode("减")]})]}),createVNode(Button,{size:"small",onClick:handleUndo,disabled:!undoData.undoList.length},{default:()=>[createVNode(Icon,{name:"arrow-down",style:{transform:"rotate(90deg)"}},null)]}),createVNode(Button,{size:"small",onClick:handleDeleteMoveNote,disabled:!(moveData.activeIndex>-1)},{default:()=>{var r;return[(r=moveData.modelList[moveData.activeIndex])!=null&&r.isDelete?"显示元素":"删除元素"]}}),createVNode(Button,{size:"small",onClick:resetMoveNote},{default:()=>[createTextVNode("重置数据")]}),createVNode(Button,{size:"small",type:"primary",onClick:filterMoveData},{default:()=>[createTextVNode("保存数据")]}),createVNode(Button,{size:"small",type:"primary",onClick:()=>showToolBox.value=!1},{default:()=>[createTextVNode("收起")]})])]),!showToolBox.value&&createVNode("img",{class:[styles$g.rightHideIcon,showToolBox.value?"":styles$g.rightIconShow],src:rightHideIcon,onClick:()=>showToolBox.value=!0},null)]),moveData.modelList.map((r,s)=>createVNode("div",{class:[styles$g.noteMove,moveData.activeIndex===s&&styles$g.activeModel],style:r.bbox,"data-id":r.id,onMousedown:onDown},null))])}}),selectData=reactive({notes:[],staves:[],measureHeight:0}),calcNoteData=()=>{var c,u,m,g,d,y,A,b,S,E,x,C,P;const i=((c=document.getElementById("musicAndSelection"))==null?void 0:c.getBoundingClientRect())||{x:0,y:0},e=i.x||0,r=i.y||0,s=state$1.times,o=[],a=[];let l=0;for(let k=0;kD.id===M.id)||selectData.notes.push(M),o.push(I.noteId)}}if(!a.includes(I.MeasureNumberXML)){if(I.stave){if((C=(x=I.stave)==null?void 0:x.attrs)!=null&&C.id){const T=document.querySelector(`#${I.stave.attrs.id}`),F=[Array.from((T==null?void 0:T.querySelectorAll(".vf-clef"))||[]),Array.from((T==null?void 0:T.querySelectorAll(".vf-keysignature"))||[]),Array.from((T==null?void 0:T.getElementsByTagName("text"))||[])].flat();try{F.length&&F.forEach(O=>{var B;(B=O==null?void 0:O.style)==null||B.setProperty("display","none")})}catch(O){}const D=((P=T==null?void 0:T.getBoundingClientRect)==null?void 0:P.call(T))||{x:0,width:0,y:0,height:0};k===0&&(l=D.height);try{F.length&&F.forEach(O=>{var B;(B=O==null?void 0:O.style)==null||B.removeProperty("display")})}catch(O){}selectData.measureHeight=D.height;let N=D.height-l;N=N>0?N:0,M.staveBox={left:D.x-e+"px",top:D.y-r+N+"px",width:D.width+"px",height:D.height-N+"px"},selectData.staves.push(M)}a.push(I.MeasureNumberXML)}else if(I.multipleRestMeasures){const T=selectData.staves.find(F=>F.MeasureNumberXML===I.MeasureNumberXML-1);T!=null&&T.staveBox&&(M.staveBox={left:T.staveBox.left,top:T.staveBox.top,width:T.staveBox.width},selectData.staves.push(M),a.push(I.MeasureNumberXML))}}}console.log("🚀 ~ selectData.notes:",selectData.notes,selectData.staves)},Selection=defineComponent({name:"selection",setup(){const i=useRoute$1(),e={...getQuery(),...i.query},r=computed(()=>state$1.sectionStatus||state$1.modeType!=="practise"),s=computed(()=>state$1.sectionStatus?state$1.section.map((o,a)=>{if(a===0){const l=selectData.staves.find(c=>c.MeasureNumberXML===o.MeasureNumberXML);return l&&{left:l.staveBox.left,top:l.staveBox.top,height:selectData.measureHeight+"px"}}else{const l=state$1.userChooseEndIndex>o.MeasureNumberXML?state$1.userChooseEndIndex:o.MeasureNumberXML,c=selectData.staves.find(u=>u.MeasureNumberXML===l);return c&&{left:parseFloat(c.staveBox.left)+parseFloat(c.staveBox.width)+"px",top:c.staveBox.top,height:selectData.measureHeight+"px"}}}):[]);return onMounted(()=>{selectData.notes=[],selectData.staves=[],calcNoteData();try{moveData.partIndex=state$1.partIndex+"",nextTick(()=>renderForMoveData())}catch(o){}}),()=>createVNode("div",{id:"selectionBox",class:[styles$h.selectionContainer],onClick:o=>o.stopPropagation()},[selectData.staves.map(o=>{var c;const a=o.id&&evaluatingData.evaluatings[o.measureListIndex],l=!state$1.isReport&&metronomeData.cursorMode===2&&o.MeasureNumberXML===((c=metronomeData.activeMetro)==null?void 0:c.measureNumberXML)&&state$1.times[state$1.activeNoteIndex].MeasureNumberXML===o.MeasureNumberXML;return createVNode(Fragment,null,[o.staveBox&&createVNode("div",{class:[styles$h.position,a?`scoreItemLeve${a.leve}`:"",o.multipleRestMeasures<=1?styles$h.staveBg:"",state$1.platform===IPlatform.PC&&state$1.zoom>.8?styles$h.linePC:""],style:o.staveBox,onClick:()=>handleSelection(o)},[l&&createVNode("div",{style:{height:selectData.measureHeight+"px",position:"relative"}},[createVNode("div",{class:[styles$h.line,state$1.setting.eyeProtection?styles$h.eyeLine:"",state$1.musicRenderType==EnumMusicRenderType.staff?styles$h.lineStaff:styles$h.lineJianPu],style:{left:metronomeData.activeMetro.left}},null)]),!state$1.isReport&&!!o.multipleRestMeasures&&state$1.activeMeasureIndex==o.MeasureNumberXML&&createVNode("div",{class:styles$h.dotWrap},[o.multipleRestMeasures]),createVNode(Transition,{name:"centerTop",onAfterEnter:()=>{a.show=!1}},{default:()=>{var u,m;return[(a==null?void 0:a.show)&&createVNode("div",{class:styles$h.scoreItem,style:{color:((u=leveByScoreMeasureIcons[a.leve])==null?void 0:u.color)||""}},[createVNode("img",{src:(m=leveByScoreMeasureIcons[a.leve])==null?void 0:m.icon},null),createVNode("span",null,[a.score])])]}})])])}),selectData.notes.map(o=>createVNode("div",{class:[styles$h.position,r.value&&styles$h.disable,styles$h.note,`noteIndex_${o.index}`],style:o.bbox,onClick:()=>skipNotePlay(o.index)},[createVNode("div",{class:styles$h.noteFollow,"data-vf":"vf"+o.id},[createVNode(Icon$1,{name:"success"},null),createVNode(Icon$1,{name:"cross"},null)]),createVNode("div",{class:[styles$h.noteDot,"node-dot"]},null)])),s.value.map((o,a)=>o&&createVNode("div",{class:styles$h.selectBox,style:o},[createVNode("div",{class:[styles$h.selectHandle,a>0&&styles$h.selectHandleRight,state$1.playState==="play"&&styles$h.playIng],onClick:()=>{state$1.section.length===2&&a===0?(state$1.section=[],showToast({message:"请选择开始小节",duration:0,position:"top",className:"selectionToast"})):(state$1.section.splice(a,1),state$1.section=[...state$1.section],showToast({message:state$1.section.length?"请选择结束小节":"请选择开始小节",duration:0,position:"top",className:"selectionToast"}))}},null)])),e.isMove=="1"&&createVNode(MoveMusicScore,null,null)])}}),styles$f={},speedInfo={"rall.":1.333333333,"poco rit.":1.333333333,"rit.":1.333333333,"molto rit.":1.333333333,"molto rall":1.333333333,molto:1.333333333,lentando:1.333333333,allargando:1.333333333,morendo:1.333333333,"accel.":.8,calando:2,"poco accel.":.8,"gradually slowing":1.333333333,slowing:1.333333333,slow:1.333333333,slowly:1.333333333,faster:1.333333333},getNextNote=(i,e)=>{var c;let r=0;const s=i.closest(e);let o=s;const a=s==null?void 0:s.closest("measure");let l=null;for(;!l&&r<((a==null?void 0:a.childNodes.length)||50);)r++,((c=o==null?void 0:o.nextElementSibling)==null?void 0:c.tagName)==="note"&&(l=o==null?void 0:o.nextElementSibling),o=o==null?void 0:o.nextElementSibling;return l},getGradualLengthByXml=i=>{var m,g,d,y;const e=new DOMParser().parseFromString(i,"text/xml"),r=Array.from(e.querySelectorAll("measure")),s=Array.from(e.querySelectorAll("note")),o=Array.from(e.querySelectorAll("words")),a=Array.from(e.querySelectorAll("metronome")),l=[];for(const A of[...o,...a]){const b=getNextNote(A,"direction");if(b){const S=b==null?void 0:b.closest("measure"),E=Array.from(S.querySelectorAll("note")),x=Array.from(S.childNodes).filter(k=>k.nodeName==="note").findIndex(k=>k===b);let C=0,P=0;for(let k=0;kA.index-b.index);const u=Object.keys(speedInfo).map(A=>A.toLocaleLowerCase());for(const A of l){let b=!1,S=0;const E=(g=A.textContent)==null?void 0:g.toLocaleLowerCase().trim();A===l[l.length-1]&&((d=c[c.length-1])==null?void 0:d.length)===1&&(b=!0);const x=u.find(C=>{const P=C.split(" ");return E&&P.includes(E)});if(A.type==="metronome"||A.type==="words"&&(E.startsWith("a tempo")||x)||b){const C=c.findIndex(P=>P.length===1);C>-1&&A.index>((y=c[C])==null?void 0:y[0].start)&&(S=-1,c[C][1]={start:A.index,measureIndex:A.measureIndex,closedMeasureIndex:A.measureIndex,noteInMeasureIndex:A.noteInMeasureIndex,allDuration:A.allDuration,leftDuration:A.leftDuration,type:E})}A.type==="words"&&x&&c.push([{start:A.index,measureIndex:A.measureIndex,closedMeasureIndex:A.measureIndex+S,noteInMeasureIndex:A.noteInMeasureIndex,allDuration:A.allDuration,leftDuration:A.leftDuration,type:E}])}return c};getQuery();const container$1=ref(),resetGivenFormate=()=>{var r,s;const e={12200:[{parts:["0","1"],tieId:["1483"]},{parts:["2"],tieId:["1463"]},{parts:["10"],tieId:["1246"]},{parts:["11"],tieId:["2455"]},{parts:["13"],tieId:["1488","1688"]},{parts:["14","15"],tieId:["1272"]},{parts:["16"],tieId:["1264","1368"],staveSection:[{id:"section-0",y:-10}]}],12420:[{parts:["0"],tieId:["1298","1405","1998","2598","3229","2731","2617"]}],7729:[{parts:["3"],tieId:["1498","1660"]}],7439:[{parts:["23"],vfmodifiers:[{id:"modifiers-130",y:-18,isLast:!0}]}],12711:[{parts:["0"],voltas:-12},{parts:["4"],voltas:-8}],3581:[{parts:["0"],voltas:-8}],6244:[{parts:["15"],stavenote:[{id:"vf-auto1608",y:-15}]}],7473:[{parts:["0"],voltas:-8}]}[state$1.cbsExamSongId];if(e){const o=state$1.partIndex+"",a=e.find(l=>l.parts.includes(o));if(!a)return;if(a.tieId&&a.tieId.length)for(let l=0;l{c.classList.add(`section-${u}`)});for(let c=0;c{c.classList.add(`modifiers-${u}`)});for(let c=0;c{c.style.transform=`translateY(${a.voltas}px)`}),a.stavenote&&a.stavenote.length)for(let l=0;l{var r,s,o,a,l,c,u,m,g,d,y,A,b;if(["1788850864767643649","1788502467554750466","1789839575249596417","1788501975122489346","1796006876341813249"].includes(state$1.cbsExamSongId)||i){const S=(r=Array.from(document.getElementsByClassName("vf-curve")))==null?void 0:r.last();if(S&&(S.style.display="none"),state$1.musicRenderType!=="staff"){const E=document.getElementById("auto2670"),x=document.getElementById("auto2710"),C=document.getElementById("auto3099"),P=document.getElementById("auto3339"),k=state$1.cbsExamSongId=="1789839575249596417"&&((o=(s=document.getElementById("vf-auto1554"))==null?void 0:s.getElementsByClassName("vf-modifier"))==null?void 0:o[0]),I=state$1.cbsExamSongId=="1789839575249596417"&&document.getElementById("vf-auto1554-lines"),M=state$1.cbsExamSongId=="1788501975122489346"&&((l=(a=document.getElementById("vf-auto2116"))==null?void 0:a.getElementsByClassName("vf-modifier"))==null?void 0:l[0]),T=state$1.cbsExamSongId=="1788501975122489346"&&document.getElementById("vf-auto2116-lines"),F=state$1.cbsExamSongId=="1788502467554750466"&&((u=(c=document.getElementById("vf-auto2122"))==null?void 0:c.getElementsByClassName("vf-modifier"))==null?void 0:u[0]),D=state$1.cbsExamSongId=="1788502467554750466"&&document.getElementById("vf-auto2122-lines");if(E&&(E.style.display="none"),x&&(x.style.display="none"),C&&(C.style.display="none"),P&&(P.style.display="none"),k&&(k.style.transform="translateX(-0.65rem)"),M&&(M.style.transform="translateX(-0.65rem)"),F&&(F.style.transform="translateX(-0.65rem)"),I&&(I.style.transform="translateX(-0.65rem)"),T&&(T.style.transform="translateX(-0.65rem)"),D&&(D.style.transform="translateX(-0.65rem)"),I||T||D){const N=I?I.querySelector("path"):T?T.querySelector("path"):D?D.querySelector("path"):null;let O=N==null?void 0:N.getAttribute("d");if(O){const B=(d=(g=(m=O.split("L"))==null?void 0:m.last())==null?void 0:g.split(" "))==null?void 0:d[0];let V=((A=(y=O.split("M"))==null?void 0:y[1])==null?void 0:A.split(" ")[0])||0;V=V?Number(V):0;let R=((b=O.split("L"))==null?void 0:b.last().split(" ")[0])||0;R=R?Number(R):0;const Q=R-V,_=V-Q;O=O.replace(`L${B}`,`L${_}`),N.setAttribute("d",O)}}}}},resetFormate=()=>{var s,o,a;if(container$1.value=document.getElementById("scrollContainer"),!container$1.value)return;moveGracePosition();const i=Array.from(container$1.value.querySelectorAll(".staffline")),e=4,r=28;for(let l=0,c=i.length;l .vf-voices")),b=Array.from(u.querySelectorAll(".vf-measure > .vf-beams")),S=Array.from(u.querySelectorAll(".vf-ties")),E=Array.from(u.querySelectorAll(".vf-line")),x=Array.from(u.querySelectorAll(".vf-measure > .vf-stave text"));Array.from(u.querySelectorAll(".vf-measure > .vf-stave rect[fill=none]"));const C=Array.from(u.querySelectorAll(".vf-measure .vf-staveSection")),P=Array.from(u.querySelectorAll(".vf-measure > .vf-stave path")),k=Array.from(u.querySelectorAll(".vf-measure .vf-stopDot")),I=Array.from(u.querySelectorAll(".vf-measure > .vf-stave")),M=((s=P[0])==null?void 0:s.getBBox().y)||0,T=["To Coda","D.S. al Coda","Coda"];x.filter(_=>T.includes(_.textContent||"")).forEach(_=>{b.forEach(K=>{var $;const G=collisionDetection(_,K),U=_==null?void 0:_.previousSibling;if(G.isCollision){const q=Number(_.getAttribute("y"))-(G.b1-G.t2)-e+"";_.setAttribute("y",q),U&&U.getAttribute("stroke-width")==="0.3"&&U.getAttribute("stroke")==="none"&&((($=U.getAttribute("d"))==null?void 0:$.length)||0)>3e3&&(U.style.transform=`translateY(${-(G.b1-G.t2+e)}px)`)}}),A.forEach(K=>{var $;const G=collisionDetection(_,K),U=_==null?void 0:_.previousSibling;if(G.isCollision){const q=Number(_.getAttribute("y"))-(G.b1-G.t2)-e+"";_.setAttribute("y",q),U&&U.getAttribute("stroke-width")==="0.3"&&U.getAttribute("stroke")==="none"&&((($=U.getAttribute("d"))==null?void 0:$.length)||0)>3e3&&(U.style.transform=`translateY(${-(G.b1-G.t2+e)}px)`)}})}),C.forEach(_=>{let K=0;[...y,...S,...A].forEach(G=>{const U=collisionDetection(_,G);U.isCollision&&(K=Math.min(K,U.t2-U.b1-e))}),_.style.transform=`translateY(${K}px)`});let F=Array.from(u.querySelectorAll(".vf-text > text")).filter(_=>_.getBBox().y text")).filter(_=>_.getBBox().y{const K=_.getBBox();K.y1&&N.forEach(_=>{_.setAttribute("y",D+"")}),F.forEach(_=>{[...y,...d,...E].forEach(K=>{let G=collisionDetection(_,K);if(G.isCollision&&G.b1{F.forEach(K=>{if(_.parentNode!==K.parentNode&&!["marcato","legato"].includes(_.textContent))if(["marcato","legato"].includes(K.textContent)){if(collisionDetection(_,K,30,30).isCollision){const U=_.getBBox();K.setAttribute("x",U.x+U.width+5+""),K.setAttribute("y",U.y+U.height-5+"")}}else{const G=collisionDetection(_,K);if(G.isCollision){const U=Number(_.getAttribute("y")),$=G.b2-G.t2<24?24:G.b2-G.t2;K.setAttribute("y",U-$-.5+"")}}})});const O=["C","G","D","A","E","B","F#","C#","G#","F","Bb","Eb","Ab","Db","Gb","Cb","Fb","D#","A#","E#"],B=["Bb","Eb","Ab","Db","Gb","Cb","Fb"],V=["F#","C#","G#","D#","A#","E#","B#"];F.forEach(_=>{const K=_.textContent;if(O.includes(K)){const G=Number(_.getAttribute("y")),U=M?M-r:G;_.setAttribute("y",U)}B.includes(K)&&(_.textContent=K.replace("b","♭")),V.includes(K)&&(_.textContent=K.replace("#","♯"))}),k.forEach(_=>{state$1.musicRenderType==="fixedTone"?_.setAttribute("transform","translate(3,-12)"):_.setAttribute("transform","translate(3,-7)")});const R=Array.from(u.querySelectorAll(".vf-text > text")).filter(_=>_.getBBox().y>g),Q=Array.from(u.querySelectorAll(".vf-line")).filter(_=>_.getBBox().y>g);for(let _=0;_{[...d].forEach(K=>{let G=collisionDetection(_,K);G.isCollision&&_.setAttribute("y",G.b2+Math.abs(G.t1-Number(_.getAttribute("y")))+"")})}),Q.forEach(_=>{var G;const K=[];if((G=_.nextElementSibling)!=null&&G.classList.contains("vf-line")&&R.forEach(U=>{let $=collisionDetection(_,U,20,20);$.isCollision&&K.push({text:U,result:$})}),K.length===1){const U=K[0].result,$=K[0].text;U.x2+U.w2U.x1+U.w1?Math.abs(U.y2-U.y1)>10&&$.setAttribute("y",U.y1+U.h2/2+""):Math.abs(U.x2-U.x1)10&&$.setAttribute("y",U.y1+U.h2/2+"")):($.setAttribute("x",U.x1+U.w1+5+""),Math.abs(U.y2-U.y1)>10&&$.setAttribute("y",U.y1+U.h2/2+""))}else if(K.length===2){const U=K[0].result,$=K[0].text,q=K[1].result,W=K[1].text;$.setAttribute("x",U.x1-U.w2-5+""),Math.abs(U.y2-U.y1)>10&&$.setAttribute("y",U.y1+U.h2/2+""),W.setAttribute("x",q.x1+q.w1+5+""),Math.abs(q.y2-q.y1)>10&&W.setAttribute("y",q.y1+q.h2/2+"")}}),R.forEach(_=>{R.forEach(K=>{if(_.parentNode!==K.parentNode&&!["marcato","legato","cresc.","Cantabile"].includes(_.textContent))if(["marcato","legato","cresc.","Cantabile"].includes(K.textContent)){if(collisionDetection(_,K,30,30).isCollision){const U=_.getBBox();K.setAttribute("x",U.x+U.width+5+""),K.setAttribute("y",U.y+U.height-5+"")}}else{const G=collisionDetection(_,K);G.isCollision&&K.setAttribute("y",G.y1+G.h1+G.h2+"")}})});for(let _=0;_{const K=[Array.from((_==null?void 0:_.querySelectorAll(".vf-StaveSection"))||[]),Array.from((_==null?void 0:_.querySelectorAll(".vf-Volta"))||[]),Array.from((_==null?void 0:_.querySelectorAll(".vf-clef"))||[]),Array.from((_==null?void 0:_.querySelectorAll(".vf-keysignature"))||[]),Array.from((_==null?void 0:_.getElementsByTagName("text"))||[])].flat();try{K.length&&K.forEach(W=>{var xe;_==null||_.removeChild(W),(xe=W==null?void 0:W.style)==null||xe.setProperty("display","none")})}catch(W){}const G=(_==null?void 0:_.getBBox())||{},U=``,$=``,q=`${U}${$}`;try{K.length&&K.forEach(W=>{var xe;_==null||_.appendChild(W),(xe=W==null?void 0:W.style)==null||xe.removeProperty("display")})}catch(W){}_.innerHTML=q+_.innerHTML}),state$1.vfmeasures=state$1.vfmeasures.concat(d)}},collisionDetection=(i,e,r=0,s=0)=>{const o=i.getBBox(),a=e.getBBox();let l=o.y-s,c=o.x-r,u=o.x+o.width+r,m=o.y+o.height+s,g=a.y,d=a.x,y=a.x+a.width,A=a.y+a.height;return my||l>A||u{const i=state$1.partIndex+"",r=[{id:"12644",part_index:"25",direction:1}].find(({id:P,part_index:k})=>P==state$1.cbsExamSongId&&k==i);setGlobalData("tieDirection",r?r.direction:void 0);const o=[{id:"3509",part_index:"16",direction:1}].find(({id:P,part_index:k})=>P==state$1.cbsExamSongId&&k==i);o&&setGlobalData("graceCustom",{direction:o.direction});const l=[{id:"3030",part_index:"17",line:4},{id:"12704",part_index:"23",line:3}].find(({id:P,part_index:k})=>P==state$1.cbsExamSongId&&k==i);l&&setGlobalData("customBassDrum",l.line);const u=[{id:"11654",part_index:"16",stemNotes:[{id:124,direction:0},{id:125,direction:0},{id:126,direction:0},{id:127,direction:0},{id:128,direction:0}]},{id:"3581",part_index:"4",stemNotes:[{id:380,direction:1}]},{id:"3470",part_index:"0",stemNotes:[{id:36,direction:1},{id:37,direction:1}]},{id:"3470",part_index:"11",stemNotes:[{id:33,direction:1},{id:56,direction:1}]},{id:"12644",part_index:"22",stemNotes:[{id:22,direction:1},{id:26,direction:1},{id:135,direction:1},{id:163,direction:1},{id:199,direction:1},{id:204,direction:1},{id:206,direction:1},{id:208,direction:1},{id:210,direction:1},{id:213,direction:1}]},{id:"12303",part_index:"18",stemNotes:[{id:1,direction:1},{id:4,direction:1},{id:6,direction:1},{id:9,direction:1},{id:12,direction:1},{id:14,direction:1}]},{id:"12669",part_index:"24",stemNotes:[{id:65,direction:1},{id:296,direction:1},{id:298,direction:1},{id:300,direction:1},{id:338,direction:1}]},{id:"12420",part_index:"21",stemNotes:[{id:614,direction:0},{id:617,direction:0},{id:619,direction:0},{id:621,direction:0}]},{id:"12711",part_index:"22",stemNotes:[]},{id:"12973",part_index:"21",stemNotes:[{id:619,direction:1},{id:622,direction:1},{id:745,direction:1}]}].find(({id:P,part_index:k})=>P==state$1.cbsExamSongId&&k==i);u&&setGlobalData("stemDirectionNote",u.stemNotes);const g=[{id:"12711",part_index:"4",vfcurve:[{MeasureNumberXML:25,index:1,bezierEndControlPt:{y:-2}},{MeasureNumberXML:33,index:1,bezierEndControlPt:{y:-2}}]},{id:"12059",part_index:"0",vfcurve:[{MeasureNumberXML:15,bezierEndControlPt:{y:2.8},bezierEndPt:{y:1.1}},{MeasureNumberXML:16,bezierEndControlPt:{y:-1}},{MeasureNumberXML:19,index:1,bezierEndControlPt:{y:2}},{MeasureNumberXML:20,bezierEndControlPt:{y:-1}},{MeasureNumberXML:42,index:1,bezierEndControlPt:{y:-1.5},bezierStartControlPt:{y:-1.5}},{MeasureNumberXML:46,index:3,bezierEndControlPt:{y:-1.5},bezierStartControlPt:{y:-1.5}}]},{id:"12668",part_index:"11",vfcurve:[{MeasureNumberXML:8,index:2,bezierEndControlPt:{y:-3},bezierStartControlPt:{y:-3},bezierEndPt:{y:-1}}]},{id:"11976",part_index:"0",vfcurve:[{MeasureNumberXML:14,index:4,bezierEndControlPt:{y:-3}},{MeasureNumberXML:14,index:1,bezierEndPt:{y:1.5},bezierEndControlPt:{y:1}}]}].find(({id:P,part_index:k})=>P==state$1.cbsExamSongId&&k==i);g&&setGlobalData("vfcurveItem",g.vfcurve),[{id:"12644",part_index:"25"}].find(({id:P,part_index:k})=>P==state$1.cbsExamSongId&&k==i)&&setGlobalData("customArtPosition",!0),[{id:"12645",part_index:"5"}].find(({id:P,part_index:k})=>P==state$1.cbsExamSongId&&k==i)&&setGlobalData("customTenutoItem",!0),([{id:"12711",part_index:"22"},{id:"12711",part_index:"25"}].find(({id:P,part_index:k})=>P==state$1.cbsExamSongId&&k==i)||state$1.isEvxml)&&setGlobalData("customAccentItem",!0),[{id:"12711",part_index:"25"},{id:"7755",part_index:"10"},{id:"6226",part_index:"16"}].find(({id:P,part_index:k})=>P==state$1.cbsExamSongId&&k==i)&&setGlobalData("customLefthandpizzicatoItem",!0)},setCustomGradual=()=>{if(state$1.gradualTimes){const i=state$1.cbsExamSongId+"",e=state$1.partIndex+"";["12280"].includes(i)&&["24"].includes(e)&&(state$1.gradualTimes[8]="00:26:10",state$1.gradualTimes[66]="01:53:35",state$1.gradualTimes[90]="02:41:40")}},setCustomNoteRealValue=()=>{const i=state$1.cbsExamSongId+"",e=state$1.partIndex+"";["2670"].includes(i)&&(customData.customNoteRealValue={0:.03125}),["12673"].includes(i)&&["22"].includes(e)&&(customData.customNoteRealValue={208:.125}),["12667","12673"].includes(i)&&(customData.customNoteCurrentTime=!0)},musicRenderTypeKey="musicRenderType";let osmd=null;const musicData=reactive({showSelection:!1,isRenderLoading:!0,score:"",containerWidth:0,isRefreshLoading:!1}),resetRenderMusicScore=i=>{const e=queryString.parse(location.search),r=queryString.stringify({...e,_t:Date.now(),musicRenderType:i,isSingleLine:state$1.isSingleLine});location.search="?"+r},downloadXmlStr=ref(""),MusicScore=defineComponent({name:"music-score",emits:["rendered"],props:{showSelection:{type:Boolean,default:!0},renderTypeKey:{type:String,default:""},musicColor:{type:String,default:""},showPartNames:{type:Boolean,default:!1}},setup(i,{emit:e,slots:r,expose:s}){const o=()=>{const g=sessionStorage.getItem(i.renderTypeKey||musicRenderTypeKey);g in EnumMusicRenderType&&(state$1.musicRenderType=g)},a=async()=>{const g=downloadXmlStr.value||await fetch(state$1.xmlUrl).then(y=>y.text());downloadXmlStr.value="";const d=formatXML(g);musicData.score=state$1.isCombineRender?d:onlyVisible(d,state$1.partIndex),state$1.gradualTimes&&(state$1.gradual=getGradualLengthByXml(d))},l=async()=>{const g=document.getElementById("musicAndSelection");!g||!musicData.score||(setGlobalMusicSheet(),osmd=new OpenSheetMusicDisplay(g,{drawTitle:!1,drawSubtitle:!1,autoResize:!1,followCursor:!1,drawPartNames:i.showPartNames,drawLyricist:!1,drawComposer:!1,defaultColorMusic:i.musicColor,renderSingleHorizontalStaffline:!!state$1.isSingleLine,autoGenerateMultipleRestMeasuresFromRestMeasures:!state$1.isSingleLine,colorStemsLikeNoteheads:!0}),osmd.EngravingRules.PageTopMargin=2,osmd.EngravingRules.PageTopMarginNarrow=3,osmd.EngravingRules.PageLeftMargin=2,osmd.EngravingRules.PageRightMargin=2,osmd.EngravingRules.BreathMarkDistance=.1,osmd.EngravingRules.PageBottomMargin=state$1.isSingleLine?2:18,osmd.EngravingRules.DYMusicScoreType=state$1.musicRenderType===EnumMusicRenderType.staff?"staff":"jianpu",state$1.musicRenderType===EnumMusicRenderType.fixedTone&&(window.sett={keySignature:!0}),osmd.EngravingRules.DYMusicScoreId=state$1.examSongId||"",osmd.EngravingRules.DYCustomRepeatCount=state$1.maxLyricNum||0,await osmd.load(musicData.score),osmd.zoom=state$1.zoom,osmd.render(),console.log("🚀 ~ osmd:",osmd),e("rendered",osmd),resetFormate(),resetGivenFormate(),musicData.showSelection=!0)},c=()=>{var g;musicData.containerWidth=((g=document.getElementById("musicAndSelection"))==null?void 0:g.offsetWidth)||625};onMounted(async()=>{c(),o(),await a(),await l(),musicData.isRenderLoading=!1});const u=computed(()=>{var y;let g=!1;const d=((y=state$1.times[state$1.activeNoteIndex])==null?void 0:y.measureListIndex)||-1;for(const[A,b]of state$1.gradual)if(A&&b&&(g=A.measureIndex<=d&&d{console.log("刷新谱面123");const g=document.getElementById("musicAndSelection"),d=document.getElementById("osmdCanvasPage1"),y=document.getElementById("selectionBox");g&&d&&(g==null||g.removeChild(d),g==null||g.removeChild(y)),state$1.vfmeasures=[],musicData.showSelection=!1,state$1.osmd.clear(),musicData.isRenderLoading=!0,musicData.isRefreshLoading=!0,state$1.audioDone=!1,c(),o(),await a(),await l(),musicData.isRenderLoading=!1,musicData.isRefreshLoading=!1,state$1.audioDone=!0,musicData.showSelection=!0}}),()=>{var g;return createVNode("div",{id:"musicAndSelection",style:{"--music-zoom":state$1.musicZoom},class:[u.value&&styles$f.inGradualRange,state$1.musicRenderType==EnumMusicRenderType.staff?"staff":"jianpuTone",state$1.isSingleLine&&"singleLineMusicBox"]},[(g=r.default)==null?void 0:g.call(r),i.showSelection&&musicData.showSelection&&!state$1.isPreView&&!state$1.isEvaluatReport&&createVNode(Selection,null,null)])}}}),fraction$3="_fraction_imqoy_1",content$2="_content_imqoy_7",title$6="_title_imqoy_16",erji$2="_erji_imqoy_22",tip$2="_tip_imqoy_28",btn$4="_btn_imqoy_32",styles$e={fraction:fraction$3,content:content$2,title:title$6,erji:erji$2,tip:tip$2,btn:btn$4},erji$1="data:image/png;base64,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",erjibtn="data:image/png;base64,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",bad="data:image/png;base64,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",close$1="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMTZweCIgaGVpZ2h0PSIxNnB4IiB2aWV3Qm94PSIwIDAgMTYgMTYiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+CiAgICA8IS0tIEdlbmVyYXRvcjogU2tldGNoIDYyICg5MTM5MCkgLSBodHRwczovL3NrZXRjaC5jb20gLS0+CiAgICA8dGl0bGU+57yW57uEPC90aXRsZT4KICAgIDxkZXNjPkNyZWF0ZWQgd2l0aCBTa2V0Y2guPC9kZXNjPgogICAgPGcgaWQ9IuaZuuiDveaJk+WIhiIgc3Ryb2tlPSJub25lIiBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPGcgaWQ9IjgxLTEwMOWkh+S7vSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTQ5My4wMDAwMDAsIC01Ny4wMDAwMDApIiBmaWxsPSIjREJEQkRCIiBmaWxsLXJ1bGU9Im5vbnplcm8iPgogICAgICAgICAgICA8ZyBpZD0i5by556qXIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxNDMuMDAwMDAwLCA0MC4wMDAwMDApIj4KICAgICAgICAgICAgICAgIDxnIGlkPSLnvJbnu4QiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDM1MC4wMDAwMDAsIDE3LjAwMDAwMCkiPgogICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9Ik0xLjA1NTQ4NDMzLDEuMDcwOTI1NTEgTDAuOTczODkwMjA1LDEuMTYxMzQ5NjkgQzAuNjY2MDEyNDc0LDEuNTQ4Mjg0NTQgMC42OTQwMDEzNTgsMi4xMTQ4MTkwNiAxLjA1Nzg1Njg2LDIuNDY5MDk5NDEgTDYuNTM3LDcuOTQ5IEwxLjA1NTQ4NDMzLDEzLjQzMTU4NzMgQzAuNjcyMTkxNDk2LDEzLjgxNDg4MDEgMC42NzIxOTE0OTYsMTQuNDQ0MTI3MiAxLjA1NTQ4NDMzLDE0LjgyNzQyMDEgTDEuMDg2MzY2NjksMTQuODU4MzAyNCBMMS4xNzg5NjEwMywxNC45Mzk5NTA2IEMxLjU2NTAxMTQyLDE1LjIzOTMyNzMgMi4xMjgzOTA3MiwxNS4yMTIxMTEyIDIuNDgyMTk5NDksMTQuODU4MzAyNCBMNy45NjQsOS4zNzYgTDEzLjQ0NzAyODUsMTQuODU4MzAyNCBDMTMuODMwMzIxMywxNS4yNDE1OTUzIDE0LjQ1OTU2ODQsMTUuMjQxNTk1MyAxNC44NDI4NjEzLDE0Ljg1ODMwMjQgTDE0Ljg3Mzc0MzYsMTQuODI3NDIwMSBMMTQuOTU1MzkxOCwxNC43MzQ4MjU3IEMxNS4yNTQ3Njg0LDE0LjM0ODc3NTMgMTUuMjI3NTUyNCwxMy43ODUzOTYgMTQuODczNzQzNiwxMy40MzE1ODczIEw5LjM5MSw3Ljk0OSBMMTQuODczNzQzNiwyLjQ2Njc1ODMxIEMxNS4yNTcwMzY0LDIuMDgzNDY1NDggMTUuMjU3MDM2NCwxLjQ1NDIxODM1IDE0Ljg3Mzc0MzYsMS4wNzA5MjU1MSBMMTQuODQyODYxMywxLjA0MDA0MzE2IEwxNC43NTAyNjY5LDAuOTU4Mzk0OTc5IEMxNC4zNjQyMTY1LDAuNjU5MDE4MzI1IDEzLjgwMDgzNzIsMC42ODYyMzQzODQgMTMuNDQ3MDI4NSwxLjA0MDA0MzE2IEw3Ljk2NCw2LjUzIEwyLjQ4MjMxOTk1LDEuMDQwMTYzNyBDMi4wOTg5MDY2NSwwLjY1Njc1MDMyIDEuNDY5NjU5NTIsMC42NTY3NTAzMiAxLjA4NjM2NjY5LDEuMDQwMDQzMTYgTDEuMDU1NDg0MzMsMS4wNzA5MjU1MSBaIiBpZD0i6Lev5b6EIj48L3BhdGg+CiAgICAgICAgICAgICAgICA8L2c+CiAgICAgICAgICAgIDwvZz4KICAgICAgICA8L2c+CiAgICA8L2c+Cjwvc3ZnPgo=",close2="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMTZweCIgaGVpZ2h0PSIxNnB4IiB2aWV3Qm94PSIwIDAgMTYgMTYiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+CiAgICA8IS0tIEdlbmVyYXRvcjogU2tldGNoIDYyICg5MTM5MCkgLSBodHRwczovL3NrZXRjaC5jb20gLS0+CiAgICA8dGl0bGU+57yW57uEPC90aXRsZT4KICAgIDxkZXNjPkNyZWF0ZWQgd2l0aCBTa2V0Y2guPC9kZXNjPgogICAgPGcgaWQ9IuaZuuiDveaJk+WIhiIgc3Ryb2tlPSJub25lIiBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPGcgaWQ9IjgxLTEwMOWkh+S7vSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTQ5My4wMDAwMDAsIC01Ny4wMDAwMDApIiBmaWxsPSIjMDFDMUI1IiBmaWxsLXJ1bGU9Im5vbnplcm8iPgogICAgICAgICAgICA8ZyBpZD0i5by556qXIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxNDMuMDAwMDAwLCA0MC4wMDAwMDApIj4KICAgICAgICAgICAgICAgIDxnIGlkPSLnvJbnu4QiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDM1MC4wMDAwMDAsIDE3LjAwMDAwMCkiPgogICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9Ik0xLjA1NTQ4NDMzLDEuMDcwOTI1NTEgTDAuOTczODkwMjA1LDEuMTYxMzQ5NjkgQzAuNjY2MDEyNDc0LDEuNTQ4Mjg0NTQgMC42OTQwMDEzNTgsMi4xMTQ4MTkwNiAxLjA1Nzg1Njg2LDIuNDY5MDk5NDEgTDYuNTM3LDcuOTQ5IEwxLjA1NTQ4NDMzLDEzLjQzMTU4NzMgQzAuNjcyMTkxNDk2LDEzLjgxNDg4MDEgMC42NzIxOTE0OTYsMTQuNDQ0MTI3MiAxLjA1NTQ4NDMzLDE0LjgyNzQyMDEgTDEuMDg2MzY2NjksMTQuODU4MzAyNCBMMS4xNzg5NjEwMywxNC45Mzk5NTA2IEMxLjU2NTAxMTQyLDE1LjIzOTMyNzMgMi4xMjgzOTA3MiwxNS4yMTIxMTEyIDIuNDgyMTk5NDksMTQuODU4MzAyNCBMNy45NjQsOS4zNzYgTDEzLjQ0NzAyODUsMTQuODU4MzAyNCBDMTMuODMwMzIxMywxNS4yNDE1OTUzIDE0LjQ1OTU2ODQsMTUuMjQxNTk1MyAxNC44NDI4NjEzLDE0Ljg1ODMwMjQgTDE0Ljg3Mzc0MzYsMTQuODI3NDIwMSBMMTQuOTU1MzkxOCwxNC43MzQ4MjU3IEMxNS4yNTQ3Njg0LDE0LjM0ODc3NTMgMTUuMjI3NTUyNCwxMy43ODUzOTYgMTQuODczNzQzNiwxMy40MzE1ODczIEw5LjM5MSw3Ljk0OSBMMTQuODczNzQzNiwyLjQ2Njc1ODMxIEMxNS4yNTcwMzY0LDIuMDgzNDY1NDggMTUuMjU3MDM2NCwxLjQ1NDIxODM1IDE0Ljg3Mzc0MzYsMS4wNzA5MjU1MSBMMTQuODQyODYxMywxLjA0MDA0MzE2IEwxNC43NTAyNjY5LDAuOTU4Mzk0OTc5IEMxNC4zNjQyMTY1LDAuNjU5MDE4MzI1IDEzLjgwMDgzNzIsMC42ODYyMzQzODQgMTMuNDQ3MDI4NSwxLjA0MDA0MzE2IEw3Ljk2NCw2LjUzIEwyLjQ4MjMxOTk1LDEuMDQwMTYzNyBDMi4wOTg5MDY2NSwwLjY1Njc1MDMyIDEuNDY5NjU5NTIsMC42NTY3NTAzMiAxLjA4NjM2NjY5LDEuMDQwMDQzMTYgTDEuMDU1NDg0MzMsMS4wNzA5MjU1MSBaIiBpZD0i6Lev5b6EIj48L3BhdGg+CiAgICAgICAgICAgICAgICA8L2c+CiAgICAgICAgICAgIDwvZz4KICAgICAgICA8L2c+CiAgICA8L2c+Cjwvc3ZnPgo=",icons$4={erji:erji$1,erjibtn,"arrow-left-background":"data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iNDlweCIgaGVpZ2h0PSI0OXB4IiB2aWV3Qm94PSIwIDAgNDkgNDkiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+CiAgICA8dGl0bGU+6L+U5ZuePC90aXRsZT4KICAgIDxkZWZzPgogICAgICAgIDxsaW5lYXJHcmFkaWVudCB4MT0iNTAlIiB5MT0iMCUiIHgyPSI1MCUiIHkyPSIxMDAlIiBpZD0ibGluZWFyR3JhZGllbnQtMSI+CiAgICAgICAgICAgIDxzdG9wIHN0b3AtY29sb3I9IiNGRkQwNDgiIG9mZnNldD0iMCUiPjwvc3RvcD4KICAgICAgICAgICAgPHN0b3Agc3RvcC1jb2xvcj0iI0ZFQTYwQSIgb2Zmc2V0PSIxMDAlIj48L3N0b3A+CiAgICAgICAgPC9saW5lYXJHcmFkaWVudD4KICAgICAgICA8cmVjdCBpZD0icGF0aC0yIiB4PSIwIiB5PSIwIiB3aWR0aD0iNDYiIGhlaWdodD0iNDYiIHJ4PSIxOSI+PC9yZWN0PgogICAgICAgIDxmaWx0ZXIgeD0iLTUuNCUiIHk9Ii0zLjMlIiB3aWR0aD0iMTEwLjklIiBoZWlnaHQ9IjExMy4wJSIgZmlsdGVyVW5pdHM9Im9iamVjdEJvdW5kaW5nQm94IiBpZD0iZmlsdGVyLTMiPgogICAgICAgICAgICA8ZmVPZmZzZXQgZHg9IjAiIGR5PSIyIiBpbj0iU291cmNlQWxwaGEiIHJlc3VsdD0ic2hhZG93T2Zmc2V0T3V0ZXIxIj48L2ZlT2Zmc2V0PgogICAgICAgICAgICA8ZmVHYXVzc2lhbkJsdXIgc3RkRGV2aWF0aW9uPSIwLjUiIGluPSJzaGFkb3dPZmZzZXRPdXRlcjEiIHJlc3VsdD0ic2hhZG93Qmx1ck91dGVyMSI+PC9mZUdhdXNzaWFuQmx1cj4KICAgICAgICAgICAgPGZlQ29sb3JNYXRyaXggdmFsdWVzPSIwIDAgMCAwIDAuNjU4NzQ3MTM0ICAgMCAwIDAgMCAwLjQ3MzU1NzE3NyAgIDAgMCAwIDAgMCAgMCAwIDAgMC4yMzY0NjU1NjEgMCIgdHlwZT0ibWF0cml4IiBpbj0ic2hhZG93Qmx1ck91dGVyMSI+PC9mZUNvbG9yTWF0cml4PgogICAgICAgIDwvZmlsdGVyPgogICAgICAgIDxmaWx0ZXIgeD0iLTYuNSUiIHk9Ii00LjMlIiB3aWR0aD0iMTEzLjAlIiBoZWlnaHQ9IjExNS4yJSIgZmlsdGVyVW5pdHM9Im9iamVjdEJvdW5kaW5nQm94IiBpZD0iZmlsdGVyLTQiPgogICAgICAgICAgICA8ZmVHYXVzc2lhbkJsdXIgc3RkRGV2aWF0aW9uPSIxLjUiIGluPSJTb3VyY2VBbHBoYSIgcmVzdWx0PSJzaGFkb3dCbHVySW5uZXIxIj48L2ZlR2F1c3NpYW5CbHVyPgogICAgICAgICAgICA8ZmVPZmZzZXQgZHg9IjAiIGR5PSIxIiBpbj0ic2hhZG93Qmx1cklubmVyMSIgcmVzdWx0PSJzaGFkb3dPZmZzZXRJbm5lcjEiPjwvZmVPZmZzZXQ+CiAgICAgICAgICAgIDxmZUNvbXBvc2l0ZSBpbj0ic2hhZG93T2Zmc2V0SW5uZXIxIiBpbjI9IlNvdXJjZUFscGhhIiBvcGVyYXRvcj0iYXJpdGhtZXRpYyIgazI9Ii0xIiBrMz0iMSIgcmVzdWx0PSJzaGFkb3dJbm5lcklubmVyMSI+PC9mZUNvbXBvc2l0ZT4KICAgICAgICAgICAgPGZlQ29sb3JNYXRyaXggdmFsdWVzPSIwIDAgMCAwIDEgICAwIDAgMCAwIDEgICAwIDAgMCAwIDEgIDAgMCAwIDAuNSAwIiB0eXBlPSJtYXRyaXgiIGluPSJzaGFkb3dJbm5lcklubmVyMSIgcmVzdWx0PSJzaGFkb3dNYXRyaXhJbm5lcjEiPjwvZmVDb2xvck1hdHJpeD4KICAgICAgICAgICAgPGZlR2F1c3NpYW5CbHVyIHN0ZERldmlhdGlvbj0iMC41IiBpbj0iU291cmNlQWxwaGEiIHJlc3VsdD0ic2hhZG93Qmx1cklubmVyMiI+PC9mZUdhdXNzaWFuQmx1cj4KICAgICAgICAgICAgPGZlT2Zmc2V0IGR4PSIwIiBkeT0iLTIiIGluPSJzaGFkb3dCbHVySW5uZXIyIiByZXN1bHQ9InNoYWRvd09mZnNldElubmVyMiI+PC9mZU9mZnNldD4KICAgICAgICAgICAgPGZlQ29tcG9zaXRlIGluPSJzaGFkb3dPZmZzZXRJbm5lcjIiIGluMj0iU291cmNlQWxwaGEiIG9wZXJhdG9yPSJhcml0aG1ldGljIiBrMj0iLTEiIGszPSIxIiByZXN1bHQ9InNoYWRvd0lubmVySW5uZXIyIj48L2ZlQ29tcG9zaXRlPgogICAgICAgICAgICA8ZmVDb2xvck1hdHJpeCB2YWx1ZXM9IjAgMCAwIDAgMSAgIDAgMCAwIDAgMSAgIDAgMCAwIDAgMSAgMCAwIDAgMC41IDAiIHR5cGU9Im1hdHJpeCIgaW49InNoYWRvd0lubmVySW5uZXIyIiByZXN1bHQ9InNoYWRvd01hdHJpeElubmVyMiI+PC9mZUNvbG9yTWF0cml4PgogICAgICAgICAgICA8ZmVNZXJnZT4KICAgICAgICAgICAgICAgIDxmZU1lcmdlTm9kZSBpbj0ic2hhZG93TWF0cml4SW5uZXIxIj48L2ZlTWVyZ2VOb2RlPgogICAgICAgICAgICAgICAgPGZlTWVyZ2VOb2RlIGluPSJzaGFkb3dNYXRyaXhJbm5lcjIiPjwvZmVNZXJnZU5vZGU+CiAgICAgICAgICAgIDwvZmVNZXJnZT4KICAgICAgICA8L2ZpbHRlcj4KICAgICAgICA8cGF0aCBkPSJNMTYuMzMxNTUyMSwxMS43NDUxNDM0IEwxNi4yMDY0MzYsMTEuODgzMzA3MiBDMTUuMjg5Nzk0OCwxMi45NjU2Nzc4IDE1LjM1MjI1NywxNC41NjM1NzE5IDE2LjM3Mzc0NSwxNS41NjQ4NDc3IEwyMy43NzE4MzMxLDIyLjgxNzY4ODggTDE2LjMzMDExMSwzMC4xMTQzMzAyIEMxNS4yODYxOTY1LDMxLjE5MzA5OCAxNS4zMDc3OTg0LDMyLjg4NzcyODIgMTYuMzczNjAzNywzMy45MzI0NDQ0IEMxNy40NDgzOTUxLDM0Ljk4NTk2ODggMTkuMTgyNzE3NCwzNC45ODU5Njg4IDIwLjI1NzIxMzEsMzMuOTMyMzAxOSBMMjkuNjcxMzY5OCwyNC43MDMzOTgxIEMzMC43MTM3OTExLDIzLjYyNjE0MDcgMzAuNjkyMTkwOCwyMS45MzE1NjY1IDI5LjYyNjQ3MDIsMjAuODg2NzE1NCBMMjAuMjAzODI2NSwxMS42NTE5NzcgQzE5LjEyMzUyNTIsMTAuNjQ3ODM4NiAxNy40Mjg4MDUsMTAuNjY4NjYxMyAxNi4zNzM3NDUsMTEuNzAyODQ0NyBMMTYuMzMxNTUyMSwxMS43NDUxNDM0IFoiIGlkPSJwYXRoLTUiPjwvcGF0aD4KICAgICAgICA8ZmlsdGVyIHg9Ii0xMy40JSIgeT0iLTQuMiUiIHdpZHRoPSIxMjYuOSUiIGhlaWdodD0iMTE2LjglIiBmaWx0ZXJVbml0cz0ib2JqZWN0Qm91bmRpbmdCb3giIGlkPSJmaWx0ZXItNiI+CiAgICAgICAgICAgIDxmZU9mZnNldCBkeD0iMCIgZHk9IjEiIGluPSJTb3VyY2VBbHBoYSIgcmVzdWx0PSJzaGFkb3dPZmZzZXRPdXRlcjEiPjwvZmVPZmZzZXQ+CiAgICAgICAgICAgIDxmZUdhdXNzaWFuQmx1ciBzdGREZXZpYXRpb249IjAuNSIgaW49InNoYWRvd09mZnNldE91dGVyMSIgcmVzdWx0PSJzaGFkb3dCbHVyT3V0ZXIxIj48L2ZlR2F1c3NpYW5CbHVyPgogICAgICAgICAgICA8ZmVDb2xvck1hdHJpeCB2YWx1ZXM9IjAgMCAwIDAgMC43NzUxODM2MzYgICAwIDAgMCAwIDAuNTY0Mjc5NTI5ICAgMCAwIDAgMCAwLjAzNTUzNDAxOTggIDAgMCAwIDEgMCIgdHlwZT0ibWF0cml4IiBpbj0ic2hhZG93Qmx1ck91dGVyMSI+PC9mZUNvbG9yTWF0cml4PgogICAgICAgIDwvZmlsdGVyPgogICAgPC9kZWZzPgogICAgPGcgaWQ9IuesrOS4gOeJiCIgc3Ryb2tlPSJub25lIiBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPGcgaWQ9IuagoemfsyIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTM2LjAwMDAwMCwgLTE5LjAwMDAwMCkiPgogICAgICAgICAgICA8ZyBpZD0i6L+U5ZueIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgzNy4yNjgyOTMsIDE5LjAwMDAwMCkiPgogICAgICAgICAgICAgICAgPGcgaWQ9IuefqeW9oiI+CiAgICAgICAgICAgICAgICAgICAgPHVzZSBmaWxsPSJibGFjayIgZmlsbC1vcGFjaXR5PSIxIiBmaWx0ZXI9InVybCgjZmlsdGVyLTMpIiB4bGluazpocmVmPSIjcGF0aC0yIj48L3VzZT4KICAgICAgICAgICAgICAgICAgICA8dXNlIGZpbGw9InVybCgjbGluZWFyR3JhZGllbnQtMSkiIGZpbGwtcnVsZT0iZXZlbm9kZCIgeGxpbms6aHJlZj0iI3BhdGgtMiI+PC91c2U+CiAgICAgICAgICAgICAgICAgICAgPHVzZSBmaWxsPSJibGFjayIgZmlsbC1vcGFjaXR5PSIxIiBmaWx0ZXI9InVybCgjZmlsdGVyLTQpIiB4bGluazpocmVmPSIjcGF0aC0yIj48L3VzZT4KICAgICAgICAgICAgICAgIDwvZz4KICAgICAgICAgICAgICAgIDxlbGxpcHNlIGlkPSLmpK3lnIblvaIiIGZpbGw9IiNGRkZGRkYiIG9wYWNpdHk9IjAuNDgzMzgzMTc5IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSg5LjY1NDU2OCwgMTAuOTEyODA4KSByb3RhdGUoNDMuMDAwMDAwKSB0cmFuc2xhdGUoLTkuNjU0NTY4LCAtMTAuOTEyODA4KSAiIGN4PSI5LjY1NDU2ODIxIiBjeT0iMTAuOTEyODA3NyIgcng9IjEuOTg0MTQ2ODUiIHJ5PSIzLjk2ODI5MzciPjwvZWxsaXBzZT4KICAgICAgICAgICAgICAgIDxnIGlkPSLot6/lvoQiIGZpbGwtcnVsZT0ibm9uemVybyIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMjMuMDAwMDk3LCAyMi44MTc2ODcpIHNjYWxlKC0xLCAxKSB0cmFuc2xhdGUoLTIzLjAwMDA5NywgLTIyLjgxNzY4NykgIj4KICAgICAgICAgICAgICAgICAgICA8dXNlIGZpbGw9ImJsYWNrIiBmaWxsLW9wYWNpdHk9IjEiIGZpbHRlcj0idXJsKCNmaWx0ZXItNikiIHhsaW5rOmhyZWY9IiNwYXRoLTUiPjwvdXNlPgogICAgICAgICAgICAgICAgICAgIDx1c2UgZmlsbD0iI0ZGRkZGRiIgeGxpbms6aHJlZj0iI3BhdGgtNSI+PC91c2U+CiAgICAgICAgICAgICAgICA8L2c+CiAgICAgICAgICAgIDwvZz4KICAgICAgICA8L2c+CiAgICA8L2c+Cjwvc3ZnPg==",bad,close:close$1,close2},Earphone=defineComponent({name:"earphone",emits:["close"],setup(i,{emit:e}){return()=>createVNode("div",{class:styles$e.fraction},[createVNode("img",{class:styles$e.erji,src:icons$4.erji},null),createVNode("div",{class:styles$e.content},[createVNode("div",{class:styles$e.title},[createTextVNode("请佩戴有线耳机")]),createVNode("div",{class:styles$e.tip},[createTextVNode("佩戴有线耳机能保证评测准确率哦!")]),createVNode("img",{src:icons$4.erjibtn,class:styles$e.btn,onClick:()=>e("close")},null)])])}}),startBtn$1="_startBtn_fq43c_4",endBtn$1="_endBtn_fq43c_19",dialogueBox="_dialogueBox_fq43c_33",dialogue="_dialogue_fq43c_33",dialoguebg="_dialoguebg_fq43c_50",dialogueing="_dialogueing_fq43c_65",dialogueIcon="_dialogueIcon_fq43c_79",inRadioIcon="_inRadioIcon_fq43c_83",preJson$1="_preJson_fq43c_88",styles$d={startBtn:startBtn$1,endBtn:endBtn$1,dialogueBox,dialogue,dialoguebg,dialogueing,dialogueIcon,inRadioIcon,preJson:preJson$1},evaluatResult="_evaluatResult_qzxr3_1",closeBtn="_closeBtn_qzxr3_9",headerButton="_headerButton_qzxr3_25",headBtn="_headBtn_qzxr3_35",fraction$2="_fraction_qzxr3_52",bg$1="_bg_qzxr3_62",top$1="_top_qzxr3_71",badge="_badge_qzxr3_77",text="_text_qzxr3_81",num="_num_qzxr3_107",rightBadge="_rightBadge_qzxr3_110",tips$1="_tips_qzxr3_120",ctrls="_ctrls_qzxr3_125",ctrlsBtn="_ctrlsBtn_qzxr3_132",detail$2="_detail_qzxr3_135",progressitem="_progressitem_qzxr3_144",intonation="_intonation_qzxr3_162",cadence="_cadence_qzxr3_165",integrity="_integrity_qzxr3_168",percussion="_percussion_qzxr3_180",scoreDes="_scoreDes_qzxr3_190",scoreNum="_scoreNum_qzxr3_194",disablued="_disablued_qzxr3_198",styles$c={evaluatResult,closeBtn,headerButton,headBtn,fraction:fraction$2,bg:bg$1,top:top$1,badge,text,num,rightBadge,tips:tips$1,ctrls,ctrlsBtn,detail:detail$2,progressitem,intonation,cadence,integrity,percussion,scoreDes,scoreNum,disablued},icon1=""+new URL("../png/1-60be7a78.png",import.meta.url).href,bg="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAw4AAAIECAMAAACHcImtAAAAq1BMVEUAAAD/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+u3/////+/D/+/P//fn//vz//PT//Pb///7//fj//vvLCkZRAAAALnRSTlMAz4QK68R4mCHZuZ4Q5KRgMa9sWU481L9+ijf3tPLfynFmU0eTFiwnQqr7HI4GxpSDKQAADL9JREFUeNrs3ela8jAQhuGoIIKiAi7I9imoLEKnCxTO/8i+plCsFhRRL6F57j+cwLxNZlJSBQA7aHR0dPb09PJyctJ9fr68rF1f93qdztVVu125uLh4eCjf3x8fV6uHh3d3w8dc7vQ09zi8q5bb190jBfyxoHqT5RtWbyWs3tfyHc7L9/y8Xyo1GoXb22z238HBzU2+1SoWM5lms1735TuKhcfyNaHA5kbz8tXV29XVq8u3Ey9fXb3Hi4dvrHwLy/LNv5bvQHZPPTtsnymk07x8X2Ll20uWbzUq33n19vXDt6Cr959++Oaj6t3J8v0Ng+zxs8IOGK3aO3Q23juYWb6vfM1bmGluZKpNFsYLTiD4mUxc1/MlLn94ovBrzmqVcnX48d7BF9NE1Zss3+ma8o3YcdaPsJ3xNB6K7AO7pt9QqxaKkgqJ8nU3LF/7DWuHOZPZMhLNIUvEzzqqlJryV/z15fvJw3dvqvdXOG6UiEG/pvBTLnOZ7R++lO8fSCaiRFv9M64LsUqfTYMq3r+9g7nssSehwTlbpu+r3cqCN3Uo+X3kzCRUv+N07nvOcv4iCxOisL9sV0KtK4XtVTISch0Ley1aIfovCts5OhXNd1kYUsDxRMuwQGyneyPajDCkxMQXLUcHsYVeUwL+2EJaLFqIPDPXL2vXWRrSx/El0GwrfMnDQAJTC+lie6JVFb6g4uuNEvOkFJqI1qeB2FynThpSa75hyvKe66YumzoNtA0pNd8wHTwpbOKsxdqQavZMAnlO5DZSkgBpSDNXAi3Whw2UJTCxkGZhHm7oHz51otto10K6TSXwj/nSZxoi4tFG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",btn1="data:image/png;base64,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",btn3="data:image/png;base64,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",btn2="data:image/png;base64,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",imgs$2={bg,btn1,btn3,btn2},iconBadge=""+new URL("../svg/icon-badge-237641e0.svg",import.meta.url).href,icon_expression0=""+new URL("../svg/icon_expression0-eff2efb3.svg",import.meta.url).href,icon_expression1=""+new URL("../svg/icon_expression1-2ed30e24.svg",import.meta.url).href,icon_expression2=""+new URL("../svg/icon_expression2-ac19a263.svg",import.meta.url).href,icon_expression3=""+new URL("../svg/icon_expression3-4d327e1f.svg",import.meta.url).href,icon_expression4=""+new URL("../svg/icon_expression4-d61e303a.svg",import.meta.url).href,EvaluatResult=defineComponent({name:"evaluatResult",emits:["close"],setup(i,{emit:e}){const r=getQuery(),s=reactive({saveLoading:!0}),o=async()=>{const l={deviceType:browser().android?"ANDROID":"IOS",intonation:evaluatingData.resultData.intonation,cadence:evaluatingData.resultData.cadence,integrity:evaluatingData.resultData.integrity,scoreData:JSON.stringify(evaluatingData.resultData.scoreData),behaviorId:getBehaviorId(),sourceTime:getAudioDuration(),partIndex:state$1.partIndex,speed:state$1.speed,practiceSource:r.workRecord?"LESSON_TRAINING":"EVALUATION",score:evaluatingData.resultData.score,clientType:storeData.user.clientType,musicSheetId:state$1.examSongId,feature:"EVALUATION",playTime:evaluatingData.resultData.playTime/1e3,heardLevel:state$1.setting.evaluationDifficulty,recordFilePath:evaluatingData.resultData.url};s.saveLoading=!0;const c=await api_musicPracticeRecordSave(l);(c==null?void 0:c.code)===200&&(evaluatingData.resultData.recordId=c.data),s.saveLoading=!1},a=()=>{e("close","update")};return onMounted(()=>{evaluatingData.isErrorState||o()}),watch(()=>evaluatingData.resulstMode,l=>{l&&setTimeout(()=>{evaluatingData.isErrorState||o()},0)}),()=>createVNode(Fragment,null,[!evaluatingData.hideResultModal&&createVNode("div",{class:styles$c.evaluatResult},[createVNode("div",{class:styles$c.closeBtn,onClick:()=>e("close")},[createVNode("img",{src:icons$4["arrow-left-background"]},null)]),!state$1.isHideEvaluatReportSaveBtn&&createVNode("div",{class:styles$c.headerButton},[createVNode("div",{class:[styles$c.headBtn,evaluatingData.resultData.recordId?"":styles$c.disabled],onClick:debounce(a,300)},[createTextVNode("保存演奏")])]),createVNode("div",{class:styles$c.fraction},[createVNode("img",{class:styles$c.bg,src:imgs$2.bg},null),createVNode("div",{class:styles$c.top},[evaluatingData.resultData.score>79&&createVNode("img",{style:{},class:styles$c.badge,src:iconBadge},null),createVNode("div",{class:styles$c.text},[createVNode("div",null,[createVNode("span",{class:styles$c.num},[evaluatingData.resultData.score]),createTextVNode("分")]),createVNode("div",{style:{marginLeft:"6px"}},[evaluatingData.resultData.clxmome])]),createVNode("img",{style:{display:evaluatingData.resultData.leve===0?"":"none"},class:styles$c.rightBadge,src:icon_expression0},null),createVNode("img",{style:{display:evaluatingData.resultData.leve===1?"":"none"},class:styles$c.rightBadge,src:icon_expression1},null),createVNode("img",{style:{display:evaluatingData.resultData.leve===2?"":"none"},class:styles$c.rightBadge,src:icon_expression2},null),createVNode("img",{style:{display:evaluatingData.resultData.leve===3?"":"none"},class:styles$c.rightBadge,src:icon_expression3},null),createVNode("img",{style:{display:evaluatingData.resultData.leve===4?"":"none"},class:styles$c.rightBadge,src:icon_expression4},null)]),state$1.isPercussion?createVNode("div",{class:styles$c.percussion},[createVNode("img",{class:styles$c.leftIcon,src:evaluatingData.resultData.img||icon1},null),createVNode("div",{class:styles$c.scoreDes},[createVNode("span",{class:styles$c.scoreNum},[evaluatingData.resultData.score]),createTextVNode("分"),createVNode("span",{style:{marginLeft:"8px"}},[evaluatingData.resultData.mome])])]):createVNode("div",{class:styles$c.detail},[createVNode("div",{class:styles$c.progressitem},[createVNode("div",{class:styles$c.intonation},[createTextVNode("音准")]),createVNode("span",null,[evaluatingData.resultData.intonation,createTextVNode("分")])]),createVNode("div",{class:styles$c.progressitem},[createVNode("div",{class:styles$c.cadence},[createTextVNode("节奏")]),createVNode("span",null,[evaluatingData.resultData.cadence,createTextVNode("分")])]),createVNode("div",{class:styles$c.progressitem},[createVNode("div",{class:styles$c.integrity},[createTextVNode("完成度")]),createVNode("span",null,[evaluatingData.resultData.integrity,createTextVNode("分")])])]),createVNode("div",{class:styles$c.tips},[evaluatingData.resultData.clxtip]),createVNode("div",{class:styles$c.ctrls},[createVNode("img",{style:{display:r.workRecord?"none":""},src:imgs$2.btn1,class:styles$c.ctrlsBtn,onClick:()=>e("close","practise")},null),createVNode("img",{src:imgs$2.btn2,class:styles$c.ctrlsBtn,onClick:()=>e("close","tryagain")},null),createVNode("img",{src:imgs$2.btn3,class:[styles$c.ctrlsBtn,s.saveLoading?styles$c.disablued:""],onClick:()=>e("close","look")},null)])])])])}}),fraction$1="_fraction_1ybuf_1",title$5="_title_1ybuf_10",tip$1="_tip_1ybuf_21",btns$2="_btns_1ybuf_26",btn$3="_btn_1ybuf_26",styles$b={fraction:fraction$1,title:title$5,tip:tip$1,btns:btns$2,btn:btn$3},icon_title=""+new URL("../svg/icon_title-d80e504a.svg",import.meta.url).href,icon_cancel$1=""+new URL("../svg/icon_cancel-537e7528.svg",import.meta.url).href,icon_confirm$1=""+new URL("../svg/icon_confirm-77c45bbf.svg",import.meta.url).href,EvaluatAudio=defineComponent({name:"evaluat-audio",emits:["close"],setup(i,{emit:e}){return()=>createVNode("div",{class:styles$b.fraction},[createVNode("div",{class:styles$b.title},[createVNode("img",{src:icon_title},null)]),createVNode("div",{class:styles$b.tip},[createTextVNode("评测"),state$1.setting.camera&&state$1.setting.saveToAlbum?"音视频":"音频",createTextVNode("是否上传到云端?")]),createVNode("div",{class:styles$b.btns},[createVNode("img",{src:icon_cancel$1,class:styles$b.btn,onClick:()=>e("close")},null),createVNode("img",{src:icon_confirm$1,class:styles$b.btn,onClick:()=>e("close",!0)},null)])])}}),iframe="_iframe_1j216_1",btns$1="_btns_1j216_6",sbtn="_sbtn_1j216_14",disabled$1="_disabled_1j216_24",styles$a={iframe,btns:btns$1,sbtn,disabled:disabled$1},EvaluatShare=defineComponent({name:"evaluat-share",emits:["close"],setup(i,{emit:e}){const r=ref(""),s=ref(""),o=ref(!0),a=()=>{var m,g,d,y,A,b,S;const u={name:((m=storeData.user)==null?void 0:m.username)||"",subjectName:(((g=storeData.user)==null?void 0:g.subjectNames)||"").split(",")[0]||"",avatar:encodeURIComponent(((d=storeData.user)==null?void 0:d.avatar)||""),score:((y=evaluatingData.resultData)==null?void 0:y.score)||0,examSongName:state$1.examSongName||""};state$1.isPercussion||(u.intonation=(A=evaluatingData.resultData)==null?void 0:A.intonation,u.cadence=(b=evaluatingData.resultData)==null?void 0:b.cadence,u.integrity=(S=evaluatingData.resultData)==null?void 0:S.integrity),r.value=`${location.origin}/share-colexiu-evaluating/index.html?${queryString.stringify(u)}`},l=u=>{const m=u.target;m&&(m.contentWindow.setPng=g=>{s.value=g,o.value=!1})},c=async()=>{var m,g,d;const u=await api_shareAchievements({title:"分享我的乐器练习进度,一起见证我的成长!",desc:"晒一下我的评测分数,快来“小酷AI”上和我PK一下吧!",image:s.value,video:"",type:"image",button:["copy"],url:a()});!((m=u==null?void 0:u.content)!=null&&m.status)&&((g=u==null?void 0:u.content)!=null&&g.message)&&Snackbar$1((d=u==null?void 0:u.content)==null?void 0:d.message),e("close")};return onMounted(()=>{a()}),()=>createVNode("div",null,[createVNode("div",{class:styles$a.btns},[createVNode("div",{class:styles$a.sbtn,onClick:()=>e("close")},[createTextVNode("取消")]),createVNode("div",{class:[styles$a.sbtn,o.value&&styles$a.disabled],onClick:c},[createTextVNode("继续")])]),createVNode("iframe",{class:styles$a.iframe,src:r.value,onLoad:l},null)])}}),v$1="5.7.8",fr$1=60,ip$1=0,op$1=180,w$1=378,h$1=402,nm$1="拼合",ddd$1=0,assets$1=[{id:"image_0",w:42,h:42,u:"",p:"data:image/png;base64,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",e:1},{id:"image_1",w:32,h:54,u:"",p:"data:image/png;base64,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",e:1},{id:"image_2",w:41,h:41,u:"",p:"data:image/png;base64,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",e:1},{id:"image_3",w:265,h:195,u:"",p:"data:image/png;base64,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",e:1},{id:"image_4",w:43,h:38,u:"",p:"data:image/png;base64,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",e:1},{id:"image_5",w:129,h:110,u:"",p:"data:image/png;base64,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",e:1},{id:"image_6",w:64,h:78,u:"",p:"data:image/png;base64,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",e:1},{id:"image_7",w:65,h:78,u:"",p:"data:image/png;base64,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",e:1}],layers$1=[{ddd:0,ind:1,ty:2,nm:"上嘴",parent:6,refId:"image_0",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[119.002,99.282,0],ix:2,l:2},a:{a:0,k:[21,8,0],ix:1,l:2},s:{a:1,k:[{i:{x:[.833,.833,.833],y:[.833,.833,.833]},o:{x:[.167,.167,.167],y:[.167,.167,.167]},t:0,s:[100,100,100],e:[100,95,100]},{i:{x:[.833,.833,.833],y:[.833,.833,.833]},o:{x:[.167,.167,.167],y:[.167,.167,.167]},t:17,s:[100,95,100],e:[100,100,100]},{i:{x:[.833,.833,.833],y:[.833,.833,.833]},o:{x:[.167,.167,.167],y:[.167,.167,.167]},t:36,s:[100,100,100],e:[100,95,100]},{i:{x:[.833,.833,.833],y:[.833,.833,.833]},o:{x:[.167,.167,.167],y:[.167,.167,.167]},t:54,s:[100,95,100],e:[100,100,100]},{i:{x:[.833,.833,.833],y:[.833,.833,.833]},o:{x:[.167,.167,.167],y:[.167,.167,.167]},t:70,s:[100,100,100],e:[100,100,100]},{t:100}],ix:6,l:2}},ao:0,ip:0,op:180,st:0,bm:0},{ddd:0,ind:2,ty:2,nm:"下嘴",parent:6,refId:"image_1",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[119.002,111.632,0],ix:2,l:2},a:{a:0,k:[15.47,-4.552,0],ix:1,l:2},s:{a:1,k:[{i:{x:[.833,.833,.833],y:[.833,.833,.833]},o:{x:[.167,.167,.167],y:[.167,.167,.167]},t:0,s:[100,100,100],e:[100,95,100]},{i:{x:[.833,.833,.833],y:[.833,.833,.833]},o:{x:[.167,.167,.167],y:[.167,.167,.167]},t:18,s:[100,95,100],e:[100,100,100]},{i:{x:[.833,.833,.833],y:[.833,.833,.833]},o:{x:[.167,.167,.167],y:[.167,.167,.167]},t:34,s:[100,100,100],e:[100,95,100]},{i:{x:[.833,.833,.833],y:[.833,.833,.833]},o:{x:[.167,.167,.167],y:[.167,.167,.167]},t:51,s:[100,95,100],e:[100,100,100]},{i:{x:[.833,.833,.833],y:[.833,.833,.833]},o:{x:[.167,.167,.167],y:[.167,.167,.167]},t:68,s:[100,100,100],e:[100,100,100]},{t:100}],ix:6,l:2}},ao:0,ip:0,op:180,st:0,bm:0},{ddd:0,ind:3,ty:2,nm:"右眼备份 7",parent:6,refId:"image_2",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:-1.25,ix:10},p:{a:0,k:[166.524,96.035,0],ix:2,l:2},a:{a:0,k:[20.5,20.5,0],ix:1,l:2},s:{a:1,k:[{i:{x:[.833,.833,.833],y:[.833,.833,.833]},o:{x:[.167,.167,.167],y:[.167,.167,.167]},t:52,s:[100,100,100],e:[100,19,100]},{i:{x:[.833,.833,.833],y:[.833,.833,.833]},o:{x:[.167,.167,.167],y:[.167,.167,.167]},t:58,s:[100,19,100],e:[100,100,100]},{t:64}],ix:6,l:2}},ao:0,ip:0,op:180,st:33,bm:0},{ddd:0,ind:4,ty:2,nm:"右眼备份 6",parent:6,refId:"image_2",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[77.868,96.718,0],ix:2,l:2},a:{a:0,k:[20.5,20.5,0],ix:1,l:2},s:{a:1,k:[{i:{x:[.833,.833,.833],y:[.833,.833,.833]},o:{x:[.167,.167,.167],y:[.167,.167,.167]},t:52,s:[100,100,100],e:[100,19,100]},{i:{x:[.833,.833,.833],y:[.833,.833,.833]},o:{x:[.167,.167,.167],y:[.167,.167,.167]},t:58,s:[100,19,100],e:[100,100,100]},{t:64}],ix:6,l:2}},ao:0,ip:0,op:180,st:0,bm:0},{ddd:0,ind:6,ty:2,nm:"头",refId:"image_3",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:1,k:[{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:0,s:[0],e:[2]},{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:89,s:[2],e:[0]},{t:179}],ix:10},p:{a:0,k:[180.214,341.323,0],ix:2,l:2},a:{a:0,k:[133.019,203.814,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,ip:0,op:180,st:0,bm:0},{ddd:0,ind:7,ty:2,nm:"头顶毛",parent:6,refId:"image_4",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:1,k:[{i:{x:[.833],y:[.833]},o:{x:[.167],y:[.167]},t:0,s:[-17],e:[-3]},{i:{x:[.833],y:[.833]},o:{x:[.167],y:[.167]},t:90,s:[-3],e:[-17]},{t:179}],ix:10},p:{a:0,k:[138.277,3.997,0],ix:2,l:2},a:{a:0,k:[19.897,36.351,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,ip:0,op:180,st:0,bm:0},{ddd:0,ind:8,ty:2,nm:"身",refId:"image_5",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[178.214,347.323,0],ix:2,l:2},a:{a:0,k:[64.5,55,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,ip:0,op:180,st:0,bm:0},{ddd:0,ind:9,ty:2,nm:"右边翅膀",refId:"image_6",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[258.213,358.123,0],ix:2,l:2},a:{a:0,k:[32,39,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,ip:0,op:180,st:0,bm:0},{ddd:0,ind:10,ty:2,nm:"左边翅膀",refId:"image_7",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:1,k:[{i:{x:[.667],y:[1]},o:{x:[.167],y:[.167]},t:0,s:[4],e:[65]},{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:39,s:[65],e:[25]},{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:55,s:[25],e:[65]},{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:67,s:[65],e:[4]},{i:{x:[.833],y:[1]},o:{x:[.333],y:[0]},t:85,s:[4],e:[4]},{t:179}],ix:10},p:{a:0,k:[118.867,328.562,0],ix:2,l:2},a:{a:0,k:[55.878,12.639,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,ip:0,op:180,st:0,bm:0}],markers$1=[],startData={v:v$1,fr:fr$1,ip:ip$1,op:op$1,w:w$1,h:h$1,nm:nm$1,ddd:ddd$1,assets:assets$1,layers:layers$1,markers:markers$1},v="5.7.8",fr=60,ip=0,op=180,w=378,h=402,nm="拼合",ddd=0,assets=[{id:"image_0",w:16,h:16,u:"",p:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAACXBIWXMAAAABAAAAAQBPJcTWAAAAJHpUWHRDcmVhdG9yAAAImXNMyU9KVXBMK0ktUnBNS0tNLikGAEF6Bs5qehXFAAABbklEQVQ4jaWTXWpaURSFv3X8gUwgEEohzQRiiDVDyFOfS6cQi/mBdhAREi2tY4jPfXIKpmIzARFCETKBQKKuPFw93muvkNL9ds7Za6+1195H5IQPz3aYcQzz3eQmjCnQ06A1Wc9VBvj+4i1P00vsj+tvgJG6lItfdXt1/1cB75/XYPoTs52nKkX5AMUPurvuxwIJ8/OvLFgjRH/BXQPvZYqUS1XdXt0XARLZC7D0iPjCsN2RZADb4uD0BNPE3sJs8zS9BD7Jh2c7PM/+xHaCPuv3tx956l1p1Jn7e/SkVHgTEreXXmjEsN3Z2P+w3QGNYiMzjsNqVIDoL2Xn+ic5+gLAfDdsZHtlBAjjeDI12+vzXz3bAh+l4ONAgR6wkO09Dk5PNtIlk3gX6Qr0ggatCVI3paLpSqOeVmJbrjTqmGbMk7oatCavWyR8lGLOLNJ/r3Kcgu6u+5RLVaSblSeZMNIN5VJ1CU7q5WX+w3d+ATLooH+LJ+YkAAAAAElFTkSuQmCC",e:1},{id:"image_1",w:9,h:9,u:"",p:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAYAAADgkQYQAAAACXBIWXMAAAABAAAAAQBPJcTWAAAAJHpUWHRDcmVhdG9yAAAImXNMyU9KVXBMK0ktUnBNS0tNLikGAEF6Bs5qehXFAAAAhklEQVQYlY2QMRIBQRREX8/E3ECVbFOcQCBWBDs3cALlGC4yAg4gcALiPYGcEghUC2y0VYYXv/rd/QVQ2/F2PqzBCbnCakC5P1lsd9JLtR3vl/3R9pQOkk698XIWB/PRBrzqCi3D57V5BHD6IrQ4BeSq6MhV+JQsHVITQLkcp/zXOsHvP70Bvu4+/hqDgkwAAAAASUVORK5CYII=",e:1},{id:"image_2",w:16,h:16,u:"",p:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAACXBIWXMAAAABAAAAAQBPJcTWAAAAJHpUWHRDcmVhdG9yAAAImXNMyU9KVXBMK0ktUnBNS0tNLikGAEF6Bs5qehXFAAABB0lEQVQ4jZ3TsUoDURCF4W/igomihcTY+AQW2uYRonnemAhCGgm2WlrbqCAiqFusjEUSDBpw19NdmP/MzLn3gryykxd6aiqnujnTgciZTvniTjqMcJthVKRRceo6widk2qjG+lUYRhpmOhbu27uOIqe65bunX23CMyaL00Da+1nSLhwElOduMh3XXQEi3LbPnLQgw6gJvMq0oMjmBksmmIdUjj2u23OtwnP7VC/CZwsWaU/+wFY1Wd5Qq9HcazQPMW1g0IAbLJi5QTXWr70/pL1qrP9tEIYNultl5iFmc4MlE3mhV1YeflfUeMpb9gvbPry6/89nsukN5Ewnp7p1x89LB3llB74AZ5tw1lbemhAAAAAASUVORK5CYII=",e:1},{id:"image_3",w:25,h:26,u:"",p:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAAaCAYAAABCfffNAAAACXBIWXMAAAABAAAAAQBPJcTWAAAAJHpUWHRDcmVhdG9yAAAImXNMyU9KVXBMK0ktUnBNS0tNLikGAEF6Bs5qehXFAAADAUlEQVRIibWUTWhTWRiG3/fcm/7YKEyHEcGfxSAiLvqTGUEE/1ampVNNJAsXFQQRnJmFCDJQcECoC0e7UERQd1pBkMRqMaSKqCsRbaLUIOIwihvHcaFY205tcl4XGr23yU27iN/q3vd7v+853zn3HuIbREf20h4L20dgzDHuTtYaEM0lV0u8C4kAQHDUrTUElv2AvIsfr+kk0ZFUXFDSqxkiYWoF2K37IVGH/SpH0u3xZM2260X2xe8Alns147CXpGqyXYl8pnlsauJvSd+VNJK3MpH4JgCoySTv/p88AHwFfI7e0kPVM0nkb4a3jA4ulYIn7h65vBywv3k1klcykfidL+8zi37JDy2bnvrwJ8SNIn6ERAKTAB8b4ERTJHb2Ilks+aMjqZSg2FcArHGdtnTL1tEyiCR25gYPWtn9ABoCxyOewoRiw23d+c7s5fVFFW770oYDmfZ4j7+ktKJsql/SvsDm/qJ/4bobUSwMSPjZk5p2Q/Urr7Z0/eP1uwAQzSV/la0MIDghaJ5XE7AIxcJ9CGG/15yZCQAA0/E0XQ+LA/7OfAWaHfVN7oI1kdj8ENlGYNjnKQNwQo22r9JCXft+sgfAIo97nI6zIdO65QkAXPmkPpTUEc2mUgC2VmoE4vjwqm0vK6UMxHU+r3C0BPAPR9W5ocpnRr513Lq/KuYAGALLvIJc50aQeai1+xmJ1+UQHbna0vUmEAKo2Ss4RQb+eJIo0f8Dk68WmvCxoBoAMAIeeQWL4togc1d2MALoe38D9p1r3TxeFWKIe77VAn90PEwumWlM5PN1BeiUfwg+DzesOF0NAADsejC0eNp+eAKhyVP9H8G98+sbhxsKnHpdnFgD2SMC2n3FMD2Zn2IDs0IAYHMu2QuLQ+VZ6tN45RckyQuZSHz7bADg8y1swo39JNJlWYmVAAAf/eA07ZoLAPDcXQnJGcumTgrYXb2CZ123bm+1TzYQUorO3KU2a+0egHFQzRIMwZcgrhnifLo9fn2uzecUkpjI3wzP7qweHwEyGhN4jTMILwAAAABJRU5ErkJggg==",e:1},{id:"image_4",w:34,h:32,u:"",p:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACIAAAAgCAYAAAB3j6rJAAAACXBIWXMAAAABAAAAAQBPJcTWAAAAJHpUWHRDcmVhdG9yAAAImXNMyU9KVXBMK0ktUnBNS0tNLikGAEF6Bs5qehXFAAADbElEQVRYhb2XXYhUZRjHf/+zM3NmSjapIIS6CIs+hLDILgpKTdud8SLyIqUPokDJyvCm68BuukwKJPqmC5dAsHDPrJtohWUaqCVGLRV1EZSw5Bo558zH+3SxzXjm7OzufJztuTv/9/m/8zvP+77neUcsUdg5ctXf2GWw3uCPjHgzW+T4fPlaKpBwnAMGD8d+yJl4NV/gZa2j/r+AhGVGzDExz/BJicfyJX6Oi95SgODYucDoPRinq2WeioupVyQMWIkxZd28pBjLZ3lWG5lJvyLG811BzOZujWocsQB/KFWGQ1zZcHwI5JuaxI+e2CHxHeJeIJOwrXDih6Q4UESOJwyWxzXBZr/E9wDROJ8g9pmxKmG9Pt2lcbzQBiEmmxAA/ibO+stZI7E3lmMSR1LbrJUya3EcTYCU8iXKnfLDgIeAEh6f5kcZTw0kHGe/weYYxJRf5FYJ68afytLYIW4g9hWdJWFPtxAwdwf3FaFjB9A6gYILvscHvcwxcEUswMexrU0U72iEf3qZZ8GK2FGW1SJud45pv8DvWkeYzKmJrRjXXmagYeKNXiCgQ0XMGArLvBgGnIoucaHR4IQZP4WXqIQBhytlHoznu7l95eNCkV97BWk7NdVJVrs675px5yK+j/JX8Hg9ZE3d8VV8IJPhgewIX/QK0lqacIKbGnUOY1zThe/RqEIW2u8VEqf7gWiBWMBw5DjYCUJQMSgkdTMeSWqe2NMPBPy3RyLYbsYtbQDioAd3+CWW5Ye5GrFd8Pe8M4nzWWOsX5CMGV4U8FyC7n2/xNMx6S/greoE37oGxzu2eWOvNhH1C+LVAu4yuLEpSMzkcuzqlJwb5aSJfUldUM37lxtZXyBOrEhoJ7SRmfkMgq+TmokxbeDPgUDMuK5tUmN6QYcx5zI15PW/SVsg8jgfFwSrF/Hc3/YkjuVGOTUwiJ/ly3iXNLgtCtjSKbkSsB61H1vPeG1QCABPG5gGzsRFg7crAc+YzX55zVB1gidl7G9qAIJfciUOpAEi6Hy7ApC4aDAluNmMqxLGxpDH2myRY2mAeACFIp954r3koBnDGHcnIQDk8UpaEC0QgFyRbRKvL2aQqEm8lBtld1oQ0OGfXhSwxcFOjPsSiVXEpCd254p8kyZER5BmhAErEas02wZqPnyuEhfTBmjGv6muIPU2dF2mAAAAAElFTkSuQmCC",e:1},{id:"image_5",w:53,h:39,u:"",p:"data:image/png;base64,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",e:1},{id:"image_6",w:42,h:42,u:"",p:"data:image/png;base64,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",e:1},{id:"image_7",w:32,h:54,u:"",p:"data:image/png;base64,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",e:1},{id:"image_8",w:41,h:41,u:"",p:"data:image/png;base64,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",e:1},{id:"image_9",w:41,h:11,u:"",p:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACkAAAALCAYAAADiBKTLAAAACXBIWXMAAAABAAAAAQBPJcTWAAAAJHpUWHRDcmVhdG9yAAAImXNMyU9KVXBMK0ktUnBNS0tNLikGAEF6Bs5qehXFAAAB8klEQVQ4jc2QMWhTcRDGv7vX+ALPUh59bQIqFJcIQgdfEDEtZIgdIgiCmVx0MA5awc1FiBQnN7u5WdEliyAKosZQYxGHOFQQUSM0hRLyGkFLobX+P4daqGmMqYjxG+/uu+93J/iP5XkjfjjsfLS6DdJKkciYY9uRa6SEarWnJe02ULNcN5FeXV16LSJ2o1G6AQA6NJQM9/ePHI9Exga7Beb72ZDnJU667uEywPuATI+PHzm30RcA8LxErzG4CeCzql4PgmflfwEXjY4OrKyYUyK8QGL3j/KtVGrX6Xw+/+0nSADI5XI6OfnokjHMiUgZwAPAejw8rC+LxeLa34Baz3gSJ5kGTJpEfBMDVXF5cXHmarNPmgueN3rAGDNFcj8AiMgXEkURFEh9FwqhGg6zOjdX+tQOaP1LjIkwBmAfiRiAQwAHtkAIaqp6JghK91rt2gIJAMlksmd2di1rDK8A9FoaRZYAVgFZBmgDsEnsEBEbgEOyt90RmzZNOc7Oi/PzDxu/nGhnd91UH7B8VkTOk9zTWWhHoojctSxrol6ffvW74baQG8pkMlahsHDMGJ4AeBRA35+xyQcR3FHF7SB4/rZj13ZjfD8bqlTeHFSlb4yJi8heElERDAK0ADEkvopgAWCV1IoqXqj2zNTrxffbzQOA7yQptU8Ic3XBAAAAAElFTkSuQmCC",e:1},{id:"image_10",w:265,h:195,u:"",p:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAQkAAADDCAYAAACRbOQCAAAACXBIWXMAAAABAAAAAQBPJcTWAAAAJHpUWHRDcmVhdG9yAAAImXNMyU9KVXBMK0ktUnBNS0tNLikGAEF6Bs5qehXFAAAgAElEQVR4nOy9eYBcV3nm/XtPVVcvaqm1WLIsy4ssrxgDNmDAC+vAQPIZGHZMcDB7VpLwTTJfSCaeZGYSMslAFhJ27CwsARLWQByCAWM2yztesC1LtmTJ1r71VlX3vN8fZ73V3e4qqdWLVA/IVX3vPfeee+ue9zzveoQujnu88506pMqJRcEKVfpV6VOlH+gD+tTQj1IRoY6lLuL+FUJdCurGcAjYCex82cvY87rXSTG3d9TFTELmugNdHF289a26WIQzm8pZKGersk7gRFVOFOFEYJUqvTN1PRGsKntFnNBA2QpsNIYHRdhoLQ9ee608NlPX6+LooyskjhH85m9q//79PK0p9mJT0+dYlXOlIadpU5bOdd8mwbDARhV+auAW4NZajds++lHZP9cd62IiukJiAeKd39t5kj7Q+0a7Vy7Vg9Un6f7qycW+6iC6oH9PBTYK3ArcUqlw46mncvM110hzrjt2vGMhv1THBV57947BE+zI84r7B1/N47VLiu09pzW39/ZqQ46H3+6QwI0Yvo3lhnXruO2aa8TOdaeONxwPL9qCwWvv1tpSs/U51aK4XHbWnmc39V/Y3Na7vPFwr2jdzHX35hwi7AO+I/DVWo2vfPSjsmuu+3Q8oCsk5hhvv2P32mrl0JU9Rq8w22sXjz3QX6vfv4hid8/MXKCisKhAahZ6FXos1LT0XYyi4N8GwTF/B2mCNgwybqAuUDeo/2TUoCOVmeln5ygEbhLhX4AvXXutbJ6rjhzr6AqJOcA77t/6tGqjuLJm5aX2kb7zx+7vM/UH+tHhamcnMgpDTVjaRIYKdLCAAf85WMAi65yYKFZBBKyC8b+62yaoKiICqlE8GPcnUanJv+O+q4JY4KBBhqvIQYMeqsDBKuyport74NDsCBERbkf4YtXw95/4hDw8Kxc9TtAVErMAVZV3/XTLiyvGvq5H9MV2e+3U8Z8OUr93ETraxiDqK5CVDXRZE5Y3sV4wsLSJ9SNXs8NbB79VRTAoNn4CCMa3zAQFkESFa+ekAQgCkvYZ385JD0XE8xAviARgDNjTg+zuQXZX0Z01eLwHGkdNfVKB71Dh2pXL+eKf/ZkMH60LHS/oComjiLfe//gZtcbYb/caXqP7ZcXo3YM07h7EPpEqMdiEExvoyjqsbKCrmujiAovGmb1QN2AVcUNcccPez+4IqDfvScYawkBXFFG3w6Jpm/80/hNAjHgJ5P52+ywG449JgsNEYZMdHylHetnEKmZnDdleg229yLba0WIch0T4ghGu/eQn+Z6I6PRNumhFV0gcBbzrp49eUaXxnh7R54/evajSuGsxzUd6mfC4qxZW1+HkOrpmHD2xjvY71QA/UKNAUKJQAECFAuvOGViDipcKFsXN1Iq6udUjVx800yH8OKZEFnKVQ1P309kC+3ACLOyL5wnHINmxICQHRVB9ZL+h8kg/8lAvsrX3aDCN+43wgWXLuO4DH5DRmT75sYyukJghvPbuHYNL7eiv1Yy+XQ7KGeO3L2H8jsWQG/b6C1gzjp48Dmsa6Ko6hQFnM3DMwHoqoALWBrXBMYVI9FXcdkBtUClAxM3t6gVLHNmCEyKefQBxtg9CIP8M+911vLiaZL/rjP8UixFxbYIKgzom4Trt9nsBYYKKEprj+i8KFEp1ax+yuQ+zqQ850KGt5omxC+Fva1U+9PGPy+MzeeJjFV0hcYR4x+0Pn2+q9rd7jbyqvrl3cPy2JRQP9IMKUlU4eQxOG8WeXocVTQpvHHRCwQ2TIggGlcAN3DEAKtHoqDjqr6Jx5tdMHGguGCAaG5OqEfZIPCrZHxKMmGjEdAIo2DDSwM6uEkVCoCHhuCRYFBEvMIIbRdT3R+J+iddPfTWiyONVKvctonp/f1noHgFEGFf4R+nh/173Mbl7Rk56jKIrJA4T77j94fNNpfhADXnR+J2Dpn7LEuzuGnJCHTl9DHvqGJw8jq0kFlCoeOGggKFQm6kQTlhEW4OG4RjEhjdAekOkwTg7Bc4WgAjWammGdyp42bAZDZq53QFQTxOCDSEIiFwEaGADgU5EEZUEmBi3zWrZkInEowhGT4sXDmois8nOBgIm3L0oWKX2cD+V+/qpbOqH5oy8virw2Z4e3vfxj8ummTjhsYaukOgQb7zroRMXY/5Pr+UNY7cu7qnfthhzQgNdPwqnj2EHC1SFph9HhYINg16Fwg86m9sY1A0YqwYRi2qyPbijk33BGSqNUy0yH6UTKnh/RaD6BlUb9QQT5ns/AsssIgiM5OEIxsmwzaqN7UOfQjsNxklxRztBRmYQhVwRSfLH98ELHvGSRTQJCkEdu/DCxqBIQ6jd20/1jkHMvhmJKamL8DeDi/ifH/qQ7J6JEx4r6AqJNvH8TZv61h/kmr5G9VfqPx0YLPZWYe04nD5K0eMGhVWDBZpeAFjrnI4ahYL/pyZ6K9JgzQVGZhOI+3OCn42vMJLiMEzcAxJzUEj2AbyaYdN+E6d9P7BF0mf0bkg8rzOIZswkjvpkKHXtDVatZwPZA9VwPsGKdWzIPwVLYiwVCfeqGB+8Ica1F4EKUN3cS+8dg1Qe6TuSn9g/L/YL/MmyZfxF18Dp0BUS00BV5e13PfwrNaPvs3urq4uRCrqqjhqvPgBNdQMpCIfCD34bDI7R8GiwqpGak9sZSOTdRiNfpu1rMkAiUv7houGBkhXSZEdZbKYqlNtntsWyJyM3b5QMly3CIm73dyBl/qCRJaTjorqBkylOLcnZjqBqXVBX5FNBWBqMaOQyzt4BlT0V+u4YpOe+gZlQRbYa4T3XXiv/fKQnWujoCoknwFvveOTltar9U1E9x6pTHQqEwjrhUFih6RlB4V/hwgcsFApWQG1SHYL5z3kw0isvms/aedxCOCYIDRdkmSwJAWEQGj/DSiYU3H7x/0PKAz6eJbMfJDkjGWOAMFwntk9qjKp17CBTV6J9wpOMwGqsVynCPYs4YZYMpMkAS2bYTN/dNRCLKBjjGEdlxNC/YTG1uxch9shecRE+39/Hr374w7LjiE60gNEVEpPgTQ88sKR/rOdTNbGvKlScYFDHHJrq3JVWE5NQ9UIB4z0V3nsRBoUm12OIfgQXzQBEJuCouRvkbpNSifNxHinpf7bSR5rb83leMo6fC4F8W+7bTOQhCCp/VKaKTESIvMwFiGb2jIzRqPW2EnUMIrp8g20j2Cy8VyVjTckVG1gKmVdEPXNSH3uh9AxX6L95Mb33DjiJffjYbYRfv/Za+fSRnGShoiskWvCLdz3ykn5TfFJVT7bW0FSlGQUAUUA0PSNw3gpD0/pZ1k2HNNXN7KpKQYhGTIMBEdSrCCYXDhDVD2cmyKMOvBZfjoiKqkmYjUP7EKiUWzOSUCAKgZJm0erd0HTdcLxm7cnak/0V3Lbe9NFyjG+p5b9z4VZEuwTgw8kdpUlHqmciQShF16l/iBX/WT1QYfAnS6j9rJ8jeeVF+GrF8O5PflK2HfZJFiC6QsLj6Rs29Dy194QP1tB3Wag0gjBQobBKgYl/O+EASiXGPURbhILNBr3zaoRZT6LpAD/YRePwToNWAl0v/zx5iHMQDu68bn/ImYBE6UvCIBv0oT9lW2KWv9HyPRwfBADZ+UIHgvpAtDe0Ho/3wiRGEHqj4ZqhDSEEXEEVK1E0QFBzZKLi5Z4TgEVEqBDcxFDbWWXxd5dS3VGb8j1oA3sF3nzddfL1IznJQkJXSABvuW3r02rVxmcEPbehQmGdjaGpFqsVrKoTFp4NOEbhPRok7wXi7BTg1IOkXwdCjKPPVr0DIOjeYZb0HyWKnQanxCFYxoSMzeyYYId4oh/anT2ZGsm+T9UuDGoIRkbXgRRDkds/E48IDCLYY8J18xiQ/NgkGJIQtdFtmt1rti3Fhzh2EdynTjVRBu4ZYPGPhpCxww79VjH80brT+B/HQxGc415IXHX7Q7/fX5H3FUpvMEo2Vb2B0qkNTTWgeLVDCFGSKejJqSF4+0Ow9Kn1RFrcyyjqaXvGBDSEIksQJ354er07DP7cmBdmZOMFTZbRUZrdIyWPakse/OSZSlkPKOseyoQ2QehYTdsDtPV7xlpa96coUrxKUhZSzuuj3isUDJzJXuJsG+JMDd7+4e5Hs2ej8V4io/BCw4zD0A+H6L93gDy3pRMIfGNggDf97d/K3sM6wQLBcSskrr51+8pKz9iXDHpJU4NR0hsmrWMNDe/FsCrRSOkYhLfaAyGuIVkN3LYwq5r44id7AZL0dfEjxUh5tJqMPYQ9gTEE4ZDYhSbh4NHKPty2bKAlWRapf1kVKbOTqB54oaOk/UE1CapEZE5he/Y9ejTIjZ1JYtisg0llS/2y3nuCCNZab8+xLapQyBmxpefuhKWL2XD2C6X/sV6GvrWUysHDzg/ZZIRXXXut3H64J5jvOC6FxJtufeBJ/bXqN7CcWig0gaZ1akRThaZ1hkob2IOCesOlgv8MMQ24F91KjBa0ivdfZEQ+Uv4yI5C4xYcg+9GZMiYdUvsEkx0bBmF+TPgeBExAbrsIR5Y8GTmViH+l7XFmTzuTfIoMJMFm9xMERvkKGbPINIkgPGyLCqOaehZcxVF4EOwX7sCkikj2rDXGWQhQbQpLv7eE/vsXcZgYNcIvHKsxFcedkHjjHZtfOGj0C1Z1WVOdV6KJ0LRujmlYpzI01FVNUE2h1VaDOkGMirRehYjOSdXo1Yghxl6nRsjcdOnRh9IvOXsIo89kIykXFAIl4RC2hc/k7chGbdAugpCIcRlJEOR1JWAShhGP9WwgFxgkdhGyWXNjZc4wwg0FZhE8IDYKibJXJRl8k9BRyNonYWE8CwmZ86Kg2MTkEOf5EIXoFVEWb+xn6feWulJ9naMQwzuu+5R86nAaz2ccV0Liqjse/sXein64sNrX8PYGp2Y4V2fhBUWhWfSkD4YqSNp/fJF9KjWEwWbIsyAdBJMbIlsYgQkbNQkOP379RVqEQ4kttMREtKo02aBPWZr+nHhBknszsv2hI3lpu5JlNLMjRJUh9l5LQmMydpEzBSBjC+WYi2irCIIqUz/CueO5QtcnCBQyb5EiEkLi3bJkCIiP7uwZrnDCt5ZR235Y6xWpGN573afkA4fTeL7iuBESV93x8B/0Gvv7DauVprc/FD4Rq2mdsAh/h2QrG+wNKoR165Iu7sir+iAoxQcJ+Tc0uB9NNlhzl6aRVtUiC0km2SxytSAXPjkTyQVQ6GSySYQjklqSt0/2hPL+VpaS2x3iuVraB1Uk9KrVfhGeXw7b0i63dbSyh1xAhGsE4RKEScyJCeGdeFbihaA6WuE8HcFuJIJ4u4aIRQph5feHWHTvYaofwh/93bXy3w+v8fzDMS8kVFWuunPTtTXhqigYrFMnHIMIdocUVan+5XPZmyHfIg324LkILMLR6mSQM5Ls9CFfQrzqUGIRvn3QldP2sjAIgULh2IBcmJSEQuY2KCVwtbSd9tlRVl0m219+1oTORBVDJKWwhyeUbArhPF5QTMIWIAmS/NgJdgrKak1SUVIiXVAvgjNDMsEh2RUqIhhRltw1wLIfDMVSf51A4K+vvZZfPxZK5h3TQuKdG3SgUdv8VUFfGO0P6uwOBdCwJoZXF3jbgxcK1iu0yaCWFYRRMtYQBmBSGVpVg1x9CGwgCg9xdorgJQjtlWD8TOfRrF2IRozGz1wYaDo2ILclQNRw4r7cPjEpMo0j/8zPmRsocxdpHOxhtg8qQMvwScJAS1GarcIiN2hm2kxJmAQvSehjyEEhu+9g96gAuevUcyQqAou29LHyW8swh7HuiQgfvO5a+c2OG84zHLNC4ukbNvRc0LP8BoFLmxiaFhrqvRhA0zph0PCZmc6jESi08QZJ79nwKgPeTuFYQwiAKgc+mXxA+z2TMYgYGBXMAH7gJZWkLBAmMoikQuSKeFQjSAbRYLyL2yMDyriC0tI+N2AmZpPMCOEuidtLAiMckdkdWlUFzc6ZCwNoVUNSolkeuZQYRIuNQssCqWzHKBtmw5msv0pS73xYtyp9+3tY/a/LqR6Gm1Tgd667Tv6044bzCMfkslCqKk+urfiyExBCvVDq1gmIpkLDqxt1KzQLpVmEcnLODlH4IKimgpUUURnrzOKyLOOgUPcgY1UnLScbJT07qCLhJdXAgH2QT1BTNKocudARyWwZ/iV3CVLuuFyYhB/WZALCXT+zbaifNUvXdzeUe2FMPHay9kzSPr9+yEdxAs0gE9sTBGyi/Pn9h2ORdEwI15ZgQyEJ3ND/ktE1HuPUCxt/AY0TQgitL1TRaJ8yjAw1efSKXTSXdL4sqcKf/OJb9aqOG84jHJNM4s13bP7HKvbKhrpoyYZnEc4eYWImZ1IzHHUPHoww/JMu6r0EvtJTfNkzqh9exDAoSh4J/zlBxfA7JTsmZDjmIdjh9KX2nkEkNSZjCZ4+5JGY+HtzDCfvVWo8CcGIh+WBTZK1b53945iOekliCpBm/RQklZhLq3Ezsgsl/iY5GykdpzqRZWSqRliLxGp+HZchErlKpgaFEG4IHijoHRFO/spKejovzNs0whXXXivf7LThfMAxxySuvP2hv65SXFn3AqJuiSyi7hlEQ4UG4tQPdSHWhbqhWlgFNZ6y+vgIf+7gwcgHbnhBoVwBWrXcL+M35kIEylI6ejsyVQQS0xBaVY+yDaGUw5GdxzEdJyJM6dyazfJZu9C3qPk4Y55oa1JZGEgZ+8mvH1WhVKsy3n+450zRyF3A8VNDyLU7Nglm4nVbPTbhmcVjPNPDC7h4r15oqtpYOazwtCIE0Ckp7X98QNl6xU4aSxt0iKpVvnDV2/TiThvOBxxTTOLKOzZd04P+gXNrGoKgaHpDZdOGaMrgxfBeDYiM1iUl+9lNXZ1IPMUONLfEIijP/vl+yKIoaaHSSvbCSxpUYSD7GTl6NcKmzFORs48wuFXzwZLiGNJ4n+jpyM+lU3yPen1mnAzHhC9h1o5Kk+b0JMzoeY7GRIbRyg5oOXaq6MtWr0c6NjGevL1m7d3fNrZPv7T6Z+hqj4LjHT1jFU756gpqndfW3F7r4cKFVsr/mGESb7z94V/rEf3vTkAIiUkoDYV6AXXrajs0cbkZTc3Su1WSgNBA601Gg1MSUa5KOJQNf0lAJGETVY4WluAPcNvIBngUEO6PXEC0Xj9lh7TYFaI9oKzyTBW+XW5fLm2fu3RL7TUNwymvH4ZkYDSl9kkXKbXXJJjz55QL3ZJ3xo94KfU/DXfi8yMdo/E/znvVol6FO7deXQl5O/U+y9af200xEKJn2sZJ9SafvuYaXVDjbkF1dipcedvmN9WM/UCzQJxR0jGGhnWD37k+3RzdDKng3hJpcSwjzNyuMIzXqWXiSwf+vdZ8AMmE2T38IdlAyQdWOF9gErlwCHRYvJEz0G5TerlTRmPr9XObRy5QAuVP9pNkcE3ttWTglKxflcwIWb6+fzbScn0pD3QzaXtJNha/L0SOhgpd8fkFAZy1j9fLrk+8l3L74DZWTe7O/PoCsZQgEkoH+ojbwDxxRs2xgYKt/3kPWu0wU1x54UObuaazRnOLibxzgeENt2++sNfoTY1C+5sq1L2AiPEQKjTJMzkFa92PH6LzXL1FsvUtvZoB2Ys+MSkr7A/FUXI1IrfuQ3qZ47kyI+BkunioNlWKuyDo+2Umkl/fCa+WfA4n7+IfKa4z3f+EnA3SthyJrLv2kyVmlY/137Xc3lH/icfmgWuxvB+ZC5OgxqQ4idCuFHEJmS2JTB1Kqk0oUuyODapNzhwl3avaWLBXosBXhh7pY+2/L6eTdHMRLIaXXfdJub7tRnOIBc0krtigAz2iny+s9odUb+uFRKEGq8Z5Naz3ZCjevZlZucVEo5WCn/0z+79/YQJxDQJCSYPeHStxcAdK7AZPMpahgban+IfckBdmtKBmONUnjwbMbBhk9DxjDrkrMgZjafn66V4kOzbvfzpnfs9hXp20vWT9D32D1H9pbV/uq2T3k65P2XAQ+uIFrCF/fi3sQWTCyx3FjH9+Jut3+P0kO5MTgkqocK42GDSTB+zAaXUef/b+yV/QKaCKwfIPV71bT+6o4RxhQQuJgcrD16rq+qBiNBTGrdJQ4+Ig1Bkinf0hpX+nhXHEqxh45pDpxxI+U1xDyFeAzAUJOOYR5+bSDGqMlM4V5uDoCRHiucO5ggAKFDmeKzKFFvYRvBPZdaNdRJLKkLfJrx8+w7nieUlCaMr24XphcIX2+fUpt2/9nh9f5h8Tn19+fc1+r7L9I51JkClYXWYQ1fQcQnvxrMuI8b+Rnzz8+2K9V8wq7Dx/hP1nD9MJVFkpo3xatQMKMkdYsELidbduendN7GtdgJRTLZrWGZYK1KV+K5FBWAVrNbKIREWdgTJWZpbstZdcCKQZM7SML61InOzKM6mfc6P9IgsOws9+mg84iS91LgjCeUuDU8s2DbI2yU4xWf/9sZr6mrs1U/s8uCl9r7S2l3L/J1w/sqJ0H7H/XvzmAjfvd3g++f1L2kQIPhNS5mhkIgQbTC50A+MIKmX2TDQ9fyQdif/98MIcMbGeiM0YxaOXHKA+1JlrVOG5V1/NuzpqNAdYkELiFRs2XtBr+POGCnVVmuo8GA1raFh1AVM+T6PwVutQ5RrwpdwhkdzwgjiEmIaofpAF8QSmkR0fXt48pToP+ilncpbb5L3wvYuuUPdyS9afjPpLy7kgGgfSQCCpDRlDiP3N2k901aYZ1+R/T9le4mxcVs3KVo1S/0sCt/X6Go/JGUIQtuVzJiYUbR9Z0FZ8yTXvcyvvkCgISs8rCEHN1JV4rhBjozQrli0v3IuaMhOaDgp/8ta36pqOGs0yFpyQeP6mTX2DPfL5hupAw7ogqLoaGtb9YE2/9kWBW0qvsBCW1XMWIyCs6B3tYumVi7p7NrhKunZmRwih0hGZCy7aFjQNlJz2+/FEyqNITCCfUXNrf9TVpSzQUiJZUk+CqzHey5QMIbEn0TJjyuM3kp2lnM0aPSZZ/8P1owCOjKP8/AKLiv0kjwGRZNOI9xeeSxrirrDPxOcX7D35imfiT5J7WcrPr6yGBZlP1qMgeJzh1cVQuKA7GF7e4LGLO7ZPDDUtf9VRo1nGghMSq/fZT6rVc1zZOS8crNMNmxgKG9bJSJWrg8U7CIbwQ082kye3fdm6n+uvpQg/Te1TToXGcyVdN2cLiXkEG0V8iQn9IxMiqU08L7mNIsyk6fp5+3wQp3NJRrNb++/PpRO9K4mhTHS7pvMnHT+GnxNmei21KX/Pru8ebcv1k/chzvA5uwq/T9aPCf3XrA/++cUHWmrv9sVVzbMJIdqQpOKbCmEBpp3nj3DwlDE6gvKqt7xFX9lZo9nDghISr79l09UV5I1NzxyahasF0QhFZKz17k5DYYkSvgiRe5mqYFtelNbZpDRwNQ2ipIMTZ+lwnnwAhZkot+QTzglxcJf08tbrZwMnxj2QxQdkgyB6V7KZNqfwkQXF85eDn3IvhzFZe3+juRflids7I3DsU0lYpOeXmMHEZ55/B0pBZMEjoRp+l/L1I9OKzy4JBZBMuDCh36HPpefvBXnOVsL7EyJCrZfqVqFA2Xr5XmxPZ/ETqvz1r/2aLumo0SxhwQiJ127YOFSp6J82EWd38N6MkNkZhIUNcRHgKWGYgYJg8AvHSAodji8jaebPWUSinl7YtKgZ8YUOxjjNzxvO42c93y4tohO4RDjWXSFnKOGlzya8zFia1JFIk/0xBrwKQUl1mGg3SPct4O01STBFe4Pmx4X25Wu674FpZRQ+a9ca2h2eYX7enAWFQZ23KxfyzX6/8K2lfW5cDUxEyXxRkpLngv3BdTlze0d7k3uelrTwomqKuxjrszx24cGJHXwCKJx84MD8DLJaMEKCauXPrXJC0/o1MSB92uDBcEICiFGRiTwLIczazRSSZsXSLB9t3CWWEGbwCcIjn63iSAlt8uOCjSMcFmbW/PrBPiD+/2kgQxoY6TNrr4k15DaEdKVEz/M4iCAA46zs/87zT/L7j4JQkt0h9lPSPYSZWfPr+y3RbiFpJo9sLgi0XAhnbCXPQnWsIBcw2XMvCeH0++YC3hBiMpIADb97uLPW60c7RvztkmrpnqEBDDueNMxYp4lgwi9ffbWe0lmjo48FISRetWHzRVX0qlCDsmGFeuFcnvWQ95+tixEDpvxPHVbbymf1MItoNusnr0I24xHsEEB8qYhGijynITfIpRcyJUYhuQoQ+gP5Cx62p6KtabSEQZGGn0bWUqrnEKfKcv5EafDH/uP7PznlD6pFuKeobpXalwObKM34qT3hGv4hBZUrXD9cG82zVd19hJk9GVqDkSkTRNmxIRArqYZaEl6BLQCRQaSckBR9mlLaSf2RZBtxFct8LUMxPs9DsRVlyyUdGzF7C51/bGJBCImeqn6osNoTitY21Nkdmn6A2MgokrBIhsb0o4ZXMrwEaebM2EAYNtn2bFKLL0ec7OJLS/Snh3OW0qPDDBepbMY0yAaXn4sCkwgDJ8xsuS0j0PjWwZnT7HxWDPcRBnsl9FNCb9L181k6zq7xeWTL52UDP0R2JqaQzcySKHuIkTCeNeX9jM8jCLTQPogjL3CDfaPV2xJdni0MMTGLpFbmTCH9/vHhl55X/P2z66f78os1qSXk/liFg6vH2XvmCB1B+cW3vEXP7azR0cW8FxKvuWXT1Vh9tmMQ3oOh0EBJVa9dfUonyZ2WGC3UWNQvdw/pxQ6zWY6cjie1gNSOsosSiJWhwjG5nz7ouSX9Ngw8f/38GmHWAonHxn3+rvLAJ23pY7kehcZjwvFBOMRjQ/8Dy/Kzfm63MJKYUnCRltoT7jf0qcyOAmPIBWZu+wnFXsrqUlLfQlTlhOcv4aknz1UQQuH5S/Z08rDz/PfzvY/3GH7H1B+/L5wnu34rYt1TzzoVYevTD3QaO1FR5Y86aXC0Mcmtzh+85A5dtFw3Pdi0rEZdsvgAACAASURBVK5bt+zeuE/aqttU3bqJc0GlArbJHmHwa2FkqkDKHsxmquylyCl5qx89DNRS+/CvpU2k+5LP5JPXk8hzIlrddpNdn9J1g1BJgzv0pTRj4gadKR0/EXHgB7Ur21cqod/6SXmNz7x2RDhHXs/BnS/M7spARTihZlhdq7Cq17Cyx9BfEXqMUBOhZqAqbrIYtspooYwUyqGmsqdZsG2sYNt4wePj1rPNdC3115qwLe5L0bhhf6qzmY4p18wMamu4D80Et9tuBE79wRAr7+uoPL9WK1z8yU/Khk4aHS0c9gKIs4HFuulPrNXVLhYipX431MU+hJL4KDRVfXo3ntK7YWlDlYggNAL3DLMVZAMh6cJ5cZY4MLL9YTsQ94kmfbncHkT8S+PblllCmEnTCAt9FcKclASAv4MMGreFwKQgrOL5PaIAEolCI+jfebEbpRwHEgZK8lSE1ml/mKkje0jTPeAGnYFY2m5JVThnUZXzFlU5Z7CH5T0zQ2wtyq66ZeNIk3sPNbj7UJOHhps0A7vys0gY2JB5ioIAyIRhFGiE35okKAJzDHxRwnmdUdMqbH/qQU64fwCxbc/JUlj+CHjZjDyQI8S8ZRKvuPXhJ/Wb4rZGIbVxX4Ku4YvIhPU6C0IcfSiDH4ZhorQlXTsOmlbq6j4HKnDuQA+nDlQ4pa/Kqf0VVtYq9BuhZoReA71GGLXKcFM5VCgHC8ueuuWRsYLNI022jDXZ16TEIsKMbuJwmvz6JZaSbc/rWoaU7zggM6t8vLcwjiOjKNNpsmvF0U3qZ3nYZ3Q+EyCtLCPMtO57Ej/qBWa466EqPGtpjYuHaqzurRzey3EYGLPKz4Yb3LK/zo17xtlRT2ppZBmk/rcyiqAFxozhyDLSfeZLFAYWJb7S8ek/WMrKn3W22I/UePJ1H5O7Z+L+jwTzlknUtPmnzYJaKGAbVAvnvXCeC2e4TC+y+LTvSKU1FxQOUWj4GWH9oirPWVrjWUO9XLC4JyYwPREGK8JgBU6cYv/uRsEt+xts2F/n7oMNmpKGU1l1CH2CXI3IZ7EoHGgVABC4bWgvQYgQ2FF4UTP24Sa7jEkEXT5jARm7CMIqjyeIezRvn5YAaG1vRHjq4h6evayHcxdVs19j9tBnhKcurvHUxTXeunaQ+4cb3Lh3nO/vGeexuo19tpkNyWbPEskSxfyXVM8iqRk2sEicfSw86+1POcQJD3TEJtAG7wHeOaMP4jAwL5nE/3PPxrMGxuWeekHVMQhng3AuT+MW9i28lA+x85EWlwVCGDw5ze+vCC9e0cfrVg+wflHHdQo7wrhVfrRvnK/vHOOR0aIUvxDzIbLBWGYRngF4RtC6BkfuVQj3FoRgEAJTMY3oocmsm5KpG0Fy5OpEIh1pgZ1I3cnsDOFYVZ62pIeXrexlZW32WENnUG7Z3+BfHh/h5v2NyBLCPZQL27TaVoK9ImcRyT6B/464krrrblzKCQ92xCZGe6qs/cQnZM+R3uWRYF4yicqY/J6FaljNO6zTWfiXs0Cwkfop1iqueIyfU8VJ8hQ45X68warhzWsGeNXqAZZUZ8ex02uE5y3v43nL+7jrUIOvPTbK3cPNzBPhkKsWcbbWZANw313Ni2SMVPDl1vJ4iGj7UMWYZFcITXJ2kCbG7PokO01rnIF6T4jJ2ocV1skGxwWDPbx0ZS9rZlGlODwITx+q8fShGlvHmnzp8VGu3znGqNV4/0FYmIw9iKQI3iBw3arzSbWyaqPtyQI7zh3uVEj0FwXvBP5kBm+4Y8w7JvGSOx5bNVSMbG4o/eOFSYvo+PUzQu0IpzcGPdIFsUioL4ZEl12YtX9+VR+/etpiVvTM/Uv7k/11/vHRYfY2Q8ivG2ET7RGJF8VYgOg1SWpUeBFjfEALewjtIakh8Vi/f6oq2pBbJxxsEG6ZYS/o7IMV4bWr+3jS4NFlaEcT+5qWf9g2zFcfH/WBemX7Q84uWr0ijtVqfDbuGAhrxV7w5ZX07+no2Ww9Yx3rrrlGOl8ZaIYw7+IkFjVH/5tV+l0JOo32CJcWrok9oD5W3pNyNf6HIdJsRFjbX+HjT17OH5y5dF4ICICLh2q8/9yl/OcT+uLLliwLeOYQFeJyvIMmwVL2kBAPbE02KxtsJ1Ft8EVus+Pi8ZJ5ZPJ/mZ3D2R3goiU9/Nd1gwtaQAAsrRp+9dTFfPKC5Tx3eW8UrO49S4ZnCE85/VaQDMo5QtTvjrM6q2AFrN30CK86nPuYKcwak9imOjA6zlpV1oowAFhx+VnbltTYvErk0BUbdKCvsnlrvdBldesX1lFfGr9QCjU0SatvqTcKuR8v6OSuLKyIcNmyXv7HWUOzplocDn6yv84ntgxTt8EbkhhEGOt5XAekgZnYR2AigZWkAU5mkGy1TbS6PXNBEw50sjbZHcje/7CqV4/Aa1b38ZTFC1s4TIV7DjX4s037eWjElmwWuV1i0viLyHSD6giVceGiz63GFB0MPeG7f3etPH9m76qTyx8lbFJdWozxSrE8D+FSVc6apifbvvjYrl0/3nvgKeNZ4FTTGurg0sJDQRlNc1q+PkI+E/7yqYt52ymLjuYtzhi2jDb5i4eH2dsIOYVZ9GfJUElpfxQOfn8KpkoxCnmuR0yQknD+wDzwQtZ7McL3sI8QNBWMckmWLK4Kv7imnzV984OlHS00Vfnk1kN8+tERwmobuXAIa3YEu0TwfrjjgvfDRQCfdeNSTtjYWXBVrYdTP/5x2TqDt9Q2ZnyK3Tim/2njiH6xGOUxLJ9SeMu0AgJQZc19B4ef0vQGyoK0upb1K3CpN9QFY5H6uIgQxBLw+2cO8bZTBlkIAgLglP4qv7t+MSf0mHKiVuALcWKX+L9An+KRvk1rPYkoIEhhySGdPa9HUaoHYcK2JHjyupVhEeKT+wy/eurAMS8gAKoivPOUxfzNk5dxWn8lqonBlZ5peC2RrBJVYvV0d+eZo51eXppN3niEt3DYmDEh8dCYvvjBEf2BFvy7Kq9C6e2k/Q/3HmB/o/Bl79VVnMIlc3l7utPrstnMGYlCOpcTHH9w5hCvPHFgpm5r1rC8x/DeMwYZqjoPhsaBWQ7zDmpGYk0t9Q7c7ihYoiCQxAB8Q69iaCZQ8lgLr/JoOfMyCKgzBqq885QBFs9jVe5o4EmDNT5xwQp+bmWffxHDbyIlA6+2/Fbh+aPCvhPHKWodFqWBK2fyPjrBEf/CD6meuHFEP2MLrkd5zuGe5yf7DsXCtYWG2Af3ZN0aGs4WYX0wigvtFcIaGarw388c4hULUEAErKpV+K3TB+k3eaYHcWS7Fy2lu0cbQnBHhrgJkYwFJLgiNGSswNtAgseExEAm1tkISVLKqQOGXzi5j54pvCHHOnqN8Lvrh/iV0xaX1L5c/oZv0cwZ1561qIG9azsrcafK097+dj1vZu6gMxyRkHhwTF+mI9yjyhuO5Dw76022jY07lUKdV0NDnQgk82q4GAjn1QgeDmcaevPJi/gvqxeugAhY01fhzWvdfUQ2EGesrJ5FeP20nLpMVMOIkZvx5ZWyCuIDG6JHxIdkEI6AvKiLa7u6t8JVawaoHacCIscb1yzi/ecupb+SDMuJPaSI1zwK1U1qht2ndlgHE2g05oZNHPYv/eNt+jcrhnj34Z5jzy7YvwsO7Idbq3v56cBe6lYIXo2GEjM9m15gKMatneFZRLiDi4d6+fCTl7cVUr1Q8OntI9y4pz6pl6K0qnmLK3Oq7UpLZaUWT0f8DAe3uPEssLxHePvafgYqx5eKMR0eGmnyW/fu4bFxG42XkMVQkCIynXoMPU3hmZ85CTNJmHZPDdacCmtOh6FlsHgp9PWDqTBy+ll8V2GnwGYxbFThR+v75P6jeX8dj6r/+hFd/7xLuP7cMzij07YP3g23/QAefgBGDqXtB9+0hcayJg0rjHmPxrg3VgZB4Rb7DfH1EIJVVvdV+NzTVrJ8nsRAzBQaqvzxxoNsH7clw+JEgeEQ4yE0eUFaPSNJSUnrhpZiKEoeDb/Vu/uqAm9b28+J8z6Ccm7w6FiTX757L4+NO99HCKgKyWHBhgbQMyysfHiAtXcuomfMPc+BQXjShfDkZ8LaM8B0IIcFdiBcj+EzZ/RyvcjMBl51JCR+/WN69bPO52+f9dT2jZLjo3D7D+Hm78KenRP3N5c3GP2FrYwVbnm+cas0rEkL/1rjVQ4fRKVAXP8A/ub85Vy2rK+T21gwuG+4wRe3jzLYYzjQUJ+5OLGeRfA2pMjLlP2ZjI7RV1JmIuSu03I6fMrcgJevqh2zcRAzha1jTd790z3srNuW2An3XJdu6WX13YtY+lgtMuHlK+Gyl8IFF0NlZuTvToG/6R3gr9aK7J6JE7YlJH7z47rcWj765LN49Qsubv/kD9wFX/4HGHmCwsGHLttN82kHGPOBUw01jBehCrZTM+KyaqoghrB84stW9vGn5y5vv0MLCFWBmsm8EcDehuVrO8b53p6GT+xyL2FeUSkmeDF59qi0CAhI7KRmxGdqVlhaFeoK28cK9jcsz1zakbPquMUWLyh2jBeRSQw9WuOUDUtYlIVj9w3Ai14JF11a/o1nCiKMAH+1uJ//uUrk0LQNnuhc0x3w25/QNeNNbjx7HWf850vbO2mzAdd/ETZ8b/pj91+1hWJJg3GvYjgWkZWqs76wrQRBAaiwpAe++owT502o9Uyir+LqT06Fuw42+OgjI9RVSgIgRmd6N2arIbJU8UrKKsi6fsOrVvdyQm0iz1V1NTzqnXntjltsHm1y9Z27GRuGU3+8hBUb+0v7z7kAfv5KGByahc4Ij1bgvesG5HOHe4onzAL9/67TFSPjXL9kMWe86NntnfDAPviHv4Rdj01/bH3VOAw1KazQVPXFba0LuUackVKBsJozPmpNlF89beiYFBC95okFBMAFi3t43Un9/MOjo35d05Cx6fanSlq5EVPLKgZJRVlVE65e20fPZItZ+PY9vu14V1BMi9P7q/xW3zK+8o8VekbK7+gLroDLD6Pe1KFReGwn7D0AwyPQKNzv3dsDiwdh5TI4aeUkrEQ5uYDPbhzRK5b080srRTpbEIQnEBK//QldPDLON1Q5/4UXQ7WN8ThyqH0BAVA//2Bc+Tsu6gtotn6GRbxF2MTw1tV9htec1FmVn4WAikC7sUmXL6/xk/0NHhh2hrJka5QYfJoSs5IrLlaGxrMJhNef1DulgMhRNUT1r4up8eMfwPXX1egp0jZj4DVvh3Of1v55Gk247yG4837YvW/643trcNoaOP1kOONkqNXSPlXetH+UZz88ri8/rVfuab8XUwgJVZXf+BhfVOWZ554Bp5w0/YnGx+DTf92+gAAoTh+mIKzdaWhiffKWcx0FW4RzK7kQbIB3nbLkmPTT93R4S5cs7eGB4SIGUkGKkTC01IMIvvsYE+G+nzNY6SisumZgtJj+uOMVt26Av/tUyXsMwM+/sX0BcXAYbr0H7n0I6h2s7zNeh/s3u3+9NXjG+fDUc6AaRrmyvtnkpk2j+l/W9ct32j3vpPPWb3yUd6ry4r5euPzp059EFT73Ydj2SLuXheZQAwaDauFCsV3MkHHVpmKdAl9Uxs+EJ/WZYyJoajJ0KvdO9oPbsQTi93L8g8Z6jO4aIWvWCYvTBzqLeWiDcBy3eOB+uPbjEwXE834eLmzTnvfAw/Dpr8MdP+tMQLRivA433QbXfRnueiD1SWFpofzbg2PattIz4Q35jY/oScD7AS67CPrbMGr/5AbY3GE4R+PU0axupatZ6RbZcUpvziKivxnhzWsGj9lw4E7vqiLBTRlFQHRb2vimhrwNzd7e9BYPTGcAmYF+Hg/Ytg0+8tfQbIlQuOhSJySmQ7MJ//Ej+MaNboDPFIZH4YYfw5e+DWPjfqNSw/JPm+raFreZICQU/kJhaFE/nNtGuNSBvXDDVzvqNwCNtaM+/Dqt/G0182D42TFPBe8VeMUxyiIgBdu0i8fGLaEuZfLI+5gHSXUOYq5ojJdIqsmhZucGhq5Jooz9++BDH4SRlsW61p3tvBjTod6Az18Pdz94dPoHsGU7fPYbsGuv36AMFk2+/ujI9GuPloTEez6mL1Z4LcD5Z7VHLb/+WaiPT39cK4oT6044UF67M5TG95kFKb0A5cUr+1h6DGcdNjuUErceaJBWjHKIFZQIyWDum9WQtJieLyLR8NkuukbLifjCZ2FvS6laY+Clr59ehbQWvv492DkLpW4PHIJ/+iZs3OI3KGvGlK/vVl3yRO3KI87yHnDz9vlnTn/Rjfe4gKlOUSxuYgfrWF9dytWKCC+xuJDrQJ3FRDbx2tXHnkcjRyeeg7sONNiwvxlZQSljM2cMPgVDYvRUisBElY2jlgeG24/ibXRdoCU8cD/cMsk6W894Hqxsw+D/7z90s/xsoVnAN2+ERx93fytcsG+EL6jqlNbrKCTe8xE9Fb9i0GlrYXEbrH7Ddw+vo+OnjGDVxDU81bs/c6+GtWkdBEFY21c9LqL+xouUIDQVHh8v+NSjo3Gl9IBkclDy2hIh8zMvuxZyCVSVLz42zlgb0qlhu0wihyp8/rMTtw8MwvPbsEPccjf8bNPM92s6FBa+9l3Y6xc9V3jxphHePdXxUUgIvF393xdMW0fKBU3d/9PD62Tz5PHIHFw2QhIQIWAKn4AUhsELVhz7AgLcvY4WbkC2WslV4ZGRgmseOMTBZkjYDLaH9KySkhGeLyUlJK+jrcDehvLBzSM8Pj656qEK9YJuxGULbvoebJ3Eo/eCK1zY9RNheBR+chgsfKYwXocv3wCjPmNd4X9uV1052bEG4JobtGqFt4Hzr56+ZvqL3HbTxJe4XRSrx1ytSq8rN339CEg6M6hfz8HNgC9ccWwmcU2FunXCYqxw7GKsgJHCVbV21bpS9eZQBSkFSiWXcQjX1pIQCUvXJUaxt6E8Nq6MFYkxNG3qR6PLIEoYH4evfmni9uUnwEWXTd/+pltdsNRc4sAhuP4H7rvC0pGRydf3MAD7NvIslDUAa09sz19/+w8Or2PN/oJiqOnq/oVy+Lic+6Z1EZZhdgQnNJb2GJ45dHwwiRyKH6yZrWJpj2FFj0kJWlK2MbQ6OXPBEDxGKbsz/dCDVWH9QIVCnWAYK/C5NF1vxmS4+UdwcJIA5wsvm378PLYL7psDNWMyPLwtM2QKV28a0QkJGG6hp4KY27l29fQn3rcb9u+d/rjJUD/F6dIuJsLpR0Uw0ItTO9C8cIdw6bLeY6qgzJHi5F5TsilYX6UrqHDgBYEvHJOWnNNoyHTtNbqZzx6olNSQLp4YN06SvFipwIVtFHDccJhq+tHC9za4OA1VpFA+pKolh4b7Q5KQOOmE6U/66MOH36HminE/Q/p1pGIEYEaTfacKr3ZcvPT4UjWmQ4q0dBBJcZa5KTPESJDbKAKJyJ+1CGcvmpcrPs5LbHsUtkwyBk4/GwYWP3Hb8bqbvecTDg7DzWnt8os2jfLqfL+vIpuExPKl05902+bD71CxtJkFTakPx/brfPo32JX7soi42IkLl9SmPe/xhDV9lbLhN4t9SHUufbg2yfZQVkEktquinDFw7GXUHi3cdcfk2896yvRtH3zYsef5hlvvThGZiguFCDDv/YieoLhSdEsG28v2PCIhsbjhhYR7Ulbylzctca+++tRQtTvLtWJNr4mqQ26XiKXSgokCcEI3VUmCtORc2HLGQJVqV51rG3dOISTOfvL0bX92BCz8aKKwyR2ryqUPDmvM2jJNYV34Y2gaqhSw6/HD74wuaXraa7JVmDXS4KBBi4Ba4alLanSzBco4oWaoSAhbT0wilKErx0PopKpI+NsC67ssom00GrD5oYnbB4dg6Ypp2jbh0Q6ypGcbd29M30W4Onw3GGLZnHaSueDwwrABij5L0Wu9794XlIkaTwjDTn+LwFMXd1WNiRCGqimrM0BbbBAQ4ifUf09BVjmzOOU4WIFrprD1kcld/yedOn3bvfvnt6do117YEapiKq8OBkyD7VxINA8zhbWxYtzry+IiLnEh2U2LYxHWRwX6J2lVOaurakyK5TXjPRqhOLAv0lPKfdGY/JWrHuolsFVXbfuk3mM3H2am8fDmybevnjZNylWVmu+417MkhdWbxrgM3LKP0XVQa2PSLorDD6JqLqt7/Ri/qE5aGbzw/ngV8cvtuO3rB7oVmifDsqqkOhJCZrhMqkWQECEaM3g0rFdJEOGkPum6lzvAjh2Tb182jaoBsGcBCIktmTqkys8BmELpn6rBZDhcFgHQWNqIwTwhIxGNcx4qiqpF/OrhBjh9oMskJsNQj0lsIcZGpNT6PKJSIBk1wyfu0XdVjc7Qmu0ZsKQNr+C+/TPbl6OBvftTTQyFy6ElC7QdhnAkawPYoSJWvQ7BPGB89KUiPgPUemPbaQOVY7bAzJFikZEoEDQrPgMQLBMai/VAiInwi7LHIKpVta6Q6ARTCYnBNoREp6UA5gIK7Ez1NJ+xRbXfiBIDRG0bN1HtgSWHWQpcl9S9+w3wgVQhUjAmdAUFWoXTurPclOivmLLbkxQsFeJQ4pqgZJmfmtZVRYTlk5TQ72JqjE2xhGc7qvpCKf0Xa1soteYoTzEDfcR6OKNtei2WrTq8izcXWQI7DlWpkFSRKdDnoFev6u2qGlOhr0JW/dozCo0lI7J4k1TKLtopCOqGsuIYLuJzNNBani7AtPGqdrJ031wiL4Cjwjnmj39RdgvsB5e+2g6WTZpQOj1stcjUDMdcCquu+Axen/Z1JSyWE7tUeEr0mxQklXuDnBuZsocDsjqh2T5VltUWyPQ2TzCVkGinVOhCERJ5jU1rOdsleIljE+0KieWHISSKql9xGUHVEIvcYhDx8cXiFt4J9Rm7i9NOjT6T0rFKA58s45OQzJWpHhmrWFozcd3PLtpDzxTOtvE2WHjPAiHGudlBhNMNgCg/A9h3oD3j5cnrpj9mwoX7tJRDq76GhGJdp7I33tVBMKzs6stTohLXIkkZs6H2Rtru4yRyOwRJBRk8jErZxzv6pygmM97GBLtiNpb1mwGUKqMpy5yQEP4VXAxEOwEfp5/lSnR1Au0rXOKWdVkbzsruvBsiXqeODjuHlV11Y0qkEvqkgKkJ9STK1b2CYTOwib6FYkmbR1g0RcDAyPD0bVcukLWtcyahwlID0Kt8TYQ6ZCW3nwAicM5TO7tws7dwlDjmF6SgKrfUn22hzcqi7kw3JYRUDyLmcJALg1B1KjGL3FCsQG/38XaMpVMM9H27pm+7cvnCyELKow5Eccs3vf9dsh/4D4BHp4goa8V5HQoJ7Q3rUZJcnTHPQIg5HFnE4OEsHHN8ITEJKAuJ0gI93saTgq3c8++tdp9vpzhxiqJM7SQ99lRh6RMWr58fWJonegqNVAhX+WeAR9osiLHuPOjvoMK91hpeR/Z1FyXNgok7hKVlHCXur3RtElOhaoTFFVhkoE+gZlyEanh+wYMUoyxJ0ZhBYPR1H2/HWDWFkNjdZmb0SYcZPjCbWFa2ndSjvbUCX1L4y/2H6N93sEWaTIJKBS57Cfz7v7R34WZfMJgFmmxi5F8sjODzxUOxlC6TmBon9Vb4v+dNFeanbrkC8MsWaAyycgWI3feuOtc5Tpki2/PRze21P28d3HMUV+qaCSzL2Y4yHOeSP3+X7EL4S3CLlraDZz6//ehLrYXi+eAKyqRVpQh6s0h8mStCNyT7sOGStmoi9BthsGJYUjWuiG6twqpahdW9FRZ3A6k6xsqVMDSJbB4dhh1tLLJz8okw1KHRf7axvDymt5bekv5FvF+EffdOUlRjMlR74LltLEICYHuLaF0PhstQBj5Z4hUJpKK903bRxazjzCnWpXmkTYbwpPUz15eZxrIlEzw4W0pC4k/eJHtR3r/vAGzf2d5Jn3YJnNBGhW01zt3pkBK5NAqMlnqMCqPtJJN00cUs40nnT779/jYX2zlv/fz1cpx9evlvMTw0gW8ug79E2PbjNm/YGHjNO6BnmgQXawCf3xkKo0ByyxUxozEY1oTh7ppyXcxDPOXCybOhN90LYyMTt7dicADOa2Ot3bnAOaeX/64YbpkgJK55l4wY4U1bttHc2qbFdtVJ8PKrpjsq5GiU6y76Xd4sH8KHHaMYaXaFRBfzD4sWwTnnTdxeFPCzKYrktuLSp7nV8uYTVq0ou2hFGD61xr2TWq4++A75jgi/84Pb2r/A+RfBJf/pCQ4wISJCoh0i9+OHzKSwT0QYno+1x7voAnjWFIvw3HpTe+37++A5T5u5/swEnnpOywblhyJipzRvf/Cd8n8f38XnNm5t/yIv+i9w4aWT71NxDCK442LAD8mPHyMF/d9ddaOL+YqLnjG5Z2/LQ7B9kkWEJ8MFZ82fUO0TV8B5Z5S3qfBVaKlM1Yqeft52y13c1W5NSxG44k3wgpdP3KcSWEMI+Aliwq0JmhtyQj2Jka6Q6GKeolKB5z1/8n0/+nZ75xCBl1wCtXlQxvV5z5y4rcfwNZhGSPzZVTJc382z77yfezu54OUvhVe9FapZamxUIwgmiFxUQCqaEipmK4e66kYX8xjPfaGzT7Tipze3zyZWLIWff+7cVq067wxY3bq8p/DD0/rkIZhGSIAzZN51IU/esZuN0x2b48nPgHf/HpxzQbwoVrOIy7DRI6+HEEKHu+pGF/MZixbBK189cbsqfONz7Z/nlJPghc+auX51ghOWTc4iED4SvrYVcneNiD3rFC4cb9DR+kPLV8Hrfwne/BvQ05+WjQkcIq+aHQKryLwfwwuhcmgXxzUuuRxOm6S+ytZNcPsP2z/Pk86E53SYNHmkWLwIXvGCSdWdXb19/FP4o+243JUiBwf6eYHCoU47s+5sOM1HqYVAqSgw/H/KaeLu36GuC7SLeQ4ReMOV5fTqgP/4UntxEwHPvABednl76/EeKfp64RUvhEWTF9H5vVNEYhmdjoL31/XKfabCPouiUAAAIABJREFUG/C1JzpBVcQXmQnRlXmNxlRuJggQRRk+3FWAuuhiFnHaOrj08onbhw/CDV/t7FxnnQave6lbvPto4YRl8JqXTMjRAEDgjvUDfCzf1nGGz/o++XrF8HIR2qyI6bA4ise8iJrEuImJnRX21otOu9dFF3OCV7walk+yiteG78HP2oxeDjhhGbzhZXD+mZMzlCPBU8+B179scgEBYAzvEZGSnn9YaYDr+uTfEF4i0Pb64osqxkdTSpYZrqirneSyQsEbON2+neNdm0QXCwOLFsGvvAcGWui7KvzzJ9r3dgT09cKLng2/cAWc2cZixNNh5XJ4+fOdkXKqMi0ifH5dv3y3dfth5wqv75fv14SnI7RlnllcrSBicCHXNmZ8ht7F9SM02ClgR6MrJLpYODhpDbzjVybmdTTq8Jm/hf1TrP71RFi2BH7uufCGn3MsoJM084qBc9bBa18Kb/w5OH3t1McK7OiD906x78igqj2bxvivqvy+alp8uBU37TnIR7bsYKwQxq1QVxgvhIb1K4v7tTcKFVclV2Btb4WfXLrmSLvYRRezih//EK77xMTtK0+Cq98LfVNU3G4Xe/fDpkddPdoDh2C84YrX9lSdIXLpYhf3sPZEF/49HUQYRnn++kWyYdL9R9bdhC1jeua45f8IvMJ7NEu46+Ao79+4jXELdSuMWaFphYYKTVUKDSHaLgJTRekVYdML2ljTvYsu5hn+9Svwta9M3H762fCGX4Ja7+z3aVIIzYrhinV98s2pD5lhPFTXp9omvwu8EiXmuT0yWud9929hrICGNYwr1AuhqdBQsBga1vq1OJxaAsJ9zzuZodmooGQtZvduzK6dyKGDyMiIUyirVbRScTnxlSp22TLsihPQoaGZtyp1cUzhW9+Ef/7CxO0nnQpv/CUYnAfrcIjhrev75VNPeMzRuvgW1eX1EV4PvFKFSw407OCv/HQT4wpjhVC3QsOrHYVCU0HVeLeod5eqcP3FJ3LB4qOXUyu7d1O77RYqmzch9TYXQwW0UsUuX45duYri9HUUp5x6ZEuud3FMYsNP4O8/BY1GefvSFfDadziBMRcQR9z/3/UD8oFpj52F/qCq1YdGuPDNdz70w7GmVpxNwgsJ6wREU13ty6b1tS6tImL4yAUreMWqI1TipkD1zjuoff97oTD9EUFrvTTPPY/GU56GLlkAddO7mDVs2waf/LD7zFGpuMzpZ79wdvsjsJ8KV67vk39t5/hZqYQqIs31i+Rmq+zGF35XzepJ4IyVVlM9CSNulcpNw42pT3wkGB2ldtONMyIgAKQ+Ts+dt9P/mX+g5yc/am+9xC6OC6xZA7/z+/CiF5cXDS4KuP4L8HcfhJ1tLmVxpBDh2z0Vnt6ugIBZEhIBFn3QRV0qRkLmm40FZ9zqxSkC06JsGp1iGecjRaVyVGwKUjSpbfgJvd/4+oyfu4uFi54eePXr4XevgXNbqlptvh8+8r/hm/8EB/cfpQ4I28TwtvUD8qJT+6SjZM1ZVaLXvPXXnw08vQDn+vQGSxdX6cO0UR9P4YIlFlWFN645CjGqlQpUqlS2dhjl0ibMvr3OwLlsnlQVmW+o1zF79mAe205l5w5kz2739949mL17kXrdGYynWsZ7gWLxYnjWJU5QHDwIO3w4oqpbu+Pm78CBvTC0AgZnQmsVNgr83voB3rK8Z3IX53SY1cXQVc2d4pmDCcFT2bpdofhM4dmEiOGegw0KVSpHYdZvXHgROjDg7BLjYzN+fql3nOJybKLZpLJ1C5WtWzA7Hsfs34+Mtpf5ZAcXY9ecTPOssylOPe2Y8SitPwt++SzYvQtu/jH8+00FozsqFIUrgXfrTa527PnPgHXnOgNnO3Zxr63fr3B9BT69bkB+dKR9ndUn/owfPnipFHx/zELdGsat0lChYQ1NtRRqnK2CYJ9wrtAvX7SKZy9rIyrkcDHu7AnVu3+KaWd56DZQrFnL2BWvOK49HrJ3Lz2330r1wQeQxpELTLtsOeMv+E/Y1W2s4bDA8Es/3c2/bh7lhF29rNjdy8ChKouGq9TqgqjQW4WV65Slqy1Dq5T+ZZanrO7/wsql8jjKboVtlQqbq73cfIrIYcR2To1ZFRLPv0H7RnseOjRqnYdj3LqISxd1KViEhnWMwqkfihHDr5++mPetn2pJuxmEtZhtj1Ld9BBm+zZHe4vObCLFylU0z7+A5nlPOmZmvY5hLbWbbqR6150zZhgO0J4ao6+/8pjzIF34/W1sH296Vm2p+PymHqNUBKqi9Bq35mtvBaqGR26+ZP1ps9G3WVU3vvMCGbv4pgcfNnCGEwOKYBADWOftMCLORqFBHYEbdo/xvtlY9cgY7NpTqK/1UZ6qyL59mN27MHt2I+PjziRdFEhROCNrXx+6aBC7YgV25Sp0cJ6v4TYL6P3G16k+vOmonFsadSrbt9E8hoTEbQfG2T5e4DIfQ5VoQSQUegyLbLvj/ULbt85W/2ZVSACo8DMROUPEV6ISJaR/GoSGuiAqi0UwWFXuPFBnZ71gZW2WqbsIumwZxbJlFEyxtlsXJZjHHz9qAgJcPEpx8hNkKi1AfGXHKGG9d1W/Uq6GlSa83U4EURu9ggpHbGtoF7O+Yqy13G1EESVKyJgBSqpYZSSVtUOEG3bPvGGxi5mH9vczSerOjMAOLGLs519+jLE15SuPj8RSjuC4gwsPUB9V5NhEMPYbFNNjvzZbPZx1ISHS82MBjPFxESiiYbVx5+lQX1MC8ZUmVPl2V0gsCOiSJdRf8CK0MnMkVWu91C96BqNv/AXsSSfN2HnnAzbsr/PoWBGD7wTBSqoi7xfDjDFFFTerPnzzxWfdPVt9nHV1oz647xu9BwfHDdor4qSjo1KQaJVmmph7YDfsHp24PGAX8xLN855EcfJa5zF64P623Z05tH+A4uS1NNedQXHG+mPWS/SVHSN+xTrjiy9Bxb/lRoSKeAGhYIwbFdbyH7PZxzkZcc+86aHv1a29fLwQxiw0rDCuUFiXNu7WDHXBVZLV1/63Z57IRUPzJce2i3Yhe/ZQ2fE4sn8f5uBBV/zAW99QhUoFu2QJOrQUu2QIHRo6xlSKqaA85cZtPDZeQFQnLAahKmCMpUeEHgM9Yukz0FsBVF916+Vn/sts9XLWmQSAGv7NWC4Xb4QRUYyPjzC+LFVYciOoHQb41u7RrpBYgNDly2ku70aetuL7e8d5vG4JZREUxSCIHxPOlG8RVSppLd2R/att23kXM4FZt0kASKX4khF3cQPeiJmqaafSduoflls/9Ks7Oqq920UX8xp/s/lAjDkuc/q0Uq4RN3EKSsUoKDc+eNZZ7dc0mAHMiZC4+eKz7haRh41nCMZkAgP3n1hk31eqEoH7DjW491A31LmLhY97D9X51u5xVK1751WTtw8I8REGS7DdOV5R/ONs93VOhASAtXy74tUNEywPknXKGzLDQsOugjb8y+OdG8G66GK+4UOPHEwzYoRXOSR3eYofI4oR9h1cnVbWmi3MmZBQw9dNTBlXYuyEpIV6gsoR/wn882NdIdHFwsa2sSZf3D6MVVcNPkyEEOKDLJFl41K1KwJW5KuzrWrAHAqJPjnjX40xo4YgJLza4YOsCMFUPkQVAIVNI01u2T/rz6mLLmYMH95ykKb6EKnwjktQO9zkGA36xo2NioBR84S1KI8W5kxI/PASGbUqX6n4oCojXkCIf0gEY6YL0VacxFXg2kc7Xo60iy7mBfY3LX+/dTgsRYWY4NtIXo2K+DgJnHCoYEHMplsuO/2GuejznAkJAFOxf2UQKoiTlIFRQNAuUG/hFfArgMEXtw+zr7vieBcLEH++aT8HC/fuunVwfRqCo87uE8cujHhVw0VTfXSu+jynQmLDc868SeBO591IJe0C1SplWgu4o5QxC5/Z1mUTXSws3HOozkceORg9dwZxjFmS219EqeAmzIoENiEHBljyobnq95wKCQCLfLSCo1gVEfeAgoVXlYqXsI5FJAPPp7YcKv3dRRfzG8pv37eXIjBkVVS8Gq3q3Zxe3caxh4qPjbDI39902cqDc9XzORcS/ZV1nzRG9mVuHh9AElxA6cFJqLKN8uBIk2/t6iZ9dbEw8Nntw/x4X90JB2+0xNshKhKyPjM7hLdNVCs0RPg/c9n3ORcSP7xERsF8LkhNQ3L9hGjLQBgU61QQX037fz+0b+463kUXbWJ/0/KHD+xz5ndx7zHisp/du+xsFAZ17EH8pwFs5au3XXrGw3PZ/zkXEgBS6f2LijHqVA63GnIM2442CnesK8bhbBO37W9w/a5uqHYX8xv/+8H97Kg7dVkVDMZZJYz4d1y8m1P9+y9UjVAVbUi19/fmuPvzQ0jc+pw19wr2u86Sq16iJkERy3cRgq1Clr3yxxu7bKKL+Yvv7x3jE1sOZmoGMWHR2SU8e/b2N2Ocy7OCgpjP3PqcNffO8S3MDyEBUFD5bxUjtipOijqpqi7Ayud++bJdMcMY4LYDDb65sxuF2cX8w/bxJu+4axcuz9Opziph8SkvFHwZx4p/5+P7b2TUVmvvm+t7gHkkJO68fN2PEb5QQalgvUSVTOXQGGASbBVOWCh/8MA+Vxuziy7mCZqqXH3nLnaM21jQNhSiAz/wfImEind7ViKLsIiYj9z57LVb5+4OEuaNkAAwwm9XjIxG24R4gUGIyExZciEDH58d+sFNR2t9tC666Bzvu38vP9lXR/E1UfAGStXkyZAgGLwtQvAswuws1PzhHHa/hHklJLwV92+rolS937hijDNkEsp3peQvjZJZ+bNNB3ho5CgtLtxFFx3g89uH+fiWEOyXijC6Uo2h0HNKRwgsogpUsdiC37nr8tP2zlX/WzGvhATAmDSuqRjZWRWh6hmF8fX9QhKYEJJi1GfSCWOF8t57581z7eI4xT2H6vzGPW4BrRBZqWFZy8iE1cdDKFW8NwOlakAq5tt3PX/9nCRyTYV5JyR+dtm5B7XC/6rg2IRbvYikdmiSwKlAh/tBbtgzxue2d8O1u5gbbB1rcuXtOxlTTWnguEzO4MkQSSHXlez9rhqlUjEjhdF3zfFtTMC8ExIAdz7njL+qVMzPHAVzQSUhKs2YpHYYzfI7VLBq+a1793L/cFft6GJ28ehYk5dv2MGWscKtYxuHls/x9MWVDEpFjM/udC7/qlGqAqj88d2XnPng3N3F5JiXQgIRa6V2dVVohAfo/tmU22Fcmm0oVBMsFAebBW++YycjRTdLtIvZwfbxJi+/ZQcPjzWx3uMWVt5ysN6F79WMYKg00INnykZuvOuy0/7X3N3F1JifQgK469K1P0Qqf1g1XjhISAJLng6jLvhENOTlO6l933CDX79nRhdW7qKLSfHYuGMQm0aaziXv3JeZq9OtCl7xORoVEcceBHpEnJoh7JJK7Y1+tpt3mLdCAuCuy077XwbznaoRqrmrCK92ZCXvgkEIFKvKP20f5mNb5ixxrovjAI+PF7x8ww4eHHErz1t169eGfAwXXenX7/TFlarGGSsdQ7ZUjahg3n7HJac8Ooe38oSY10ICEW1irqyI7uoR6DHi1Q7PKoz4PA/xZe/S/xTlv923l290ozG7OAp4bLzg5bc8zoMjTQSilw3PaiGsJ+MymisI1ejNCMZKwRj567ueu+7Lc3gr02J+Cwng3ueevt2oeVvVqFaNdQ/au4wMKe5djC/agcZ1POpquerOXXx7dzcJrIuZw10H67zox49x/3ADi2cQYtzC12L///bONMau8rzjv+c9997xzHhfKRhjD3jDBBIRAgFjcKlKk0BImqZREpFKLWpTElXiQ/sp6gKNkraiH6qkVZu2KhFUUUlThaI0RMQGb0mLIWGxjfHKahuvY8927znv+/TDu5xzByQWL+OZuX/Jvnfu3DMz59xz/ud5/s//eV7UhZEHKsEsFZyUoaLhV+SCDF2/4oYl94z1/rwTznuSAHjupr5HRM0/eO+E7+moBTbORCoW7nK6TzTBNq3jC784zObjndkTHZw+fnR4iI89dYgDTUtcG0PEhGYiF4xS5VwIIxq6OqFuAkEAtUx3dvXO/vTDInZMd+hdYFyQBIDOHb6nZswz9Uw8C4sG/4S2TbMylPqEAKgwaB2/9cybbO1M2e7gfUO5f28/X3r2CIM2TpRyqX9IpWwZ8PNQvD8iuihrItQI63pmcliof/zpD88eF70E8s5vOX/woQ275uWYzbljacsJuSq5g1wNhfNSkXXghLIUpQYNezmjJjz0ofmsmTVlbHekg3GFI7nlD184yk+PjKQKmlOHiRGEvxulie/GlAJ7PaTHdQMNozQMQ2rkN7av7ts4tnv17jGuSAJg5ea9lxirm3KnC1tOPEmE1cgLlZIo8P880wsqvkRaE+H+lbP53YXTxnpXOhgH+NnxEe56/igHmhaX+jDinErSbAhvtRZPEPg0uGaUOiHNyKAuMiKZ+c3tqxf/zxju0nvGuCMJgFU/33W5NuXJXJnbsoYCyJ1SOKEAnI6OKCpEEZj/y4um81crZoUR5h100I6mU76+5wTf3n8KF8YShPaLMBtCkq0haRDEKMIL63XjS50NoJ7RFHGf275m6XldyXg7jNsr5PKN+67F6U9yp9NbKuQWCgJRqOIwgSgUpxI+XEnhIihr53Tz3avmMaM2bqSZDs4BnjrR5Ks7jvLSQJEih5heRCelULp9TZzyHjUIcdSMoSZKw0AjoyXUvrhtzSXfH8v9er8YtyQBsHLjS7+G1h7JrXZ7bSKkHTGicIJVDWmH+DtCsFyhftxVX0+Df7xiNtfO7OgUkx39heMbe07wz68MpHQV9SKlEZMEygxAg6GPMMBWov9BvUCZ+VSjUZMhY+p3vrD64h+M3Z6dHsY1SQCs2rD/M0rx7y0njdxC7qBQoUCwTrH49MNp0CnU8wMxuhBFVPjKkun86WUz6DadqGKyQVEefH2Q+3af4HDLlzahEj2EqWdxUrsYTQvr+AV0NLV716PlOoM6HKcun9pxQ9+GMdu5M4BxTxIAl2/ZeQut+sMtdFbuhMJBrmAdZUQR9AmHok5S0Jh6/lH6eup8a9UcbuxUPyYNNh8f4c92neDp/mZwPcQeIEJ/lqJSegVSBSNYrf0SlVqa/AQaotQyeVWm2I9t/8jSbWOzZ2cOE4IkAD6wft+KInOPFpZLcxUvZKpQKFgVrDqcmkQULgmZcaiuTz8U4fcvnsq9y2bRm3WiiomKX55s8pe7+1l31JvsUr9miB58H4YkFy9RfwikUI6eo+xSNkpdlCyTZxvW3fbc2qXnxYzK08WEIQmAFf/72hya+SPW2uu9PuGjigIfVVjAakw/wiBdCXcPF9KQEFVc0FXja5fO5M6FvZ0KyATC86da/M3efh59czhVKZIxilJ7QKIZj9RpbAIpmDi4thI91MRRFzCZeWjEyl371y6ZMBbfCXf2X71V60NDex+wTj/vUw8vYnqy8DqFU3AiqTya/BTiyaKMKmDl1AZ/vnQmH5/XM6b71cHpYf2xYb697xTrjo28hRzCwFQP8VGDiQapNDDG6w5pHkRs0pJY6qSF6h/vvPmyvxuznTxLmHAkEbFyw957neNruaoUTimcqUQUoeqh3m3vNFQ9woqCSatQPyNPFa6cXudPLp3JHfO7mcCHbUKh6ZQfHhriWy+f5IVTORJ0KQEcLqQQPrUwGBA/qMgPWvYdnGIgCxOuTVjEtxYnpokEoVJeUZN9YeeaSzaP6Q6fJUzos/3yjS9/1tni7wtlbh5SDwsUTj1ROEqiwButXCILBTVoWjPBE8nl0+p85eJp/PaFvUzpVELOS+wazHng9QG+98Ygx3KXvA5p5Tf1TVka2rvTuhjq/GhErfQCRR9EWJ+zFonCVy8Q5CHbbe/efd3Sk2O3x2cXE5okAK7cvHt+y5rvWOc+WTjj0w4Fi1IkIZOQhngxM1VApBQ1q1UQQZjdyPjSRb3ctXAai7prY7uTHXCycPz3oSH+4+Agm443k0PSqSIiYaQcqWLhp0e5lHik5iyJAmX7uPvYi1ELjYW1jCMYuXvnjX0Pj9lOnyNMeJKIWLZ+9++IMX9bWJ2dA9bFykcQM6n4KVRRGZ2GKP7+4k+reHoB3DSriy8unMon5/fQ06mInDOMOMdjR0b4/huD/PToMM1owU+XfrlmLCrB5+CHwjjVtHSkTy/CDMowJCamFlkYGJMZl+aYZCb7Qa1L737hur5DY3oAzhEmDUkALNvy6kXSzP/FobcW1fQjkYW/+J3zVQ8XbN2++lHp/QhpSDwRJQhfvZlw+4Ie7ljQwy1zuukyk+rwnhMcyS2PHxnmscPDrDs6wqBNroY2vaFcximSusOIoC7OHKESPQSBMgiSRsvypp9HGcghk10Y90c7b7zsx2O0+2OCSXkWr3hy3x843F9by/RIEIWKd2c6xWJwwc7t+z6CtRtSZOFT2HC3Ev9oJCzEAvRkwq3zerhtfje/OmcKs+rZWO7yuIWiPHcy54mjw/z46DBbT7T8snkpFSwHIINf3yL6HIyYQBgeUZAUDQv1puqFpgHLfoKU8RFEJIpMhoxy/9SpS+57+sMy6dZrmJQkAXDFk7svzjHfcPA566hVxUzvp/DpRtQslLJkGkulKpE4iF7vSnHNH1p/xxKuntHglrlTuGX2FK6e0UUmk/bQvwOUbQM5m4412XRshC0nRugvSj1IU7QQj3CMJEIuEWdMlgJE2a0ZPhsj8bHawRlTjDJ6yNBhI/ybMdl9O9YsPnBOD8N5hEl/pq7cfPAK2xr6psN9wqqhUMW6EFXgtQvf7OPFzNgkFqsho7tLy+dg8HcyKE06RoSeTLhmRoPrZnXx0ZldXDOja9JqGUdyyy/6WzxzssnW/ha/7G9xrIjlybjYbpUYtC2KIAqTiRDCN4P4CJKMUKJxPc5QuVAlEx85pFW1/CjEEUEfkK7GfS+dx1OszxUmPUlELF+3+wZnzDdVdXWhjCIKf7La5KkIJiyR9oii8tz/Z1BcoI94qMsowwS3ZwasmFrnqukNPjitwVXTG3xgWn1CEYdD2TdUsH0gZ8dAzo5TLZ4byHl5uKBMFUpfU/v8huhfCK3aId/zEYN/owTBMgqRMaIQgt9ByvGGpmKO8hFEql40TSbfdY3GvbuvWzghLNVnAh2SGIUV61++zUnxdadcGfWKOO3Kd5SGKgjq289DJSQShNOoqEtKTfzXIBVzVkxOgDRINd4RBR8aL+qusby3xvJpdVb01FnWW6evp3Ze6xuHmpb9wzn7hy37hnP2DxW8NFiwc7BFK7hZ04Sn5HJ8KymUwiMkYpW4XWVClJRVJkn/ypRCpNKUZarDYeI6LoIx2jTCgxb9iz03XfbqOTtY4wQdkng7qMqyDXvuRM09zrkPWgxWNfV9eLLwg21SyZSKsBkjinB3i1OxqJKGeiLQCmnETyOe9DGBia9ExWN6zRPI4u4al/TUWDSlxq90ZVzQlbEgPNbPsOYxYB0ncsfhluVg03Ig/DvYtBwcsRxoWV4ZKhh25V/ugkaAVMe9lfvv91mTF6X6tSDeyBaYxISStKTnLhBBII+USvi0QkSC18H5tm7xvRaGsFYLjizL3kT1e42a3r9t9aWvnNEDNoHQIYl3wIondn3USu2r6vTTFu12LqYdFX+Fi74Kf/LGwTaqUpKHglYuCK38DlUQE8glGnuChhGvdf+6V+SEGJFoog8JlZWIuQ3D/EbGnIZhZs0ws26Y3ciYlRlmNQwKDFnHsIUh5xi2yqB1jFjlZKGcKCzHckd/rhzPHblWSr7ESEnT3T/pAlFDiBboRAqV96a/30cMGlIDH20FR4rEnx/30KX9N/4QhslQno4kEEZKJwIhlOJkXCZSCzGyTpB/vdAt/s8n1kpxNs6biYQOSbxLrNrSPzsvjn7ZqfyeWtdnVbBoSD1iZCEpHfHEUKYiTkpjVryWouU79ozEEBr8RedUMcSuxPB6RRglvD+K+W0RSDQOVb+O21QuZOLvrV7Qld8z+ntQERMTQWh7NNSWVvnFc02QEVW0JMJKHSiKuimSqPz95d9apmLEVCIcK08OUZD0sx6EsC4LijFmnxh9UBuNf+roDe8NHZJ4r1CVpU/s/YTC3Yj8unWaJZ1C8AYstCSLcLG4SAwE8kBQEUKfESHASBOYo3krLloY10hvu+i1rJhEA1HZlxDuwmEDVykapmiEUSTTpg34yCVun4oJAEkziNtXLnYp/w6kItiqVogDv+IapowmqEYPpOqGpH2NEZZgwu9PLdyBLN5CDCIjIjyqwnd239T3kzN5GkwmdEjiNLBq055FTWs+D3K7uuJap1Lz6YekSd0u6BIxukgNZBqWpxdT+bqiXVCpkkgZ5PuSXsj3IV04UTAVKcN0v/ko54aWFzfV9yVSKa1J6ddXHqm8HrePkQAi7SeUlOYmTYNkSZWIGHlIYg8tiYGSICWmFoaw+FLUG7SMIggWayOHjPC4iDxat72Pbls7f+D0PuUOOiRxhrDi8dfm5F35Z4x1dzjkZqfa45KvoiSO6K1wEskiipylWSj1icTnFb1B267WmBKkIe/JlyEhTTHgU55KoxPwFnJoe4S251S/X/F9lNsT7vxlI5UZ9bOo/J1eV5DwfpcMZ1CpToQoQShFyDjXIVUs/FZODM+K6GM488Pda5f8/Gx9xpMVHZI4C1i45dXu3jy/3al+SkVuddbNTu3ozqv2zsXIokoUledUiSOWCGLlxL8ptbFXbveh+ZlINaOJoa186F9sE0DjNmj789HbE7c3ElIBoeqD9KlH1FRciBhGkUFlabyyKkGKTiIxCLFCEZ2Spl/QjSr6oy41/7Vt7ZKDZ+Nz7MCjQxJnGZ9VzZ7f9NqNhW2tQblORa9Rx9yYdsRx/97qrZUIoxz/n/QALaMCKC/+qGegKZsAF0lklKCJhFWwy58b3xP1jZjmVFOPlLIIlfeVP8Fte1fVAAACG0lEQVSM2l6I6Uc7qXgyKKsRiSQMqXQpIX3wEYMUCC+CbBXc/9XrvRt3XL9gW/Jad3DW0SGJMcDydXuXFzXW4OR6xH1EnSxX1UxVfBVEq8RRjSyAmJLEizm+rkH7j/pFEgrbP+JqpaT9G+GxKjZWIFIyUBrSQiADyh/p7/z+vcnoFKMIrXxfqpFCSQwYOYjwtDh9ytTYPGV678+eu+qCwfd3pDs4E+iQxHmAvq17ZmTD3KiOG3CySsVdCtkSddodySFqGxpu5zHaiLqEJo0BkizYRhSxbEGqMlTzlKhRVMKIFE1EAinLoGVsIqO295GBnxspWi6Fl6IIQMRY0FcE3SMiLymyU+r6Yqa1F3auXvTG2TnKHbxfdEjifIWqLN/w8mLn7CpnsuWoLgO3FOUyVbkI359E6TqIoielXhFWKQs/LvBB1Dd4+5JF5XWpmh9iSbOyOZSRQCQMr1GKE6NHUXkTwyFROYjaXaZe32GMbO9tLHxxMrZcj1d0SGIcYvH6fVNqXcVK06xdYg0LQOahOg/cfJS5IHMU5oLMRl1v6YaIoidRWaRNmQgkInEpGs8Iw6ADIIOgAwYGVbJTYAdQc0Jwh1TMG0JxQEVe10xeu/qGvtcfFrHn9KB0cNbQIYkJjoVbXu2eonqhFq0FNZhiJbPGOmuduqzeVRS25bKGKYytOWucFauuqLkhbUn//psXn0TEvfNv6WAi4/8BwgI1pO9sOCMAAAAASUVORK5CYII=",e:1},{id:"image_11",w:43,h:38,u:"",p:"data:image/png;base64,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",e:1},{id:"image_12",w:129,h:110,u:"",p:"data:image/png;base64,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",e:1},{id:"image_13",w:64,h:78,u:"",p:"data:image/png;base64,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",e:1},{id:"image_14",w:65,h:78,u:"",p:"data:image/png;base64,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",e:1}],layers=[{ddd:0,ind:1,ty:2,nm:"椭圆形.png",cl:"png",refId:"image_0",sr:1,ks:{o:{a:1,k:[{i:{x:[.667],y:[.898]},o:{x:[.333],y:[0]},t:0,s:[0],e:[20]},{i:{x:[.667],y:[1]},o:{x:[.333],y:[.286]},t:6,s:[20],e:[100]},{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:73,s:[100],e:[0]},{t:123}],ix:11},r:{a:0,k:0,ix:10},p:{a:1,k:[{i:{x:.667,y:1},o:{x:.333,y:0},t:0,s:[104,109,0],e:[60,-7,0],to:[-13.5,-65,0],ti:[0,0,0]},{t:73}],ix:2,l:2},a:{a:0,k:[-30,-55,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,hasMask:!0,masksProperties:[{inv:!1,mode:"n",pt:{a:0,k:{i:[[0,0]],o:[[0,0]],v:[[146.5,-59.5]],c:!1},ix:1},o:{a:0,k:100,ix:3},x:{a:0,k:0,ix:4},nm:"蒙版 1"}],ip:0,op:180,st:0,bm:0},{ddd:0,ind:2,ty:2,nm:"绿圆",refId:"image_1",sr:1,ks:{o:{a:1,k:[{i:{x:[.667],y:[.898]},o:{x:[.333],y:[0]},t:0,s:[0],e:[20]},{i:{x:[.667],y:[1]},o:{x:[.333],y:[.286]},t:6,s:[20],e:[100]},{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:73,s:[100],e:[0]},{t:123}],ix:11},r:{a:0,k:0,ix:10},p:{a:1,k:[{i:{x:.667,y:1},o:{x:.333,y:0},t:0,s:[198,171,0],e:[308,30,0],to:[41.833,-79,0],ti:[-18.333,23.5,0]},{t:73}],ix:2,l:2},a:{a:0,k:[4.5,4.5,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,ip:0,op:180,st:0,bm:0},{ddd:0,ind:3,ty:2,nm:"星形.png",cl:"png",refId:"image_2",sr:1,ks:{o:{a:1,k:[{i:{x:[.667],y:[.898]},o:{x:[.333],y:[0]},t:0,s:[0],e:[20]},{i:{x:[.667],y:[1]},o:{x:[.333],y:[.286]},t:6,s:[20],e:[100]},{i:{x:[.833],y:[1]},o:{x:[.333],y:[0]},t:73,s:[100],e:[0]},{t:123}],ix:11},r:{a:0,k:0,ix:10},p:{a:1,k:[{i:{x:.667,y:1},o:{x:.333,y:0},t:0,s:[139,170,0],e:[29,40,0],to:[-43.333,-71.667,0],ti:[18.333,21.667,0]},{t:73}],ix:2,l:2},a:{a:0,k:[8,8,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,ip:0,op:180,st:0,bm:0},{ddd:0,ind:4,ty:2,nm:"绿",refId:"image_3",sr:1,ks:{o:{a:1,k:[{i:{x:[.667],y:[.898]},o:{x:[.333],y:[0]},t:0,s:[0],e:[20]},{i:{x:[.667],y:[1]},o:{x:[.333],y:[.286]},t:6,s:[20],e:[100]},{i:{x:[.833],y:[1]},o:{x:[.333],y:[0]},t:73,s:[100],e:[0]},{t:123}],ix:11},r:{a:0,k:0,ix:10},p:{a:1,k:[{i:{x:.667,y:1},o:{x:.333,y:0},t:0,s:[119,191,0],e:[9,91,0],to:[-20,-43,0],ti:[29.333,13.667,0]},{t:73}],ix:2,l:2},a:{a:0,k:[12.5,13,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,ip:0,op:180,st:0,bm:0},{ddd:0,ind:5,ty:2,nm:"黄",refId:"image_4",sr:1,ks:{o:{a:1,k:[{i:{x:[.667],y:[.898]},o:{x:[.333],y:[0]},t:0,s:[0],e:[20]},{i:{x:[.667],y:[1]},o:{x:[.333],y:[.278]},t:6,s:[20],e:[100]},{i:{x:[.833],y:[1]},o:{x:[.333],y:[0]},t:71,s:[100],e:[0]},{t:123}],ix:11},r:{a:0,k:0,ix:10},p:{a:1,k:[{i:{x:.667,y:1},o:{x:.333,y:0},t:0,s:[189,161,0],e:[239,29,0],to:[21.333,-95,0],ti:[-8.333,22,0]},{t:71}],ix:2,l:2},a:{a:0,k:[17,16,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,ip:0,op:180,st:0,bm:0},{ddd:0,ind:6,ty:2,nm:"红",refId:"image_5",sr:1,ks:{o:{a:1,k:[{i:{x:[.667],y:[.98]},o:{x:[.333],y:[0]},t:0,s:[0],e:[100]},{i:{x:[.667],y:[1]},o:{x:[.333],y:[22.891]},t:6,s:[100],e:[100]},{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:73,s:[100],e:[0]},{t:123}],ix:11},r:{a:0,k:0,ix:10},p:{a:1,k:[{i:{x:.667,y:1},o:{x:.333,y:0},t:0,s:[257,183,0],e:[339,91,0],to:[20.167,-60.333,0],ti:[-36,13.5,0]},{t:73}],ix:2,l:2},a:{a:0,k:[26.5,19.5,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,ip:0,op:180,st:0,bm:0},{ddd:0,ind:7,ty:2,nm:"上嘴",parent:13,refId:"image_6",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[119.002,99.282,0],ix:2,l:2},a:{a:0,k:[21,8,0],ix:1,l:2},s:{a:1,k:[{i:{x:[.833,.833,.833],y:[.833,.833,.833]},o:{x:[.167,.167,.167],y:[.167,.167,.167]},t:0,s:[100,100,100],e:[100,95,100]},{i:{x:[.833,.833,.833],y:[.833,.833,.833]},o:{x:[.167,.167,.167],y:[.167,.167,.167]},t:17,s:[100,95,100],e:[100,100,100]},{i:{x:[.833,.833,.833],y:[.833,.833,.833]},o:{x:[.167,.167,.167],y:[.167,.167,.167]},t:36,s:[100,100,100],e:[100,95,100]},{i:{x:[.833,.833,.833],y:[.833,.833,.833]},o:{x:[.167,.167,.167],y:[.167,.167,.167]},t:54,s:[100,95,100],e:[100,100,100]},{i:{x:[.833,.833,.833],y:[.833,.833,.833]},o:{x:[.167,.167,.167],y:[.167,.167,.167]},t:70,s:[100,100,100],e:[100,100,100]},{t:100}],ix:6,l:2}},ao:0,ip:0,op:180,st:0,bm:0},{ddd:0,ind:8,ty:2,nm:"下嘴",parent:13,refId:"image_7",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[119.002,111.632,0],ix:2,l:2},a:{a:0,k:[15.47,-4.552,0],ix:1,l:2},s:{a:1,k:[{i:{x:[.833,.833,.833],y:[.833,.833,.833]},o:{x:[.167,.167,.167],y:[.167,.167,.167]},t:0,s:[100,100,100],e:[100,95,100]},{i:{x:[.833,.833,.833],y:[.833,.833,.833]},o:{x:[.167,.167,.167],y:[.167,.167,.167]},t:18,s:[100,95,100],e:[100,100,100]},{i:{x:[.833,.833,.833],y:[.833,.833,.833]},o:{x:[.167,.167,.167],y:[.167,.167,.167]},t:34,s:[100,100,100],e:[100,95,100]},{i:{x:[.833,.833,.833],y:[.833,.833,.833]},o:{x:[.167,.167,.167],y:[.167,.167,.167]},t:51,s:[100,95,100],e:[100,100,100]},{i:{x:[.833,.833,.833],y:[.833,.833,.833]},o:{x:[.167,.167,.167],y:[.167,.167,.167]},t:68,s:[100,100,100],e:[100,100,100]},{t:100}],ix:6,l:2}},ao:0,ip:0,op:180,st:0,bm:0},{ddd:0,ind:9,ty:2,nm:"右眼备份 8",parent:13,refId:"image_8",sr:1,ks:{o:{a:1,k:[{i:{x:[.833],y:[.833]},o:{x:[.167],y:[.167]},t:24,s:[100],e:[0]},{t:35}],ix:11},r:{a:0,k:-3.021,ix:10},p:{a:0,k:[77.188,96.708,0],ix:2,l:2},a:{a:0,k:[20.5,20.5,0],ix:1,l:2},s:{a:1,k:[{i:{x:[.667,.667,.667],y:[1,1,1]},o:{x:[.333,.333,.333],y:[0,0,0]},t:6,s:[100,16,100],e:[100,100,100]},{i:{x:[.667,.667,.667],y:[1,1,1]},o:{x:[.333,.333,.333],y:[0,0,0]},t:9,s:[100,100,100],e:[100,4,100]},{t:34}],ix:6,l:2}},ao:0,ip:0,op:51,st:33,bm:0},{ddd:0,ind:10,ty:2,nm:"闭眼.png",cl:"png",parent:13,refId:"image_9",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:8.98,ix:10},p:{a:0,k:[75.658,95.939,0],ix:2,l:2},a:{a:0,k:[20.5,5.5,0],ix:1,l:2},s:{a:0,k:[86.364,86.364,100],ix:6,l:2}},ao:0,ip:35,op:184,st:1,bm:0},{ddd:0,ind:11,ty:2,nm:"右眼备份 7",parent:13,refId:"image_8",sr:1,ks:{o:{a:1,k:[{i:{x:[.833],y:[.833]},o:{x:[.167],y:[.167]},t:24,s:[100],e:[0]},{t:35}],ix:11},r:{a:0,k:-1.25,ix:10},p:{a:0,k:[166.524,96.035,0],ix:2,l:2},a:{a:0,k:[20.5,20.5,0],ix:1,l:2},s:{a:1,k:[{i:{x:[.667,.667,.667],y:[1,1,1]},o:{x:[.333,.333,.333],y:[0,0,0]},t:6,s:[100,16,100],e:[100,100,100]},{i:{x:[.667,.667,.667],y:[1,1,1]},o:{x:[.333,.333,.333],y:[0,0,0]},t:9,s:[100,100,100],e:[100,4,100]},{t:34}],ix:6,l:2}},ao:0,ip:0,op:51,st:33,bm:0},{ddd:0,ind:12,ty:2,nm:"闭眼.png",cl:"png",parent:13,refId:"image_9",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:-1.742,ix:10},p:{a:0,k:[165.018,95.219,0],ix:2,l:2},a:{a:0,k:[20.5,5.5,0],ix:1,l:2},s:{a:0,k:[86.364,86.364,100],ix:6,l:2}},ao:0,ip:35,op:184,st:1,bm:0},{ddd:0,ind:13,ty:2,nm:"头",refId:"image_10",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:1,k:[{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:0,s:[0],e:[2]},{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:89,s:[2],e:[0]},{t:179}],ix:10},p:{a:0,k:[180.214,341.323,0],ix:2,l:2},a:{a:0,k:[133.019,203.814,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,ip:0,op:180,st:0,bm:0},{ddd:0,ind:14,ty:2,nm:"头顶毛",parent:13,refId:"image_11",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:1,k:[{i:{x:[.833],y:[.833]},o:{x:[.167],y:[.167]},t:0,s:[-17],e:[-3]},{i:{x:[.833],y:[.833]},o:{x:[.167],y:[.167]},t:90,s:[-3],e:[-17]},{t:179}],ix:10},p:{a:0,k:[138.277,3.997,0],ix:2,l:2},a:{a:0,k:[19.897,36.351,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,ip:0,op:180,st:0,bm:0},{ddd:0,ind:15,ty:2,nm:"身",refId:"image_12",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[178.214,347.323,0],ix:2,l:2},a:{a:0,k:[64.5,55,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,ip:0,op:180,st:0,bm:0},{ddd:0,ind:16,ty:2,nm:"右边翅膀",refId:"image_13",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:1,k:[{i:{x:[.833],y:[.833]},o:{x:[.167],y:[.167]},t:0,s:[0],e:[-8]},{i:{x:[.833],y:[.833]},o:{x:[.167],y:[.167]},t:89,s:[-8],e:[0]},{t:179}],ix:10},p:{a:0,k:[226.213,337.123,0],ix:2,l:2},a:{a:0,k:[0,18,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,ip:0,op:180,st:0,bm:0},{ddd:0,ind:17,ty:2,nm:"左边翅膀",refId:"image_14",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:1,k:[{i:{x:[.833],y:[.833]},o:{x:[.167],y:[.167]},t:0,s:[4],e:[16]},{i:{x:[.833],y:[.833]},o:{x:[.167],y:[.167]},t:90,s:[16],e:[4]},{t:179}],ix:10},p:{a:0,k:[118.867,328.562,0],ix:2,l:2},a:{a:0,k:[55.878,12.639,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,ip:0,op:180,st:0,bm:0}],markers=[{tm:0,cm:"1",dr:0}],startingData={v,fr,ip,op,w,h,nm,ddd,assets,layers,markers},iconTastBg=""+new URL("../svg/task-bg-8f66edfc.svg",import.meta.url).href,evaluatingEnd="data:image/png;base64,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",evaluatingStart="data:image/png;base64,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",iconEvaluat={evaluatingEnd,evaluatingStart},DelayCheck$1=defineAsyncComponent(()=>__vitePreload(()=>import("./index-5c370b7b.js"),["./index-5c370b7b.js","..\\css\\index-ae68b783.css"],import.meta.url));let actualBeatLength=0,calculateInfo={};const EvaluatModel=defineComponent({name:"evaluat-model",setup(){const i=getQuery(),e=reactive({tips:!0,evaluatUpdateAudio:!1,isSaveVideo:state$1.setting.camera&&state$1.setting.saveToAlbum,shareMode:!1}),r=()=>{i.workRecord?(evaluatingData.soundEffectMode=!1,api_back()):(evaluatingData.soundEffectMode=!1,handleRessetState(),headTopData.modeType="init")},s=async()=>{var d;if(console.log(evaluatingData.checkStep,evaluatingData,"检测123"),!evaluatingData.checkEnd){if(evaluatingData.checkStep===0){if(evaluatingData.checkStep=10,state$1.setting.soundEffect){evaluatingData.soundEffectMode=!0;return}if(state$1.setting.soundEffect){const y=await api_getDeviceDelay();if(y&&((d=y.content)==null?void 0:d.value)<0){evaluatingData.soundEffectMode=!0;return}}s();return}evaluatingData.checkStep===10&&(await checkUseEarphone()||(evaluatingData.earphoneMode=!0),evaluatingData.checkEnd=!0,console.log("检测结束,生成数据"),l())}},o=browser(),a=()=>{var T,F;let d=0,y=!1,A=!1,b=!1;const S=[];let E=state$1.times,x=0,C=0,P=[];if(actualBeatLength=Math.round(state$1.times[0].fixtime*1e3/1),state$1.isSelectMeasureMode&&state$1.section.length){const D=state$1.times.findIndex(O=>O.noteId==state$1.section[0].noteId);let N=state$1.times.findIndex(O=>O.noteId==state$1.section[1].noteId);if(N=N1){const O=D-1-state$1.times[D-1].si;C=state$1.times[O]?state$1.times[O].time*1e3:0}actualBeatLength=D==0&&state$1.isOpenMetronome?actualBeatLength:0,E=state$1.times.filter((O,B)=>B>=D&&B<=N),P=state$1.times.filter((O,B)=>B1?C:0,I=-1,M=-1;for(let D=0;D{const d=localStorage.getItem("behaviorId")||localStorage.getItem("BEHAVIORID")||void 0;let y=state$1.speed/state$1.originSpeed;y=parseFloat(y.toFixed(2)),console.log("速度比例",y,"速度",state$1.speed),calculateInfo=a();const A={musicXmlInfos:calculateInfo.datas,subjectId:state$1.musicalCode,detailId:state$1.detailId,examSongId:state$1.examSongId,xmlUrl:state$1.xmlUrl,partIndex:state$1.partIndex,behaviorId:d,platform:o.ios?"IOS":o.android?"ANDROID":"WEB",clientId:storeData.platformType==="STUDENT"?"student":storeData.platformType==="TEACHER"?"teacher":"education",hertz:state$1.setting.frequency,reactionTimeMs:state$1.setting.reactionTimeMs?Number(state$1.setting.reactionTimeMs):0,speed:state$1.speed,heardLevel:state$1.setting.evaluationDifficulty,beatLength:actualBeatLength,evaluationCriteria:state$1.evaluationStandard,speedRate:y};await connectWebsocket(A)},c=d=>{var y,A,b,S;if(d==="update"){if(state$1.isAppPlay){e.evaluatUpdateAudio=!0,resetPlaybackToStart();return}else if((y=evaluatingData.resultData)!=null&&y.recordIdStr||(A=evaluatingData.resultData)!=null&&A.recordId){let E=state$1.speed/state$1.originSpeed;E=parseFloat(E.toFixed(2)),api_openAdjustRecording({recordId:((b=evaluatingData.resultData)==null?void 0:b.recordIdStr)||((S=evaluatingData.resultData)==null?void 0:S.recordId),title:state$1.examSongName||"曲谱演奏",coverImg:state$1.coverImg,speedRate:E});return}}else if(d==="share"){e.shareMode=!0;return}else if(d==="look"){handleViewReport("recordId","instrument");return}else d==="practise"?handleStartEvaluat():d==="tryagain"&&g();resetPlaybackToStart(),evaluatingData.resulstMode=!1},u=async(d=!1)=>{if(!d){e.evaluatUpdateAudio=!1;return}if(state$1.setting.camera&&state$1.setting.saveToAlbum){e.evaluatUpdateAudio=!1,api_videoUpdate(y=>{var A,b,S,E,x;y&&(((A=y==null?void 0:y.content)==null?void 0:A.type)==="success"?m({id:(b=evaluatingData.resultData)==null?void 0:b.recordId,videoFilePath:(S=y==null?void 0:y.content)==null?void 0:S.filePath}):((E=y==null?void 0:y.content)==null?void 0:E.type)==="error"&&showToast({message:((x=y.content)==null?void 0:x.message)||"上传失败"}))});return}e.evaluatUpdateAudio=!1,showToast("上传成功")},m=async d=>{await api_musicPracticeRecordVideoUpload(d),showToast("上传成功")},g=async()=>{evaluatingData.isErrorState&&!state$1.setting.soundEffect&&(showLoadingToast({message:"处理中",duration:1e3,overlay:!0,overlayClass:styles$d.scoreMode}),await new Promise(y=>{setTimeout(()=>{closeToast(),evaluatingData.isErrorState=!1,y()},1e3)}));const d=await startCheckDelay();d!=null&&d.checked&&(l(),handleStartBegin(calculateInfo.firstNoteTime),evaluatingData.isErrorState&&(evaluatingData.isErrorState=!1,evaluatingData.resulstMode=!1))};return onMounted(()=>{evaluatingData.isDisabledPlayMusic=!0,s()}),()=>createVNode("div",null,[createVNode(Transition,{name:"pop-center"},{default:()=>[evaluatingData.websocketState&&!evaluatingData.startBegin&&evaluatingData.checkEnd&&createVNode("div",{class:styles$d.startBtn,onClick:()=>{g()}},[createVNode("img",{src:iconEvaluat.evaluatingStart},null)])]}),createVNode(Transition,{name:"pop-center"},{default:()=>[evaluatingData.websocketState&&evaluatingData.startBegin&&createVNode("div",{class:styles$d.endBtn,onClick:()=>handleEndBegin()},[createVNode("img",{src:iconEvaluat.evaluatingEnd},null)])]}),createVNode("div",{style:{display:!evaluatingData.startBegin&&!evaluatingData.soundEffectMode?"":"none"},class:styles$d.dialogueBox,key:"start"},[createVNode("div",{class:styles$d.dialogue},[createVNode("img",{class:styles$d.dialoguebg,src:iconTastBg},null),createVNode("div",null,[createTextVNode("演奏前请调整好乐器,保证最佳演奏状态。")])]),createVNode(Vue3Lottie,{class:styles$d.dialogueIcon,animationData:startData},null)]),createVNode("div",{style:{display:evaluatingData.startBegin?"":"none"},class:styles$d.dialogueBox,key:"start"},[createVNode("div",{class:styles$d.dialogueing},[createTextVNode("收音中...")]),createVNode(Vue3Lottie,{class:styles$d.dialogueIcon,animationData:startingData},null)]),evaluatingData.soundEffectMode&&createVNode(DelayCheck$1,{onClose:()=>{evaluatingData.soundEffectMode=!1,s()},onBack:()=>r()},null),createVNode(Popup,{teleport:"body",closeOnClickOverlay:!1,class:["popup-custom","van-scale"],transition:"van-scale",show:evaluatingData.earphoneMode,"onUpdate:show":d=>evaluatingData.earphoneMode=d},{default:()=>[createVNode(Earphone,{onClose:()=>{evaluatingData.earphoneMode=!1,s()}},null)]}),evaluatingData.hideResultModal?createVNode(EvaluatResult,{onClose:c},null):createVNode(Popup,{teleport:"body",closeOnClickOverlay:!1,class:["popup-custom","van-scale"],transition:"van-scale",show:evaluatingData.resulstMode,"onUpdate:show":d=>evaluatingData.resulstMode=d},{default:()=>[createVNode(EvaluatResult,{onClose:c},null)]}),createVNode(Popup,{teleport:"body",closeOnClickOverlay:!1,class:["popup-custom","van-scale"],transition:"van-scale",show:e.evaluatUpdateAudio,"onUpdate:show":d=>e.evaluatUpdateAudio=d},{default:()=>[createVNode(EvaluatAudio,{onClose:u},null)]}),createVNode(Popup,{teleport:"body",class:["popup-custom","van-scale"],transition:"van-scale",show:e.shareMode,"onUpdate:show":d=>e.shareMode=d},{default:()=>[createVNode(EvaluatShare,{onClose:()=>e.shareMode=!1},null)]})])}}),skeleton="_skeleton_1tb1g_1",detail$1="_detail_1tb1g_12",practise="_practise_1tb1g_20",headHeight="_headHeight_1tb1g_24",headHide="_headHide_1tb1g_32",container="_container_1tb1g_35",pcContainer="_pcContainer_1tb1g_45",fingeringCon="_fingeringCon_1tb1g_49",xiaomi="_xiaomi_1tb1g_74",PC="_PC_1tb1g_78",preViewDetail="_preViewDetail_1tb1g_103",preJson="_preJson_1tb1g_120",headerDown="_headerDown_1tb1g_1",styles$9={skeleton,detail:detail$1,practise,headHeight,headHide,container,pcContainer,fingeringCon,xiaomi,PC,preViewDetail,preJson,headerDown},fingeringContainer$1="_fingeringContainer_xflo8_1",vertical="_vertical_xflo8_10",imgs$1="_imgs_xflo8_15",rightContent="_rightContent_xflo8_32",yidiao="_yidiao_xflo8_76",tizhi$1="_tizhi_xflo8_83",canDisplay$1="_canDisplay_xflo8_99",activeopacity="_activeopacity_xflo8_1",leftrotates="_leftrotates_xflo8_1",rightrotates="_rightrotates_xflo8_1",styles$8={fingeringContainer:fingeringContainer$1,vertical,imgs:imgs$1,rightContent,yidiao,tizhi:tizhi$1,canDisplay:canDisplay$1,activeopacity,leftrotates,rightrotates},Fingering=defineComponent({name:"fingering",emits:["open"],setup(i,{emit:e}){const r=reactive({relationshipIndex:0,subject:null,delay:0}),s=async()=>{r.subject=await getFingeringConfig(state$1.fingeringInfo.name),console.log("🚀 ~ fingerData.subject:",r.subject)};onBeforeMount(()=>{s()});const o=computed(()=>{var l;return((l=state$1.times[state$1.activeNoteIndex])==null?void 0:l.realKey)||-1}),a=()=>{const l=Date.now();if(l-r.delay<300){e("open");return}r.delay=l};return()=>{var m,g,d,y,A,b;const l=((g=(m=r.subject)==null?void 0:m.relationship)==null?void 0:g[o.value])||[],c=Array.isArray(l[1])?l[r.relationshipIndex]:l,u=Array.isArray(l[1]);return createVNode(Fragment,null,[state$1.fingeringInfo.direction==="transverse"?createVNode("div",{onClick:()=>a(),class:[styles$8.fingeringContainer]},[createVNode("div",{class:styles$8.imgs},[createVNode("img",{src:(y=(d=r.subject)==null?void 0:d.json)==null?void 0:y.full},null),c.map((S,E)=>{var C,P;const x=typeof S=="string"?S.replace("active-",""):String(S);return createVNode("img",{"data-index":x,src:(P=(C=r.subject)==null?void 0:C.json)==null?void 0:P[x]},null)})]),state$1.fingeringInfo.hasTizhi&&createVNode("div",{class:[styles$8.tizhi,u&&styles$8.canDisplay],onClick:()=>r.relationshipIndex=r.relationshipIndex===0?1:0},[createTextVNode("替指")])]):createVNode("div",{onClick:()=>a(),class:[styles$8.fingeringContainer,styles$8.vertical,state$1.fingeringInfo.name]},[createVNode("div",{class:styles$8.imgs},[createVNode("img",{src:(b=(A=r.subject)==null?void 0:A.json)==null?void 0:b.full},null),c.map((S,E)=>{var C,P;const x=typeof S=="string"?S.replace("active-",""):String(S);return createVNode("img",{"data-index":x,src:(P=(C=r.subject)==null?void 0:C.json)==null?void 0:P[x]},null)})]),state$1.fingeringInfo.hasTizhi&&createVNode("div",{style:{display:state$1.fingeringInfo.disabledFinger?"none":""},class:styles$8.rightContent},[createVNode("div",{class:[styles$8.tizhi,u&&styles$8.canDisplay],onClick:()=>r.relationshipIndex=r.relationshipIndex===0?1:0},[createTextVNode("替指")])])])])}}}),startBtn="_startBtn_8llyj_1",endBtn="_endBtn_8llyj_17",bottom="_bottom_8llyj_31",top="_top_8llyj_34",pcEndBtn="_pcEndBtn_8llyj_38",noteState="_noteState_8llyj_45",dot$1="_dot_8llyj_59",styles$7={startBtn,endBtn,bottom,top,pcEndBtn,noteState,dot:dot$1},end="data:image/png;base64,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",start="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAASIAAAEiCAMAAABqYC+EAAACK1BMVEX/zXAAAAD/////znP/z3X/0Hn/2pX/z3f/25j/2I3/14n/2ZP/0oH/2JH/3Jr/1Yb/04T/14z/0n7/0XqmeSP/0X7/04P//fmmdhv//PX/////3ZyzhzH/0Hf///////+dbRb/9OCaahL/0Xz/04D/7Mf///////+SYwiqfCb/0n+8kD7/z3L/4av///////////////+dbxWXZw3bsmX///+0iTbFlDrkvHH///+fcRj/1IL///+UZQuZaRCugi7/+e6idR3/2ZLhsFT/0Xn/0Xv/1oj/14z/2pT/3Z7/36P/467/5LL/6Lv/7cz////////////////////////////////////////AlUXKoFL/3Z7Tp1PJnUn///+meCDctWzHmD/iuWzbsGD////8ym/NolO4jDmhcxmxginJn07/znP/z3X/0n3/2I7/2JH/3Jv/3aH/6b//6sH/9+f////////////////////////////////////////asGP/8dnOpVjpuV/5zHmsgCvCkzrTqlvkvnTxyoLjtF3/1IX////Fmku+jzfgtWTRo0vuxnv71Y74x23wv2L////////////arVrWpkv1zobzw2qxhTHmwHjOnkX00IzqwXT815L5z4OufiTUrF/brFTyxnbqv2z/4Kf/5bb/8Nf///////////////////+peiC4iTDpw3v50Yf51pXfuXLuyYT/+Oz///+QYQdxqT1IAAAAuHRSTlP1AJn19fX39ff39vf29/f29vb19f329pv9nQX4/O6Yjf6n/vbmtJVl/v31/PPFUTEjDP7++jj8+vk2/uR6/v79of339+3r39zVzcrDwLuxkIWDgHVdKycYFfz7+Pr6Tv36+vn4VfX6/P38+/Hw6dnY0My4t6STiXxoWEhBPhwJ+an79/b9+/r5+PjiePv7+fn49/b2cG06+fn49vz5+fj49/f8+vn398e+q3ZPNBII/Pv59/j6+aJNPT0acAAAGzZJREFUeNrU1zly4kAUxvH33iVUqEpSUSWkBJAICCgTOGDfd4gckXm3xxvYLsd2OvYVZnfq600+0y2Eu1sSvyP869WnFmDM9Pm0tP64c7/ejAbXVt8xTadvXQ9GN1/du491aTrXMWbxJSrM7vPui0UbWS9u/n5WwHjElOihmH+9pi1dv+aLDxi56BMVpvmxQ5/mjPPTaO8p2kSF0mREEowmpegyRZjIPyiTROUDHyMRUaL3ktsn6fpu6R2ViyKR/vvWIUWc2986qqU8ke65V6TUlespraQ40XxpUQSs5RyVUZlIL44pMuOijmqoS7S461Ok+ncLVEFVIv/WpMiZtz7KpyaR95Ni8tND2VQkKg4oRoMiSqUgUWlIMRuWUBoFibwRbS2Vznxvt85Oa/Zx1Tg6BDg8MqrHdu30rNX+nkmnaGsjD6VQkGh6Q9vQnrqtxrMBGxjPjVb3SaNt3ExRmIJE89ctLqeXa9hZ2ELWbuR6W1zU6xyFKEj0uHQonC8XzT34pL3mxRcKx1k+ogD5ie6tcNeTaR6DoONmJtw1WfcoQHKihzKFkO7UsyBFtt5JUwjlBxQgMZGeN0P0ye2BVHu5EJXMvI7CxBPNhpvnp/0MCjy3Nw/TcIZixBM9TmgD7bIOytQvNdpgIjTb4on8AQVLtwxQymilKdjARwGiiQ5MCpSpQwTqGQpkHqAAoUSLFwqidW2IiN3VKMjLAjdSkah4RQFSuQpEqJJLUYCrIm6gIJE+CQ5kQMSM4EgTHQOoSPSnTHxa24AYGG2N+Mp/kEtFopkVEKhTgZhUOgGRrBlyqEi0MomrZ0OM7B5xmStkUpBId4krfQIxO0kTl6sjg/xEhTF/pc+zELvsOX+3xwVkkJ1oMSSeTBUSoZohnuECGeQm8i3i2G9AYjT2icPykUFmIs8hjq4BCWJ0icPxkEFeojeTd0Kxz/S/TniHZL4hl3iiNXeFKpA4Fe4irZFDPNGK2LQmJFJTI7YVMokn+kVsTzYklP1EbL8QVSRaEtvFISTW4QWxLaUn4t+Qdg6Jdq6J3hGg2A7t1yDhavuCewRi37IfCXlPB6n+IKa13ERvxNQ7gh1w1COmN5mJPJNYLhPw0xpG9pJYTE9eIt8hlg7sjA6xOL6sRAuLWL7BDvlGLNZCTqLCkFjOYKecEcuwICORPiYG7RR2zKlGDGNdQiKXGFKJfw79r5YiBlc80YoY/rJvNisNA0EcX+YxFppQULyoyaWH4tXvIm21tj311JuiCBYraB9Az/oQoh59PgURzcxsspv0kN3x9wg/Njsf/83HlvKQrQ+2hayqaBhxZ8hLQ1+OuHMUDaspeou5e8jDr+ybXe4+it+qKNJs5urdTf3LJZvT6gqKBgFUe4vaPyivqOV9x2jZQ7bKKhrP/J467GeR2bikokduclXew820j+UUTbjthyezfR7r3G5kUkZRGjEbNC/2Q0WcMzu2KHVXtOgxW1gPdow27DC72t7CWdEgpJbRpoUcuCoaAqXmWYcLV0AZuinSfSYvUwHB5Gt97aRok8lca5wounPG5LSbLoruI3oR1TaVLscKvY6iewdFzPRa05cN5Tlg5ll7RXdAWFXBsQqEO1tFi5h2RDV8P1SVbdodxQtLRVMg1O4N2jK4AMLUTtGIBotHKkiOaPg4slL0RD+zWr30XB4N+qk92Sg6BUKNXgsvl30gnFooupFQzcxV7aZYUUIjoUDme44dGhslhYqOQ55ebebZ4yJFbcA0A1g0mllvAqZdoKgvoyXKa476+Yqe6bZaBQ7dZD/nKuqFPuDbjPy9PEVJeLFZmWAtyVH0Qg5RgOMrZpscoxezohQwHSWADmBSo6I56RoDHc6yNEj/ODcpGkeA2FAi2ABENDYoupV5iLhjdMsr0l2hh4g5Rl3NKmpJLGemotZiFZ0I2TVa7R9POEUjwATfWP+yApgRo2gqaJNmsVubUkU6BsSeEsQeIGJNFCWAaCpRNAGREEVrgDhUojgExBpWpGe44gtpG39o4Lo/00jRa4BPYys+pH1FiuaiL2v2wp5nFb3jkPpaieMah9fvGUVtkYuiLB1DFKIM9czTP86q8EBqWkZRV3ZTxLdG3b+KUrFrkNyVSPpH0eT/O/tk51xSFAaCMPw7lxCE2Q06C2loJAxhMqvcwAeeIDCzcOtmEMSlsxgwLjyCR+jjGRONWGXH+Fyk+ltmlw+SVFX/lYRPvhhyUBS45+zUkxYcFGmBp2elTtR0rsgTXzdaqkc/V9SnY/1Kh0HstOmYv58r6koephUN1rp7RbrySf2rE/06U8QDoCMIZcTDoZki5VpYWyurdop6VV48u21NrbdT1HSvItvLqJkpmrjuw96DTFJFHq2KIBhaGXmpIiUtAHpJOFSlipZuEGIfiCxTRWMpSzHXLM6Mt4q04LQD543X12A/LagL7WEz2nX2gwOwXeEpRDNlG8WoKbnBqzJhLJUoasmOO5yLP7QSRYH7oBV90v4SRTR6NYdo5jSKVUPjhSAsNEN5pT4aGLoOrbhLG2LwxCO0WRiDEIULlCKOUYJoFt37MG0A/3mj/ZUx7yGOWHybTggGv88PY35wlv8v04nvPOL38UuurPEoNqxcWU8TURSe5M50prN0ZrqFBBKb9kGKb7QB04QSIfpsfGPRthCLoH/A+EDYSyICaoIUAVnjG+AS5+d5zrlDKaUs9fo9tHNuS+l89zvrNMMmPc/rvby2AkvdVwST6+xt5MwDfJFuwz69SwzfGwh5J70Q+mHRp96TthuxX/vGTG5DimRW73mdsJTDpXrQ+/zPXx7k6IO1V4M+Zps7J5O7kSL2f39m9EJ6K1Q5rni3ISP5kNUEmKtq3RnIBQ+wrcqXz7TvXDJfkl5zdJ76rljab6sHMV6/cNIrXDu+le6L3IeYnXi3oso5YWoKT31DudAMW/VQG7HI7EKddzB1AZf7Ztmsdz16uci8WzEoei/j+9JngZtZM7nk3YaErxGmzKF5HK7JiH3M48qYPQ6bX7r4TCU2j+u5lzdJ9ITRJ/R5t2GZCd4S+7PUeBeVVm5vKStzoz0dAHKYRx01JNCO4tHEcoRkU90ukTgelErbfs6RV2jB0vG5c7YmorCz94ocEMN7+jlhahgwNcWNfWReZsCmunrSXYcMqi9Rv9JWUuUWOXrSeJ8V6dm/D9SYHInrQSMQ0BY9wLAW8KH1oJ0F23JtLptcfSQht2KHJLJ1yx3Fg31Wo8gOnqE6VtLwMG0BBgwt1N4e0gKGhRhDjYHDwv83bd11gz6sCfoWhuXbrqvbZkplYkO1Z9LTf79YzdSY41oBLRQ6IIpCIQ0BNlFUBNMI2jFFxqRdj26GcSSDbD0MWLrTTUGDXVAUOADyjtLI8/B89DK2pvG/zYdVWQbB6eu7D8+xhOKd+bpEBmHTdWCHxC5aP5UaJ9ePW1KRiSrSzinSfBH5FGmaryLY78txXWLsZRseTAGJuj6OhwU/r4E0XUNbWvxhDcHqkncFOVwvmQpRNNbp3YTndhh2qCU8bpxeS/cEulhZgW10g1aAO1qAKxxsThEoHpQeQY9QltM5dJ5Mgk7poyyf4vMWMmTrwTQah3UyMoBpY22rUK54VxCdgYfduCJDkow/927EIyemMrE+9p7U+HPiNy1lNCUWMx09yCkK6o4Tjztwyh0Ui1zbMcMKiIg80sA8tdh+5gEUhfJ9prI2trFamuhPUJKSmU98yg5ahgHyBLwvJBAZ4hfRX9SK5ayLFMlK17F3E0hsLVL0pvGnxVLjBf3XUkscqaqSMu1RchrdjEUUJRI2daJoGmKlQgmFhKFhiv81sgOPefMoc31+rrblF+ZAnEATSAmAkkLneo/S4tQN6HjuKKO5D9NZjjQqrFgsZi9w5EDIklrD68bL+lLj7Quk1gBOBN+TKHrupFQZAHxwiswIEMTOfWcT13bav6L87ab+Mck3fBvrySqIUQeW1tcwDi8toetOwDNYa9+MgaDdpTI/GFqcxbNO3ALMewGDAO/Syc9aRONtDUQpIscwOUWwsTyIO0TRuKmwi+rAxVTd1x4qYjrSF5q2FVXGu11AfjZsxm19o5naMouujiFOWt5P5vP5JAdVkcl60IuTs6IUiTkagV1QxDhlcU5RbQdJRmX0Ay0wg3II7taf8at0z9ADPFqgenCDr86Cy841YQiZPjJj6MFA5u04FXW0FsK1CEWgNFybMCiTD1nB8aH+nqHhg+LXynoA6sKRkQQ6oIrJL8y7mmRVVa7r0sZT6MJswbsDFkTDtVDSlwZLvYhSvwdIk0E2NRAd/ouDnEbkYNgKYgVctixDA1pG2qnaDEHpPDKM6ojIVLEvdlKvr6qH6HLl8szMDKbDfngulzHqjyrIkFpdiRYKBSgnH/F2MErI83SPh/DiQlVmYklfpHSUqt5d0PkRPY3eWwy6UQzkWDsBL8QQR+gnUNgN7kP1QRY4yswpCvpclIpRymhUm+IHrAJFmPIdndLeWpRI+QmcQ7laSdCGbQYCWJg5UDuKlY4iDYh06N0Jg+h89N6Ku4cC2XV119rMzmBnyjG8+PBXcusIAr4aAYq0Yv7Vh65IjCjSLlGkRVFFEd6hcYYW+0hDOyPYxwE2ScTJLHFE1YFQAyLSxsp3VREWeSsYgi0XTzoBFbVN51WP6DcDTweilg59H7RuZtgcxz/qR+Sw86CjDFIUo6hlYol51u8Rko9qSPCVrYoBDRB8plgbKzAMYWpkdTJNSJDQ0zXk6+zJ0Qi4T6qALAR1DEUPXMdMXR0ozlhIEYnDMrC7NYGi5hjFxo/an92OmzZn4kiPg6OJDUMERmoQC2zXwqpNm/AAS37RVmtj0R7ARhbcJ5xDQezqyEwWBNKkceihehBLZnCgvZw3ORe/liJMlsDR8aTPxVAj41sZ/kLHMbAuNlITGMzKCu/zIWdHqXLmsRdtThHaAQOjgarEaLfzZfzaP/RYatm7grQehxBD6jSp/F65niIT6wl5OcPN+d8jv3qiAJpdw/P8UGin3+PolQUHswLjfehhMRZgMO3D029vHIagjdGgCygyj2r7PA9qiRFFQ2M+suipBZSb78GxHFLkjFO4BmVqvEfDIwrXVIKxEs/10yFeQGgGUvRQ882DBBcSExzvC1wkQo+wcRYyUCER1MZ9A/4wJAA2H/wBRe5azuMow5wrTBT9DvkgTgvx1Hmvr9LLG/Y0UgRMa5wiDY5CNYqYfEg+tg66RWhahbImWmSuv+/jI1yhi0R/RC41QhDuMnH4MUxD6AHXdgBgW3wwC4nLiZtdEZXSlLET9QhrEIq6PvgU+aUjp4hEROSfYuTa02sUhZpRpMZGH5Q3v0HYaY5kz2Y5nYcaSuxSo8gFawZd/V/SrWWnbSiIqrJx/MCJTR4buojIJtjLorSyFCL8F6GqhCIlpPwEoqGUqqgiVFWLmkLog3UJrcTndeaM7Rq13vTODstJfA/jc8+cmbu01ArEWN33vaBVpVhppGYIzBECiNyAwHbN20M8+a5Xr9cFIlP43TDvQ6QPu3yfbeOuGsdapp6RXwSRJlxo3twVx5w3RrjXCg1rtbEHDSiBVNeYc3SOpdQMaXD+wA7R9BYLwt3E9Ji0BKJT17cpfMsBRB4g4rthuA0s/7Rg6QOBCOpgXtwoimCek0BQGntQH57RhyCZE8vDfnTPDNHzAsHayYyh1rJARNonCOrLFf8hIKomEJXGLKtcy7dq/1z62F6GLqqT6HDjwUkoAWcy/BP9Ae0WMPiVhmfUR7B0aJP2sc/8UFDpo9S/amZr/JZARAUUUTlpxXsQSRIdUYpZ52GNP7XZbEZR1Gxu4nULj236amwXHuegi5jvInUvarVwEBNy9Aa7qXmuNIKlPMinSc+0H9tBqRgi5lZA+UmMoQYguqQGEmxLLw+RNlzjF3fKxr9rfI1YJ6DoNQ1GITqYu3h56INV9t3gO04PIsjPpwBqvH3uOChisVsoDvI9eKM0Dnr2PCmwLK+lF0GEqzB3mrdPT8j0uK4Aog+TIWIy2cpBJF3wERFtYzKKxF8z4QuYkoeb28v4LRAhvaZXT7Z7TEgo9muJ3u4MLKrPVpgONaVxUNWh4ndjeehjxwfzFGfRRzz4jDTdRnhZsQf/aP4IRNrZI0miyusf3cSXJBWK6Kc8/C1hLe31yy/ADRHerq7e1LKG5rPvcN4Uh4oVR9OHglD3pym5XwzRC6z2gHMB3cXLvyHqAaI0iZzrrax4uzCNmPvWRnknBeCzJl+bl0Eb4oXM+ptpGftZ15RH09UOOGiPJYdemY6NJCqma+ks0hLExLHhG92PPiDSSphqmLu9FLnZatlg+4RIhyhpllx/lz2AoNHbMMpA0qDf2D9MkVQ/4KB2TEb4ZfyLloBuTAYRvOzrvHfNpB5NDYeHEXxuwIZ/9TVOAZG+xB/+alg9oZQZ5Z1jEavUV8geYtqerfPdZ5oIKI6oMzo2UDJDZHH1fBN2JdmUj8koHbbSSme09/SmhFAlyGugxmK93Q0rQQ61yfrd4QW3+L0GFSW0WTs7J7udzkOJDln95xbUNYnMvU8jM/Y/tNtbe+dmmV9MroR1NgAshy/s19rkXmPbf3s0eruISaBLxdzg3nCMvxZ747sfxEWqh60UjuzBDZkcvSqXDfHCcpd9Y2rENtgpG2VYmHTJW6ly0Dbkmpl3LdsVv6taMhiCfLjy0bImXL0Adj60Il6keMFZq2VegwBE9lmVZABUAK5cQTaqH9l78P5/D37qsJlNw0LjLy+BSM8YOeWP+iOG0pUapVTn6Y9yPuR+gchltqKFZiuXfwB8RqzfEfctcaxAbz51XqsllgEZSA6Ma7WDn++Vjg+jn+Ny8ziPkMyZ+a7FBln+Tou7EUh8eKqcD7lwBGfpQVPl5nl0Q/ybnTPYYRAGwfBhNssMSZc29QW89f0fcNBf01pdOHCF0wbMwG/dDLNf67zm83KRu8zCIvEXmuiJZfXByGUrOwvJ1kRqD6xgcG3cPmzbhC4VrnL2uLbJ/13juMjl9MfYx8j4g6c/X3aMlV5IJRmhVIrryp1DoGYQl0WKMVI+ZrjyhvNTDksXMuS6Rfk0arBsQjegDDAdrMTVXRXCBVEKhOuelIZmpdVKtJ1GJNGjwbznEFq8pDDd/IlIOVXJhhglpZLD+5KGpVQINdhQBkYgBhfCNv1qoE24Rw93AU+fNQ2GdERgD8dGvB8LwxhMXO4loAYjEMOKVUE7rwd/s5tnzlm6cXCMIAzv8+Gn1/9qsGJVHM6jwnkc8aQinhwUpoLCHDen4eYcWqhCCx19qaIvHaCqAlQdw6theB3m/GPvjlEghGIggO78W1is1fZ6jxXRzlNY65U8pYXdH8OApRlrLTIEfvBDnlzm7JXgciW4F8urxfIVT+DNIcwTGLmQyIWpFEmlGNxR4I7ZJsk2Gf+S+JcJOUXIGSKUEKE5S8lZGkVVKKppXUnrGmhWQLOZb8l8G4t/hsVjr19skoyP36aufMd9REubtI2oidoliAhbzjbiJtoQRdSXlL+N/lR2H0aEI+OhxsfZgTiiriS8URuo6A5xRJiojV4/Yv+oiSaEEV3jYzZbZizB2BhEhJk+WD+vfs7y7lw5bSAA4/h+30topBmkYYajwRwFBWMKCt8H5oaKis6O7/tgXMet7VdInMQp83zp0QpYtBIg/x7hP2i1F6NjjqpjfKISR8UjfU0kE+eo0oREaHDUmYiwM45qYFKiHEeZ6yKy1k2Oyk1MhBt+ob21JEfdYHKiNsmv8mmQLbq0p0iEN46qRHSpFqtw1BumSdRN8YvsP+5zVKo7VSIM+DUmR8d0GWC6REOHoyoRXM6uVTjKGU6ZCI/8Cm+1JF0eMW0ilMnI3+jfpksZ0yd6shn1JX/C4Cj7SSERsnR5PhQRchinSxYqiaw6ySh//fucLnVLKRE6ZJTXs2d060AtEVp0MTZERGwYdGlBNdGwRpdKRNb86xW61IbKiZC36fJxJCLg6IMudh7qidCnWzUCW5CZKt36mCURXkhG8CLtBd1eMFui3hUZvYO1Pbpd9WZMhCIlfoil9oMSRcyaCC1KnIoldkqJFmZPZJUpcSKW1gklypaPRPh0GKUp5IZBN+cTfhKhY9PNXNL/ha6adLM78JcI95T4t5SNViuUuIffREhTwlzCZ23DpEQa/hNZTUoYSzdmnxiUaFoaEqFQZwTe/aeUqRegIxF6Dpd+DvmDMk4PehIhnyKXey2yR5lUHroSIWdT5mJJ1v2ZC8rYOehLhHdKVZdi/+ioSql36EyEB0p9LME+5PoHpR6gNxHuKVVZ+AnSRoVS99CdCL8pZSz4uciZQanf0J8IA8qdL/AZ5OE55QYIIhF+U+55Yc+yE89U+Q35T4R7yhkLeidi26DaOOQ/ER7oIbmA94/WkqTqu8x/IrzblKss3D224wrl7HcoEVCTS9HD/kLdGY3t00MqBzUCivIOPVQW6O7xVoUenDwUCajq1ekluSBz7fUkvdR7UCWgrNCkF/NsARa2mTOTXpoFKBNQZ6XpKT73Yfs4Tk9pC+oEZnFv01M1IeYoUaUn+x4KfCZCx6EnY29NzMnankFPTgcKfCfCZ5nejN2YmIPYrkFv5U+o8J8IVotjmCuhR4qtmByjZWFGAjMrXo2PFOrjtjY+0FUR6vwnQu+F4xj7CRGSxL7BcV56mJ2AH32bYyU3RQg2kxzL7sMPAV/yNY4X34mJQMV24hyvlocvAv4MW5zAuAjwp7R5YXCC1hD+CPjVqXOSy91VEYDV3UtOUu/ALwHfrKzNieIrq5r7rMQ5kZ214JuABk9lTiG+t5kRWmQ29+KcQvkJGgho8ehwGmZy+5vw6dt20uQ0nEdoIaDHcJDidC7Pt1dnfrq2zy85ndRgCD0EdOm+cWpmdWUrkREKMomtlarJqb11oYuAPu0bqjCe93e2vsfEBLHvWzv7zwZV3LShj4BOuQaVmfHkz92d05ONxLf12NGhEIdHsfVviY2T053dn8m4SWWNHHQS0KtU55zVS9BLQLf3Gueo9g7dBPTL/eKc/MpBP4Eg5G9ths6+zSMIAsHo3R0wVAd3PQRDIChWscnQNIsWgiIQoO7AYQicQRcBEgiUlUtfMVBX6ZyFQAkEzfpzm2JAUrd/LARNIAR/S+kDaneQLv1FCARCku+XqVG5n0dIBMJTKLYa1KDRKhUQHoFwFdrZZsrH4NPMtgsIl8AcPBWzr9dUdP2aLT5hDgTmpdB5zKbLDidyyunsY6eAeRGYM6vbLj3079KvN43atXOQsu3UgXNda9y8pu/6D6V218Kc/QfHfBysIeDrRAAAAABJRU5ErkJggg==",icons$3={end,start},fraction="_fraction_10jqz_1",content$1="_content_10jqz_5",title$4="_title_10jqz_15",erji="_erji_10jqz_21",tip="_tip_10jqz_27",btns="_btns_10jqz_31",btn$2="_btn_10jqz_31",styles$6={fraction,content:content$1,title:title$4,erji,tip,btns,btn:btn$2},title$3="data:image/png;base64,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",icons$2={title:title$3},icon_cancel=""+new URL("../svg/icon_cancel-7c6e2290.svg",import.meta.url).href,icon_confirm=""+new URL("../svg/icon_confirm-8267c467.svg",import.meta.url).href,Microphone=defineComponent({name:"earphone",emits:["close"],setup(i,{emit:e}){return()=>createVNode("div",{class:styles$6.fraction},[createVNode("img",{class:styles$6.erji,src:icons$2.title},null),createVNode("div",{class:styles$6.content},[createVNode("div",{class:styles$6.title},[createTextVNode("开启权限")]),createVNode("div",{class:styles$6.tip},[createTextVNode("请开启麦克风访问权限")]),createVNode("div",{class:styles$6.btns},[createVNode("img",{src:icon_cancel,class:styles$6.btn,onClick:()=>e("close")},null),createVNode("img",{src:icon_confirm,class:styles$6.btn,onClick:()=>e("close")},null)])])])}}),FollowModel=defineComponent({name:"follow-model",setup(){return()=>createVNode(Fragment,null,[createVNode(Transition,{name:"pop-center"},{default:()=>[!followData.start&&createVNode("div",{class:styles$7.startBtn,key:"start"},[createVNode("img",{src:icons$3.start,onClick:()=>{handleFollowStart()}},null)])]}),createVNode(Transition,{name:"pop-center"},{default:()=>{var i;return[followData.start&&createVNode("div",{class:[styles$7.endBtn,(i=state$1.fingeringInfo)!=null&&i.name&&state$1.fingeringInfo.direction=="transverse"&&state$1.setting.displayFingering?styles$7.top:styles$7.bottom,state$1.platform===IPlatform.PC&&styles$7.pcEndBtn],key:"end"},[createVNode("img",{src:state$1.platform===IPlatform.PC?PcEndIcon:icons$3.end,onClick:()=>{handleFollowEnd()}},null)])]}}),createVNode("div",{style:{display:followData.start?"":"none"},class:styles$7.noteState},[createVNode("span",{style:{background:"#ffca67"},class:styles$7.dot},null),createVNode("span",null,[createTextVNode("低")]),createVNode("span",{style:{background:"rgb(255, 0, 0)"},class:styles$7.dot},null),createVNode("span",null,[createTextVNode("高")])]),createVNode(Popup,{teleport:"body",closeOnClickOverlay:!1,class:["popup-custom","van-scale"],transition:"van-scale",show:followData.earphone,"onUpdate:show":i=>followData.earphone=i},{default:()=>[createVNode(Microphone,{onClose:()=>{followData.earphone=!1}},null)]})])}}),recordData=reactive({starTime:0}),handleRecord=()=>{if(state$1.modeType!=="practise")return;let i=Date.now()-recordData.starTime;recordData.starTime=Date.now(),i<0&&(i=0);const e=i/1e3,r={clientType:storeData.user.clientType,musicSheetId:state$1.examSongId,sysMusicScoreId:state$1.examSongId,feature:"PRACTICE",practiceSource:"PRACTICE",playTime:e,deviceType:browser().android?"ANDROID":"IOS",behaviorId:getBehaviorId()};api_musicPracticeRecordSave(r)},RecordingTime=defineComponent({name:"recordingTime",setup(){return watch(()=>state$1.playState,()=>{state$1.playState==="play"?recordData.starTime=Date.now():handleRecord()}),()=>createVNode("div",null,null)}}),fingerBox="_fingerBox_nq52r_7",hiddens="_hiddens_nq52r_16",fingerRight="_fingerRight_nq52r_19",fingerContent="_fingerContent_nq52r_23",backBtn$1="_backBtn_nq52r_26",tips="_tips_nq52r_29",tipHidden="_tipHidden_nq52r_46",tipContentbox="_tipContentbox_nq52r_49",tipContent="_tipContent_nq52r_49",fingerBottom="_fingerBottom_nq52r_57",tipsOverlay="_tipsOverlay_nq52r_93",bgIn="_bgIn_nq52r_1",tipsPcBg="_tipsPcBg_nq52r_102",popoverContainer="_popoverContainer_nq52r_115",selected="_selected_nq52r_150",head="_head_nq52r_154",left="_left_nq52r_182",baseBtn="_baseBtn_nq52r_186",wrapFinger="_wrapFinger_nq52r_219",userTab="_userTab_nq52r_225",userTabBox="_userTabBox_nq52r_230",notes="_notes_nq52r_233",lastNoteContent="_lastNoteContent_nq52r_237",noteBox="_noteBox_nq52r_240",noteContent="_noteContent_nq52r_243",changeMusBtn="_changeMusBtn_nq52r_246",optionBtns="_optionBtns_nq52r_263",btnBox="_btnBox_nq52r_302",btnCon="_btnCon_nq52r_309",btnGr="_btnGr_nq52r_315",boxFinger="_boxFinger_nq52r_340",pcBoxFinger="_pcBoxFinger_nq52r_345",tipTitle="_tipTitle_nq52r_360",tipTitleName="_tipTitleName_nq52r_372",tipImg="_tipImg_nq52r_402",tipClose="_tipClose_nq52r_414",iconBook="_iconBook_nq52r_423",tipItem="_tipItem_nq52r_474",iconWrap="_iconWrap_nq52r_482",tipItemIcon="_tipItemIcon_nq52r_488",btnGrToggleBtn="_btnGrToggleBtn_nq52r_499",nameBox="_nameBox_nq52r_510",name="_name_nq52r_510",noteKey="_noteKey_nq52r_516",dot="_dot_nq52r_521",botDot="_botDot_nq52r_526",arrowImg="_arrowImg_nq52r_533",paddingLeft="_paddingLeft_nq52r_547",noteContentWrap="_noteContentWrap_nq52r_559",noteBtn="_noteBtn_nq52r_601",disabled="_disabled_nq52r_612",tipsT="_tipsT_nq52r_618",playTips="_playTips_nq52r_623",playTips2="_playTips2_nq52r_628",playTips5="_playTips5_nq52r_633",playError="_playError_nq52r_638",playSuccess="_playSuccess_nq52r_643",note="_note_nq52r_233",showAnswer="_showAnswer_nq52r_667",errorAnswer="_errorAnswer_nq52r_676",keyActive="_keyActive_nq52r_693",noteName="_noteName_nq52r_705",dotFixed="_dotFixed_nq52r_708",mark="_mark_nq52r_712",oBtn="_oBtn_nq52r_723",gamut="_gamut_nq52r_733",play="_play_nq52r_623",success="_success_nq52r_739",fingeringContainer="_fingeringContainer_nq52r_747",loading="_loading_nq52r_756",loadingWrap="_loadingWrap_nq52r_768",loadingIcon="_loadingIcon_nq52r_775",loadingTip="_loadingTip_nq52r_782",imgs="_imgs_nq52r_808",tizhi="_tizhi_nq52r_823",canDisplay="_canDisplay_nq52r_842",fixedRightBtns="_fixedRightBtns_nq52r_850",active$1="_active_nq52r_881",rightBtn="_rightBtn_nq52r_886",resetBtn$1="_resetBtn_nq52r_918",toggleBtn="_toggleBtn_nq52r_921",toggleBtnhulusi="_toggleBtnhulusi_nq52r_947",topDot="_topDot_nq52r_968",bottomDot="_bottomDot_nq52r_971",toggleBtnhulusi2="_toggleBtnhulusi2_nq52r_977",oterhD="_oterhD_nq52r_981",tones="_tones_nq52r_996",toneTitle="_toneTitle_nq52r_1007",tipWrap="_tipWrap_nq52r_1078",toneAction="_toneAction_nq52r_1090",toneContent="_toneContent_nq52r_1105",hulusiNoteKey="_hulusiNoteKey_nq52r_1142",hulusiBtn="_hulusiBtn_nq52r_1175",changeSubjectPopup="_changeSubjectPopup_nq52r_1217",linkSourceClass="_linkSourceClass_nq52r_1225",changeInstrumentBtn="_changeInstrumentBtn_nq52r_1229",noteContentOther="_noteContentOther_nq52r_1232",dragTopBox="_dragTopBox_nq52r_1240",styles$5={fingerBox,hiddens,fingerRight,fingerContent,backBtn:backBtn$1,tips,tipHidden,tipContentbox,tipContent,fingerBottom,tipsOverlay,bgIn,tipsPcBg,popoverContainer,selected,head,left,baseBtn,wrapFinger,userTab,userTabBox,notes,lastNoteContent,noteBox,noteContent,changeMusBtn,optionBtns,btnBox,btnCon,btnGr,boxFinger,pcBoxFinger,tipTitle,tipTitleName,tipImg,tipClose,iconBook,tipItem,iconWrap,tipItemIcon,btnGrToggleBtn,nameBox,name,noteKey,dot,botDot,arrowImg,paddingLeft,noteContentWrap,noteBtn,disabled,tipsT,playTips,playTips2,playTips5,playError,playSuccess,note,showAnswer,errorAnswer,keyActive,noteName,dotFixed,mark,oBtn,gamut,play,success,fingeringContainer,loading,loadingWrap,loadingIcon,loadingTip,imgs,tizhi,canDisplay,fixedRightBtns,active:active$1,rightBtn,resetBtn:resetBtn$1,toggleBtn,toggleBtnhulusi,topDot,bottomDot,toggleBtnhulusi2,oterhD,tones,toneTitle,tipWrap,toneAction,toneContent,hulusiNoteKey,hulusiBtn,changeSubjectPopup,linkSourceClass,changeInstrumentBtn,noteContentOther,dragTopBox},icon_2_0="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACQAAAAkCAMAAADW3miqAAAAclBMVEUAAABhYWFgYGBgYGBdXV1hYWFiYmJlZWVfX19hYWFhYWFgYGBgYGBhYWFiYmJhYWFhYWFhYWFhYWFiYmJiYmJhYWFhYWFhYWFhYWFiYmJdXV1fX19hYWFhYWFhYWFhYWFgYGBhYWFhYWFiYmJkZGRhYWEM8dLpAAAAJXRSTlMA+0xCD0cGCjXy23Ej4TDW0KGXaj7Jvqh9Ux4WsYxd5+a6XzkcyXAqHgAAASJJREFUOMvF1NmSgyAURVGvCs6aRDMPPe7//8VGjSaI3b51zotwXEVhUei9JKHyfV+F4zwqmzicmkIAKe79cScmbGv9jBRdpGkn+ZYhafOE/FaIpJEZx0nnke5xtJBkQdOa0ztQHOJTmVWtii0U9MMLsI/63V+BVLsoBj7GfgPcXGTq5OwN0SnsXFTB2nvkAKIdJJA9oUCQ3EFAXd9GFBtUzq30BtcBHYHvCSrrCui3NX7HZOPnhD7q3p9MsZ4gdTer4dxXQDBB+tKjz74tW7N3jyXeCyS6O5Rd69Ozg0zydep3g6w1Ve7NILvbRJ6LbHUYl3GQm2WU60Wkt7KKltCXmBdLKBDwrYswk8xGyGx4IMUfUeM1/90UofXDmI0y5p/zAwe0KaLjuaFoAAAAAElFTkSuQmCC",icon_2_1="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACQAAAAkCAYAAADhAJiYAAAAAXNSR0IArs4c6QAAAv1JREFUWEftlz1oFFEQx//z4qnxTjGVIoiFYsRGwQ9QsLMULMIVKQ72LSF6YCwEsRE5sLAxNmLhIbt7HgdCClsRtAoYIZYWMSjEjyKFYrxsDnL7dsw7dkPuWHcvxuQOuS33zZv57X/evpkhdNlDXcaD7gcaGxvbUa1Wzwkh+qPUU0p9KJVKH5OUzefzA7VabVAIMfAH27rv+9OO4/xcu96kkGEYO4noDYCTMQEVEZmWZT1ttclms/3pdHqUiHIATiVBA5gHcMa27S+hbROQaZoXfd9/SURJqZy0bfvC2oCmaQ4x8wMAB4H2jgIzsxDipmVZ45FAUsrLAJ7HOdROADx2HCevnRQKhW1zc3P3AVxvF6QpRUR3LMu62y7QLIC3LdLPLC4ujk9MTNT0eymlhrnRAqOhXQBTRDQffEToZlCnaRVgnUBF27avxJ0FKeV7AMe1jQ5MRAsrIhZc1y2G0Gv3SymvAXi4mUBaxSNhAGY+6jiOfhf5bDmQ53mZcrms09UDaiggpWxKWU+h1oPRNQrlcrl0KpW6ysy3AewNQTuSspGRkX1KqUkAh1tv544AGYZRIaLhqFLRKaAfRBTZVnQESEr5DcCBiJtvybbtjK4iW3oxmqZ5j5lvtRZUZn7iOM5oQu3797UsaOSeAdDtSqjGq+Xl5aFKpfJry4HCgIZh6CbtGDN/KpVKr+NSFe7Z9OIap0bUWg8oSbH/TqFZIpoKvjrFzGkAel7Tf9YCgBkhxLRS6oW2IaJLRHRad40Adgd2S7q/JiKlbXzfHySis3/bwiZloNFKE1Fj2GNmXWSTRqgmnxTX5K9jLmsHNNEmcS4LLjydohNJ3oIJI0qN8KJsR6l5z/POlsvlz6spbA2sZ3vXdc8T0S69ppRqBBBCeEopVwhR6+vro3q9vl+fFyKSAA4FgF+Z+ZEQ4h0Rffc8TwR+9NkTYSy93/d9L5VKTRWLRX0WV592viJWrGw2uz2TyQyvjNF7hBCOZVnVJHXj1jcMtJHgUXt7QEmK/gbgKRlDdZGgvgAAAABJRU5ErkJggg==",icon_change_instrument="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACQAAAAkCAMAAADW3miqAAAARVBMVEUAAABiYmJgYGBgYGBhYWFhYWFhYWFhYWFhYWFhYWFfX19dXV1hYWFhYWFiYmJiYmJiYmJgYGBiYmJeXl5bW1thYWFhYWGX75gbAAAAFnRSTlMAVjXlbvPEe046Mxz30rmah3VjJg7quL6TXgAAAH9JREFUOMvd0jkOgDAMRFGbJGxhX3z/o+KKIJA1ggrl1b+wrKGsrK6bYTSJyIgiFjVsoPKi+giqOmjlWlC1TqtQ00UsHngX5VOziClVpR2VZ1TZUUWnhg0N/Rs4HL7g3TO9HS23/QQuHuLn/YAq9mkZtm0QxQSMGk2EzJ1bKScHgqkTxTwAusUAAAAASUVORK5CYII=",icon_mode="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACQAAAAkCAMAAADW3miqAAAAe1BMVEUAAABhYWFgYGBhYWFjY2NgYGBhYWFhYWFiYmJgYGBhYWFhYWFiYmJhYWFhYWFhYWFiYmJhYWFhYWFVVVVhYWFhYWFhYWFgYGBgYGBgYGBjY2NiYmJhYWFgYGBhYWFgYGBiYmJiYmJgYGBhYWFfX19jY2NhYWFgYGBhYWF3M6ZeAAAAKHRSTlMAmSziBOl5YA+0sJKI8dumjTYbBvnJcks+IhUL18G8ooJ6ZVRTJuy5ACX6MwAAAPNJREFUOMvdkltvwjAMheu0aXqlN+7dGBvbOP//F2KpghQnCg88IHEe6sr+3PpYjt5OyV83BspZZ6riYwnUxlfebdb0qWGlJDG0NaQqCeW2tsjbn+2eABLMBqx69fX9q4Yp44FKYNXfucsdyPZZd35IuPNBQgEo7I6C7ixU9CLjd/cyaNwNjyB1BvAfhrZLzzJVWq5zmxo1HCghkTL8bvbmDiLZ1wIFh2IGKS7HTTyDKuDA4TA735SZLMpiC5244dgd+XmanWTDoQHK65CL6zUk7pfS2wSTPa0idyab60lDU++cm1zv9Ce5JxJpKd54qqIndQGDNC5Nd0iAwQAAAABJRU5ErkJggg==",icon_toggle="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACQAAAAkCAMAAADW3miqAAAAhFBMVEUAAABhYWFhYWFhYWFhYWFhYWFhYWFVVVVhYWFkZGRhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFiYmJjY2NfX19aWlphYWFhYWFhYWFhYWFhYWFiYmJgYGBgYGBeXl5gYGBgYGBhYWFiYmJhYWFhYWFhYWFgYGBgYGBhYWG6XaCZAAAAK3RSTlMAu2bmz5B8BfgLWfvsTvTw4tqzpoNrIBYP1cOKc0cyKSQc0smtoJpfQD445kfH0QAAAS5JREFUOMvNktmSgkAMRYPsqyIi48KmAyL9//83dKjuMA1ilU+eF5Y+RS5J4DNy7+ed8jQYC672mnJMGHLKXyruIWKCfbXseDt+GqTdnV+dy0K04syPfJMfPXR+r28UJWvGIqUo7PBH4wmEbWGYOJz8wi/jJEfpYKWt8uPdDd8WMBJimhoUbI2/b2Bkw6jYrKBG0jQ2RVelEzUAZBMC/Z+ky1by9L1op6lIosCtqxM5GFWiqD6NWJFoUbA7WHUuiftgcNoMYE0Ca4gF8F4yvkOKqiXJ1UgKcQbuTMJJJWJxsIX6gyRaeqeXn73g2O49SVmL09FKIKr9uNL1KNnX7dIeQo4bFVktYzsvFkuvYqcBm9JksERm+lI5F/CKUuMCLwhrhPEQ7ODCOraX1vAJf/KtPR1+o/+bAAAAAElFTkSuQmCC",icon_back="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEQAAABECAMAAAAPzWOAAAAApVBMVEX///8AAAD///////////////////////////////////////////////////////////////////////////////////////9LS0tNTU1SUlJsbGywsLC+vr709PRXV1eEhIR3d3fW1tbq6ur8/PxkZGSRkZGhoaHKysrw8PD4+PhhYWHf399eXl5cXFydnZ2np6fj4+NlZWWJiYnFxcXMzMxJSUlbLGwqAAAANnRSTlPLAMekkkMdBcC/vLSyiYB6bWlmWkowKBz+/fzz39vO+uvw1dDL9ujj2M/N99L4+OTh0vXp2dcue6ClAAACC0lEQVRYw7WY61ajMBRGvxJJSqEgFVp7kVrbai/OqDPK+z+aKGDVlZOTNrr/stZeBM416JDILO2LqOd5vUj000x2SAiJ8uMQ3whjXx0hGSYBtATJ0FKSn8HAWW4hka2C1khGogYeWLyBMklGAlaIES3xu7Ck61OSCxzBhV5yjqM410hoB28Bfxb+RK3Exwn4XyWjLk6gO/osUQInIdQnyQAnMjhIJBfr29njkz4D5IeEy7nNvCzHz/psbCU547galxVraMlrCfcis8vyjQlRGGrJEEbuyppr4vnwXZLAxG3jmBbQk7xJVACa1XXjWOxAEKgOjAG/W7RnWYHEryQxSIpp47iFgbiShKBY/mscdzARdiBB8fSnVlzOYEYiA8HNvHaMr8CQISWevExqx2QDjhR9Q6hXzG/A0oegQ73i7z14BCJoeCxr1kvwVIqe7ps27zHdwoYePCrn2nTh8bSSGfFzKYn2OMWeCDPqOJE24PeHgOeJiF+8PaQej6CCrdAUATrYUr4c8WGf8YVxyyagBMmDZdzKtig5ZFBIl0f7XI6ZQo2NRVXxyZZhX98CxTev+7bSUpbEpo0u17Vlb2ijfEMvpnxD50eL3cLQ0HPbIWf1MJ/8L4gX4cYtHk/+6ODnPoK6D8PuY7n7gvDjq4r70uS+vrkvku4rrfty7b7mu184uF99/OYljPt10CuPukgLYVHKBAAAAABJRU5ErkJggg==",icon_btn_blue="data:image/png;base64,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",icon_btn_ylow="data:image/png;base64,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",icon_btn_red="data:image/png;base64,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",icon_btn_orange="data:image/png;base64,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",icon_btn_orange2="data:image/png;base64,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",icon_btn_green="data:image/png;base64,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",icon_action_cancel="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAASgAAABeCAMAAACn1XlDAAACdlBMVEUAAADJvqvDvK3Etqyako3Ds626uLbCuKvMw7bDta3Iv7iQi4nCtq3DtayWkZDBtq3Dtq3DuK/Etq3Dtq2km5bFs63Kv67Ct6yelpHCtqzCtazCt62jnpyRi4iWj4uuqaaclZCUjoqspZu3rKSnpKGak47Ctauhnp2gnJeclI+mn5aimZSon5iupJySjYmmnpeyq5+onZfDt62Vj4ujnpWon5ibl5OmoJuinZaim5SlnpW1qqGvpJ/EuK2ZlJCropv//Pj/+e//+O3/+vH6+vr//fv++vP++/X/+/b//fr/+/T/+vP//Pf++fGkkpL9/Prz8/O/vb20sbGZlZX++O7++fD++O2oop7l39r9+/nr5uL29PH++e///vzr5uP5+fn29fH/+/jm39r39/fl3dn19fXw6+emlJT7+fW8rauol5f49fLz7Oarqani2dX39vbXzcn19PS+vLz8+vf18e3y8fH89+/p49/RxsLo4d3S0dGYlJPm5eXX1ta/sK6clpSUj46SjYz89/L59O728Onj4+Pg2NPIvLr38uydmZjs6+vu6eTMxsKppqX9+fPg39/b2trU09PCwMDNwr+5t7fy7erq5ODZ2NjHxcXPw8DOwb6yo6KmoJyllJTy6uLGxMTNwL2xr6+vq6q2p6WloqL9+vXq6em7urnBtLLv7+/t7e3Lycnd3Nzi2tbf1tLOyMO/ubWin5+fnJurmZn59/T18+/t5uPPzc2yramwoJ+tnJv79Ovk29bY0MzIwr23sa24qafb1dHd08/UzMfTycXDvbi2tLS7tbH27+XGuLbb0c3ZzsrEtrSrmprIx8ft5t7o4NnFw8Oy4vD/AAAAQHRSTlMAByJs11EGEwsfCfs4Zf5JMxwZRKQqDz7CWFNN/vXq/svwnXr64lv+8tC6tJiS9K2GhV3hz4328eTdxWtZLO9QZIriGgAAEbtJREFUeNrkWM9r2lAc3w6DMYY7DDbYCkIRJrIxD4P+OHlYD57U9VA1rHNzDYKI0yghsZLkkA2nRS2aeQiEiWup2taKGb2sxUPbW2H/0b4voTxCOme7HYz78Ejer8/35X38vm++5sZYeOx2Lcw57M2vr6YIX5t2x9yCy33vxr/BrefzTSW/9eblVOLNVl6xzz9//Lcq3V90KOLLqYeoOFwPr6/Szdm5wJauezSaTKVS/ikDbCkZjepabQXmnl1PptuzjrxmIpr0t8UK22n83AxMFTZ/NjpsRWz7k7pYecfs7avrNOuoaCqt7ZTZRiBda7YO+oXlqUKhf9Bq1tKBBlveWdO0qjiu6lW3nKwmU1ZkN9PNPi/wXF+W5ZWpAmyoz/GCrd/c3mTFrCYV63x8lVO3uL2mydRtpBM5gZPtZyelH8OPu++DOt4F30EJGmEeM7cniR/c/Tj8UTo5s8uckEukG11NqrXtxTvj6vTQKaIAnu0qtYLArZyV9hiGpumwjtXwKpSLu6HPAPP4pPEBEk0z7/ZKvRVOKNSUbhYlQWXn3fF0ctv9MD213jldFuTj/feMFC6SZD2TUVWCiESICKEhgusA3BePxONE3NCHORPEJwhVzWTqZLEYppn3+8eysHzaWU/B1v1N9zg6uRTkTjvVdIGXe0NGWgWNiMEgRoV8vpAvpMFnrmPgPuO8SeRTscGAALW+S8ywt8IX0tUd5FQN1591eoGieHL9PCHM9PYYicyouka+pRF4vfQayuj+yeTDxpBaaoYMMx97M8LG+XoSxfQXfwrj8xV07MqBHHc8pMNkJh6jwNaIhxvrwSabDxukYnEk1fCYWw6U0fHrLowO6fMiOqNfXglyiUEygS9hg9eDNfjgV5pUJVl49QXFaHFh5LlD/pStJvjDIV3MDKjQ0n8EJFWRHh7yiWoWJZ8jTp+LRf5Ubdl6wdU6EQt5EZa8oDe4J1ygitr63efV+i6Ax/DdavxQjKh/D/ZsrSryqepvI7pbQfEpf5D7xIA7hTTDhoUAuI5hfhAd1uN7qEGmyBxxT/IoTinu3+SZdpSYVlpciSbVWMjj01SHYvwVUBvDOAeA51mR7/XFVJIuca0K+muSuDTzvO0Ef4uKCdu+REYobA0bv3BXvCgAjxnbVuWHKIKU9nMJMQpRyHnnskAuQp7ZPuWPpDq87HQDHq8Him7E48N1uFwKvKB1+RDT69IRf/oZMk9x0azToxoK5OfCiUTGKZhvMI5/GdwP0MbgAk3jg1mbj5Q6ERoooNfMH9SdcCijZdshDTq91Q1gQwjYMF5cr5sXszb/LRUn6UNbNwoh22n6Tocyg/bGzC7o5DEtMnJh81zL80Gp3ZmNNsoRnhp1euBAb7wO/6GofrvcGGBkHx6bBv4v9szgtYkgCuPWQ7UXRQ+iICpePCh461Fy2l3S+KB4kV7EGrJJjaVoaFpDjW5CuzHtooYUkhiQxlVRrFA10mKk2Iqo7cH/yPdmsplOt+iERQ/qx9KZfTO/98rXmUm6674ttu68oE++o/J5fvYevbnJfG6m4oaczJ/4Xxg34qnm5wy9o7t3UvpqcJQ928tGy5YhQ93r7+BdqxzNPvUtqZNTuKDu3p6N5dzQfzG5V2Ozt+krwtTWU6qfnkE9KMyn3viJy6HLePn7O8/7e/h4aqgwSM+m+oVP+6/TQ4N9s/SJ919t6VfLr/bRY4RB8Q75xBPceTezQ3Y8ZDCFjBBevOWie1/cP+e38bHW1T9d/4Y9dOE+fpe6e7jz6vwU7by5T0nLiIRCkVAELw8V93LrLx4xxHhgPr6dr8Fa0Prd8oaV/DRHe+9oT9uoI99p590ZTsU9SEhKhJe4J/GYaJV4Jy5pJ/69uTrP6da6wWIAM2xOMbEYtL4yH09dvEN778F+73kd/Tv87mFsXPcgTyKJiIu+f54KnwBZjeJoR9EknzcGYJYc5GKeQdRyuhGwvqHM6+Oxh+/oX+PT7Z13jt4KL8ymLMODdEPHy2sJFvGIzvokbOS+Au+Y8DN94fMqdYBazNDdZYBJ4tEois/jDMX6wX9/3crPLtDb43N87x2ao2+bmUnb1Uk8kQAx4BWjPl4izueLvgofLT0DeFZiagCU1kFSjPNDNYCR6UgkbcKygzwaRfwGTghYP6LO67nJDHuAt1ccUc/3xSzxVyDxvkgkYnJh0VflRwGinKlAXTeKuEqiTC8TAM02b80AmE1DnwAYQx6NwmC5Ds+C11fnx5OZu51DqvfkFPZvHs9b/iQkce93X06sypNRfKwCJg7XYKM9rwKQ78xf3IQmGrYCr3N86+m0oIrB66vzVv44mTN1ppeOKPYtavBDzvU7KyeW42LPC0aNJ6M4jysKh7/AcptJYE/wVoz4FkBL19mKmsefQet3xbv2h0E8zZ+coENq77EraNTCy5yUTG5JIuYf4+OqPBlFLVtROPIVwPYO+pntfDm9CTPpSYBb6XQDYDQZvL467+amr11Cd47tpbO8nz70loo591dJ5WRhIxzWw7okNX6UHebVUrXagDreNwFeMjyNHcanvfNSS8B21eyg9dV51yoW6GOv/xAatadARl3IW1tcxQyYx++yiPtjhjI/CkJ1jGkmVBi+DiZb12OwOc35KPj1LWh9dV6zkhfIqMIePMsPniKjMnlLLkB9vESLkmIoeVyVJ6PMEaY61Cm2Cgk2nIBVxn8EXHM2zW0BrEWHh6PDURI2iwCVoPW74J18how6dbB3V++BObaibE2AqF/3tbCm6ZqIh5V5OqM4X+FGVXEl4YgzAhN83scRgJVJ7I8BJCXeAagGrd8F79jMqLkDZNQ1bpSDINKUACWSaDxOIIaoLyfUBKfIk1F8rAImjU/jfsIWF1K6zZcTAPU1bpTEWwCPgtbvgnftLBm1QEb1MaOyNk7zqQ1hs2NSeY4yT0ZR2zFqfAQa2DRgU+RYNwEWNTJK4smooPW74DVu1LW+3l09fY/pAzCbOy8glAwPhAcGtAGpiL+AMj/d2XolqLPYDEAxnAaY2MIPr+DtGPoyIQmgGrR+F7yTK5A7j/t6dvXsXqJuIedwiJLiJWCRWBr3FdeUeVpRfJ5nVBOgpG2AaW/lx99raJRf1aD1u+A1btTSbjLqB/fm89pEEMVx9VJiJFZbRcQWPUgRBSnBkxVZF3IJO4eQoAdPooRIquhhUUwFcYlFqogUAgarEA/+alUC1qS1lHqwPxT9k/y+2dHXYWKYZb2Yx9CdnZ3Pe8Prm8fMdCqDC45ihZqoNug0FOtt1jwc1apL+S6KYVtDtAOsNg0ejrqsC0Isrv0IPCJKJiZyVCJ1FfUXkx4giPI2PyGkDIXa2CjqWlhnrfmqYCmGPBbny0LMaPzDRrtMOUrjPURUXPsReO/uCzr9TSW2IpkPXUM9F2QkaHibQ1JTyHUehC1/BV55KaWuIip7F5Eibuv8BhIXOUrjfURUXPsReC/I0eW6oQQtD9IV1J+de5jhDiymcjZqDMiSpxxFdZnMFY90Li5ovNcSLY8cxbxyVFz7EXjvHN1CrKTlOmrfPOq1JY8VS2Fvd2wzxZrH1FsM+2J5oKhFIb7r/BwOouTyQOPJUXHtR+C9pRqcM7+PHLX72DRdLjvrZw0lf1XqZT0v49G3sI4fEFueHBXy5Ki7AfHIUGJd69/AORQ5armkCRwV134E3j9L1xCnT2ALs6Xv9Ij8m4zP4akpcLOu67ndFPPTjueIeiJEqSiq2Yw8D25ObuIvYFPnZTstD57HtR+B9w9QLh853UfHLP1JebesDEUkbsZVIg2g8Dusopjf0Ajdtjw5Ct8WqvfagmTD/VgUbTjt2ya+JIqBSzmqdFsTOCqu/Qh8Wd5DTPbvpYO7PekJut4y5RGoKwGFwu/hb4aV8TvVbXk4an3uXkNIufxyNuOjftGDDy784bFeWANPOUrjKUfFtW/Pe1N0HWoivQcHd1hxHs/RGeeBAnXpDLB0a7fj/cU1XkWJIll9KcNkEqfjZcWUL4tmgDo5SuPJUbb2448/fwAhdDU3iPUmHUiNpcK5ZxjQnhBuM/tBrPhyU4TSWlspPxFP0YalQcPHV6Sl+oLkKbpWPHYU83DUE1v78ccfzrzUGHI5pG/HoRr9PfS941qIMYiI8oOmW+n5XJl4HES5LhJ5O5DfbiAjybhewepTtsBRM7/JGzd+Ftwyds6W9uOP33lfwVSrHdqBXC6T1NHxS7SL8bt6l+tdDFvw1bmZPyw5qgrH/Qi5QoniBWm+SRPPU45S/E3y8HJLiM+W9uOP36f9y6XxQaQokq2JsTt0taz2zggphjopN9+j8lhHTWIqVn+/rzZlBC1i4oX9NjD1FL9QUnktiGvflnfe1ehma3IsgRQVzr3D8rbih0LBLUDo4aLIpxJ+53azT1T+SrGUbz1d5z43m3Uf/JcV1W+mvcx8eeNbo377Z1z71nz+g7zZmqaZp+beaEreVpxyHRfFQWE4fDeehnGngPao/AJGtbqZ9+Pa/4f8lLzZmhpVMw9zb9fA8HU6QhgPGEJhmNukYjTx91DUt17ig3E6OLg+PLALMy+Uvv4TqQpC6v4np6OwUq53/t5L/Kf7CKhK6kQ/Zp6S7dt2Dufk3bLZsM955zyK4+SdPIoCub2L9A4/+5juIeaGd27DRXMOqdHkBG2NH6yy4u7K5SDO5+kb90NDr/DBA9oOTyRHw4DikDoyUsFG5tUDQxl+6PXu0iv82Vc4X6mMHFQBxSF1cmj6NXz46KuNMjZq1nuD//qWbtdND53UAgohlRgYTL6hLd/8kuxsPRjzey/wS/O0yXuTHBxIyIBi2Xtq/5FbNfm/2V8MBR3ljHMGpdP7/8//au/sedMGwjhuO4lfsF0bv4BfBIVaICECVSN1qjI0nyDQipUBMaK2lliASnTIUCTkgirBROWqCiKNlNIlkTIwpE0ztf1IvaOKTi2kDkoWW/0tPrD/dzz/e+6OhYez4fz3+s2EsR3B/oSUuEfxD4fwC3rh6FK0cIUD7zy97BC9hoDG5Yfyu/4IHnjVww/xR5xEYn8RIuQH+ZoDj76PX6EAdYQGg6CBl88KHNDf+q8f4YHn1PIPZLSTIyKquRlzHZhTjVkJufyn42hAdH/ZjPpXX5r1YD45bmzTVCPYIiQlGgpbPIT71F53NO8QsTgrpcel0k5p3l72rF/1o24L7k+HRVYxRIrEloBLnJ5l3UEdGup++btDCGjA9gLoHrr6U//FhUuqPnDZrM5JOLaUUDiazsZqjYMKeLbX/bHzT7xn0n/6H1247CoHjVosm46GQ9gV0Ew0reSnw3lRrup4doHcX5gNz/fg1V/6i2/jeeCt4TSvpKMMjV0JTQCn4k37zbx8YOd8NtrxwCul/aMfzc4782KRb+xmXNGjBPJpeU7pD9dZF5QPhFZNxnefn3rMhid+0J8+vzueQJtAsUiXXX+ow3z6J3SYMywt9tpudKplqBy4J0cjXwW9sn50dOIO5sFWOw37dUyzDC5MYx6EJNHklRTb7fegVVDu9N+ffDr7Obo49eOSulp/ejH6efbp5H3f+R1ndb/X77IphTdFKYR5glOqnLa0ZLvWb7R2K6APSN05fld4WwwUbwvvjp367/jKld1Wo19rJzUrLasUjl0DMkJwG3wuA6yyh4MOLGIdcEAh8s5gaAObMjl+gyMiJHY9QtK2rPObiST7+bzwvbc3eVF9VikH8M8EyuXKs+qLyV7ve+H8M5tMbPK6vI2WnTd4hBGFNJ/TUrH21LULw+OXTmv/YFLfDRD1ycF+y3l5PCzY7rQdS2k5Pi2IDEinVQhRBCfovKUkUkm2Oa0Vx7ZtFwIGCGlcrE2bbDKVUCxeF0SCQum0glWibGzx1r1sJhXPs6/ad5pPAkXzTvsVm4+nMtl7Fr9lyMimla0Kq5wAvFqzcsp9TUtk1gNFJqFp95WctQZcEjg1jGxaGZymGJWTTUPf4nl+LXCAoLZ0w5Q5laFoHIPcxCuJUEUuKguCaW4ECNMUBDnKiSohIZduBInTEUoKMwxDBAoQUFiiIjROYrcICcADBgnA/nO7/ALcOHj3gv8rvQAAAABJRU5ErkJggg==",icon_action_confirm="data:image/png;base64,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",icon_arrow="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAAKCAYAAAC5Sw6hAAAAAXNSR0IArs4c6QAAASNJREFUKFNjZGBgYNi8ennbf4b/5QwMDEwgPgng338Ghk7/0KgqRpCmTauX9jEwMBaSYACSUsZ+v9DIIrBBZ2bOZH0uzLfl////bqQYxsjIuEvy7Scfk/T032CDQGD/qlU8Xxj/HPjPwGBMjGGMDAxnef6zODiGhX0BqYcbBOKsW7dIjOUv61EGhv8q+A1jvPOH+bd1UFDcK5g6FINAgutXrFBmZvp3lIGRQRyrYf8ZXv79x2QdGBFxF1kewyBw4K9dYcTw7+8BBgZGXlTD/n9mYGJ28AuOOIduCVaDQIo2rlrmysjIsIWBgYENqunX//8MPv5hUbuxuRSnQeD0tXZ51P9//xeDA5OJMdY3OHIZrrDDaxDYsDXLfEG0b0jUZnwRAAD4flULBwtsIQAAAABJRU5ErkJggg==",icon_listen="data:image/png;base64,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",icon_click="data:image/png;base64,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",icons$1={icon_2_0,icon_2_1,icon_change_instrument,icon_mode,icon_toggle,icon_back,icon_btn_blue,icon_btn_ylow,icon_btn_red,icon_btn_orange,icon_btn_orange2,icon_btn_green,icon_action_cancel,icon_action_confirm,icon_arrow,icon_listen,icon_click},FIGNER_INSTRUMENT_DATA={"pan-flute":{list:[{key:5,name:"G",octave:4,step:-1,realKey:55,realName:"G4"},{key:6,name:"A",octave:4,step:-1,realKey:57,realName:"A4"},{key:7,name:"B",octave:4,step:-1,realKey:59,realName:"B4"},{key:1,name:"C",octave:5,step:0,realKey:60,realName:"C5"},{key:2,name:"D",octave:5,step:0,realKey:62,realName:"D5"},{key:3,name:"E",octave:5,step:0,realKey:64,realName:"E5"},{key:4,name:"F",octave:5,step:0,realKey:65,realName:"F5"},{key:5,name:"G",octave:5,step:0,realKey:67,realName:"G5"},{key:6,name:"A",octave:5,step:0,realKey:69,realName:"A5"},{key:7,name:"B",octave:5,step:0,realKey:71,realName:"B5"},{key:1,name:"C",octave:6,step:1,realKey:72,realName:"C6"},{key:2,name:"D",octave:6,step:1,realKey:74,realName:"D6"},{key:3,name:"E",octave:6,step:1,realKey:76,realName:"E6"},{key:4,name:"F",octave:6,step:1,realKey:77,realName:"F6"},{key:5,name:"G",octave:6,step:1,realKey:79,realName:"G6"},{key:6,name:"A",octave:6,step:1,realKey:81,realName:"A6"},{key:7,name:"B",octave:6,step:1,realKey:83,realName:"B6"},{key:1,name:"C",octave:7,step:2,realKey:84,realName:"C7"},{key:2,name:"D",octave:7,step:2,realKey:86,realName:"D7"},{key:3,name:"E",octave:7,step:2,realKey:88,realName:"E7"},{key:4,name:"F",octave:7,step:2,realKey:89,realName:"F7"}],tips:[{key:0,name:"呼吸",octave:0,step:0,realKey:0,realName:"使用腹式呼吸法。吸气时,最大限度地向外扩张腹部,胸部保持不动。呼气时,最大限度地向内收缩腹部,胸部保持不动。"},{key:0,name:"吐音",octave:0,step:0,realKey:0,realName:"首先要形成一个正确的口风:微笑——嘴闭紧——嘴角向两边抻——下颌微微往前伸,不要露出牙齿。舌尖伸出—双唇压紧—迅速收回—同时吹气。反复练习这个动作,而且每吹一个音都要用吐音,只有掌握了正确的吐音方法以后,才可以进行演奏。建议对着镜子练习。"},{key:0,name:"移动",octave:0,step:0,realKey:0,realName:"排箫一管一音,移动的准确性就成为重中之重,移动时,保持排箫的水平和垂直以及下唇和吹口的位置关系,而且每次移动都要对正管子。建议练习找管位时先从二度——三度——四度——五度——多度,总之每一次练习都应该是重复正确和纠正错误,开始时注意力很难兼顾三项,慢慢才能配合默契,形成一种下意识动作,直至“手到—嘴到—气到”。"}]},"hulusi-flute":{tips:[{key:0,name:"单吐",octave:0,step:0,realKey:0,realName:"利用舌尖部顶住上腭前半部(即“吐”字发音前状态)截断气流,然后迅速地将舌放开,气息随之吹出。通过一顶一放的连续动作,使气流断续地进入吹口,便可以获得断续分奏的单吐效果,完成单吐的过程。单吐一般在音符上方用“T”标示。根据音乐表现的需要,单吐又可以分为断吐和连吐两种。"},{key:0,name:"双吐",octave:0,step:0,realKey:0,realName:"双吐是用来完成连续快速分奏的技巧。首先用舌尖部顶住前上腭,然后将其放开,发出“吐”字。简言之,在“吐”字发出后,立即加发一个“苦”字,将“吐苦”二字连接起来便是双吐。双吐的符号是“TK”。"},{key:0,name:"三吐",octave:0,step:0,realKey:0,realName:"三吐实际上是单吐和双吐在某种节奏型上的综合运用,符号为“TTK”或者“TKT”,即“吐吐苦”或者“吐苦吐”"}],tones:[{key:5,name:"G",octave:4,step:-1,realKey:0,realName:""},{key:1,name:"C",octave:5,step:0,realKey:0,realName:"C5"},{key:2,name:"D",octave:5,step:0,realKey:0,realName:"D5"},{key:3,name:"E",octave:5,step:0,realKey:0,realName:"E5"},{key:4,name:"F",octave:5,step:0,realKey:0,realName:"F5"},{key:6,name:"A",octave:4,step:-1,realKey:0,realName:"A4"},{key:7,name:"B",octave:4,step:-1,realKey:0,mark:"fall",realName:"B4"}],list:[{key:3,name:"E",octave:4,step:-1,realKey:64,realName:"E4"},{key:4,name:"F",octave:4,step:-1,realKey:65,realName:"F4"},{key:4,name:"F",octave:4,step:-1,mark:"rise",realKey:66,realName:"Gb4"},{key:5,name:"G",octave:4,step:-1,realKey:67,realName:"G4"},{key:6,name:"A",octave:4,step:-1,mark:"fall",realKey:68,realName:"Ab4"},{key:6,name:"A",octave:4,step:-1,realKey:69,realName:"A4"},{key:7,name:"B",octave:4,step:-1,mark:"fall",realKey:70,realName:"Bb4"},{key:7,name:"B",octave:4,step:-1,realKey:71,realName:"B4"},{key:1,name:"C",octave:5,step:0,realKey:72,realName:"C5"},{key:1,name:"C",octave:5,step:0,mark:"rise",realKey:73,realName:"Db5"},{key:2,name:"D",octave:5,step:0,realKey:74,realName:"D5"},{key:3,name:"E",octave:5,step:0,mark:"fall",realKey:75,realName:"Eb5"},{key:3,name:"E",octave:5,step:0,realKey:76,realName:"E5"},{key:4,name:"F",octave:5,step:0,realKey:77,realName:"F5"},{key:4,name:"F",octave:5,step:0,mark:"rise",realKey:78,realName:"Gb5"},{key:5,name:"G",octave:5,step:0,realKey:79,realName:"G5"},{key:6,name:"A",octave:5,step:0,mark:"fall",realKey:80,realName:"Ab5"},{key:6,name:"A",octave:5,step:0,realKey:81,realName:"A5"}],listC5:[{key:6,octave:4,step:-1,name:"E",realKey:64,realName:"E4"},{key:7,name:"F",octave:4,step:-1,mark:"fall",realKey:65,realName:"F4"},{key:7,name:"F",octave:4,step:-1,realKey:66,realName:"Gb4"},{key:1,name:"G",octave:4,step:0,realKey:67,realName:"G4"},{key:1,name:"A",octave:4,step:0,mark:"rise",realKey:68,realName:"Ab4"},{key:2,name:"A",octave:4,step:0,realKey:69,realName:"A4"},{key:3,name:"B",octave:4,step:0,mark:"fall",realKey:70,realName:"Bb4"},{key:3,name:"B",octave:4,step:0,realKey:71,realName:"B4"},{key:4,name:"C",octave:5,step:0,realKey:72,realName:"C5"},{key:4,name:"C",octave:5,step:0,mark:"rise",realKey:73,realName:"Db5"},{key:5,name:"D",octave:5,step:0,realKey:74,realName:"D5"},{key:6,name:"E",octave:5,step:0,mark:"fall",realKey:75,realName:"Eb5"},{key:6,name:"E",octave:5,step:0,realKey:76,realName:"E5"},{key:7,name:"F",octave:5,step:0,realKey:77,realName:"F5"},{key:7,name:"F",octave:5,step:0,mark:"fall",realKey:78,realName:"Gb5"},{key:1,name:"G",octave:5,step:1,realKey:79,realName:"G5"},{key:1,name:"A",octave:5,step:1,mark:"rise",realKey:80,realName:"Ab5"},{key:2,name:"A",octave:5,step:1,realKey:81,realName:"A5"}],listD5:[{key:7,octave:4,step:-1,name:"E",realKey:64,realName:"E4"},{key:1,name:"F",octave:4,step:0,realKey:65,realName:"F4"},{key:1,name:"F",octave:4,step:0,mark:"rise",realKey:66,realName:"Gb4"},{key:2,name:"G",octave:4,step:0,realKey:67,realName:"G4"},{key:3,name:"A",octave:4,step:0,mark:"fall",realKey:68,realName:"Ab4"},{key:3,name:"A",octave:4,step:0,realKey:69,realName:"A4"},{key:4,name:"B",octave:4,step:0,realKey:70,realName:"Bb4"},{key:4,name:"B",octave:4,step:0,mark:"rise",realKey:71,realName:"B4"},{key:5,name:"C",octave:5,step:0,realKey:72,realName:"C5"},{key:6,name:"C",octave:5,step:0,mark:"fall",realKey:73,realName:"Db5"},{key:6,name:"D",octave:5,step:0,realKey:74,realName:"D5"},{key:7,name:"E",octave:5,step:0,mark:"fall",realKey:75,realName:"Eb5"},{key:7,name:"E",octave:5,step:0,realKey:76,realName:"E5"},{key:1,name:"F",octave:5,step:1,realKey:77,realName:"F5"},{key:1,name:"F",octave:5,step:1,mark:"rise",realKey:78,realName:"Gb5"},{key:2,name:"G",octave:5,step:1,realKey:79,realName:"G5"},{key:3,name:"A",octave:5,step:1,mark:"fall",realKey:80,realName:"Ab5"},{key:3,name:"A",octave:5,step:1,realKey:81,realName:"A5"}],listE5:[{key:1,octave:4,step:0,mark:"rise",name:"E",realKey:64,realName:"E4"},{key:2,name:"F",octave:4,step:0,realKey:65,realName:"F4"},{key:3,name:"F",octave:4,step:0,mark:"fall",realKey:66,realName:"Gb4"},{key:3,name:"G",octave:4,step:0,realKey:67,realName:"G4"},{key:4,name:"A",octave:4,step:0,realKey:68,realName:"Ab4"},{key:4,name:"A",octave:4,step:0,mark:"rise",realKey:69,realName:"A4"},{key:5,name:"B",octave:4,step:0,realKey:70,realName:"Bb4"},{key:6,name:"B",octave:4,step:0,mark:"fall",realKey:71,realName:"B4"},{key:6,name:"C",octave:5,step:0,realKey:72,realName:"C5"},{key:7,name:"C",octave:5,step:0,mark:"fall",realKey:73,realName:"Db5"},{key:7,name:"D",octave:5,step:0,realKey:74,realName:"D5"},{key:1,name:"E",octave:5,step:1,realKey:75,realName:"Eb5"},{key:1,name:"E",octave:5,step:1,mark:"rise",realKey:76,realName:"E5"},{key:2,name:"F",octave:5,step:1,realKey:77,realName:"F5"},{key:3,name:"F",octave:5,step:1,mark:"fall",realKey:78,realName:"Gb5"},{key:3,name:"G",octave:5,step:1,realKey:79,realName:"G5"},{key:4,name:"A",octave:5,step:1,realKey:80,realName:"Ab5"},{key:4,name:"A",octave:5,step:1,mark:"rise",realKey:81,realName:"A5"}],listF5:[{key:2,octave:4,step:0,name:"E",realKey:64,realName:"E4"},{key:2,name:"F",octave:4,step:0,mark:"rise",realKey:65,realName:"F4"},{key:3,name:"F",octave:4,step:0,realKey:66,realName:"Gb4"},{key:4,name:"G",octave:4,step:0,realKey:67,realName:"G4"},{key:4,name:"A",octave:4,step:0,mark:"rise",realKey:68,realName:"Ab4"},{key:5,name:"A",octave:4,step:0,realKey:69,realName:"A4"},{key:6,name:"B",octave:4,step:0,mark:"fall",realKey:70,realName:"Bb4"},{key:6,name:"B",octave:4,step:0,realKey:71,realName:"B4"},{key:7,name:"C",octave:5,step:0,mark:"fall",realKey:72,realName:"C5"},{key:7,name:"C",octave:5,step:0,realKey:73,realName:"Db5"},{key:1,name:"D",octave:5,step:1,realKey:74,realName:"D5"},{key:1,name:"E",octave:5,step:1,mark:"rise",realKey:75,realName:"Eb5"},{key:2,name:"E",octave:5,step:1,realKey:76,realName:"E5"},{key:3,name:"F",octave:5,step:1,mark:"fall",realKey:77,realName:"F5"},{key:3,name:"F",octave:5,step:1,realKey:78,realName:"Gb5"},{key:4,name:"G",octave:5,step:1,realKey:79,realName:"G5"},{key:4,name:"A",octave:5,step:1,mark:"rise",realKey:80,realName:"Ab5"},{key:5,name:"A",octave:5,step:1,realKey:81,realName:"A5"}],listA4:[{key:4,octave:4,step:-1,mark:"rise",name:"E",realKey:64,realName:"E4"},{key:5,name:"F",octave:4,step:-1,realKey:65,realName:"F4"},{key:6,name:"F",octave:4,step:-1,mark:"fall",realKey:66,realName:"Gb4"},{key:6,name:"G",octave:4,step:-1,realKey:67,realName:"G4"},{key:7,name:"A",octave:4,step:-1,mark:"fall",realKey:68,realName:"Ab4"},{key:7,name:"A",octave:4,step:-1,realKey:69,realName:"A4"},{key:1,name:"B",octave:4,step:0,realKey:70,realName:"Bb4"},{key:1,name:"B",octave:4,step:0,mark:"rise",realKey:71,realName:"B4"},{key:2,name:"C",octave:5,step:0,realKey:72,realName:"C5"},{key:3,name:"C",octave:5,step:0,mark:"fall",realKey:73,realName:"Db5"},{key:3,name:"D",octave:5,step:0,realKey:74,realName:"D5"},{key:4,name:"E",octave:5,step:0,realKey:75,realName:"Eb5"},{key:4,name:"E",octave:5,step:0,mark:"rise",realKey:76,realName:"E5"},{key:5,name:"F",octave:5,step:0,realKey:77,realName:"F5"},{key:6,name:"F",octave:5,step:0,mark:"fall",realKey:78,realName:"Gb5"},{key:6,name:"G",octave:5,step:0,realKey:79,realName:"G5"},{key:7,name:"A",octave:5,step:0,mark:"fall",realKey:80,realName:"Ab5"},{key:7,name:"A",octave:5,step:0,realKey:81,realName:"A5"}],listB4:[{key:5,octave:4,step:-1,name:"E",realKey:64,realName:"E4"},{key:5,name:"F",octave:4,step:-1,mark:"rise",realKey:65,realName:"F4"},{key:6,name:"F",octave:4,step:-1,realKey:66,realName:"Gb4"},{key:7,name:"G",octave:4,step:-1,mark:"fall",realKey:67,realName:"G4"},{key:7,name:"A",octave:4,step:-1,realKey:68,realName:"Ab4"},{key:1,name:"A",octave:4,step:0,realKey:69,realName:"A4"},{key:1,name:"B",octave:4,step:0,mark:"rise",realKey:70,realName:"Bb4"},{key:2,name:"B",octave:4,step:0,realKey:71,realName:"B4"},{key:3,name:"C",octave:5,step:0,mark:"fall",realKey:72,realName:"C5"},{key:3,name:"C",octave:5,step:0,realKey:73,realName:"Db5"},{key:4,name:"D",octave:5,step:0,realKey:74,realName:"D5"},{key:4,name:"E",octave:5,step:0,mark:"rise",realKey:75,realName:"Eb5"},{key:5,name:"E",octave:5,step:0,realKey:76,realName:"E5"},{key:6,name:"F",octave:5,step:0,mark:"fall",realKey:77,realName:"F5"},{key:6,name:"F",octave:5,step:0,realKey:78,realName:"Gb5"},{key:7,name:"G",octave:5,step:0,mark:"fall",realKey:79,realName:"G5"},{key:7,name:"A",octave:5,step:0,realKey:80,realName:"Ab5"},{key:1,name:"A",octave:5,step:1,realKey:81,realName:"A5"}]},piccolo:{tips:[{key:0,name:"拿竖笛的方法",octave:0,step:0,realKey:0,realName:"把竖笛拿起来,然后放在嘴边,把它轻轻地放在你的唇间,并用你的手指拿稳。记住要把你的左手放在上边,有一个孔的背面应该正对着你,不要咬吹口或是让它碰到牙。"},{key:0,name:"吹竖笛的力度",octave:0,step:0,realKey:0,realName:"向竖笛吹气,轻一点吹想象你在吹泡泡一样,控制气流的稳定并轻柔地吹奏,尝试用膈肌呼吸并确保你吹得均匀,这可以使声音稳定持续。"},{key:0,name:"学习呼吸方法",octave:0,step:0,realKey:0,realName:"吹竖笛时,气息的控制是很关键的,气息分为缓吹法和急吹法,吸气要从鼻子和嘴角吸气,吸到胸部和腰部,小腹微微向里收,以使演奏有气息支持。"},{key:0,name:"勤练习指法",octave:0,step:0,realKey:0,realName:"指法图是用来表示竖笛上的单音的,后背的孔叫0孔,从上到下依次为一孔、二孔、三孔、四孔、五孔、六孔、七孔,要吹奏简单的练习曲,必须要牢记单音的指法。"},{key:0,name:"学习一些演奏技法",octave:0,step:0,realKey:0,realName:"单吐是用舌尖顶住上牙的牙根,用气息轻轻地把舌尖冲开,待声音发出后舌尖有弹性地返回到原来的位置,这时舌尖就像一个通气阀门,如果我们让它发出声音就像发“嘟”音的感觉。在有连线的地方只有第一个音采用单吐的技法,后面的音不再做吐音,只接前面“嘟”音的尾音发出“呜”音,整个连线里面的音就像“嘟呜”的。"}],tones:[{key:1,name:"C",octave:5,step:0,realKey:0,realName:""},{key:4,name:"F",octave:4,step:-1,realKey:0,realName:"F4"},{key:2,name:"D",octave:4,step:-1,realKey:0,realName:"D4"},{key:5,name:"G",octave:4,step:-1,realKey:0,realName:"G4"}],list:[{key:1,name:"C",octave:5,step:0,realKey:60,realName:"C5"},{key:2,name:"D",octave:5,step:0,realKey:61,mark:"fall",realName:"Db5"},{key:2,name:"D",octave:5,step:0,realKey:62,realName:"D5"},{key:3,name:"E",octave:5,step:0,realKey:63,mark:"fall",realName:"Eb5"},{key:3,name:"E",octave:5,step:0,realKey:64,realName:"E5"},{key:4,name:"F",octave:5,step:0,realKey:65,realName:"F5"},{key:5,name:"G",octave:5,step:0,realKey:66,mark:"fall",realName:"Gb5"},{key:5,name:"G",octave:5,step:0,realKey:67,realName:"G5"},{key:6,name:"A",octave:5,step:0,realKey:68,mark:"fall",realName:"Ab5"},{key:6,name:"A",octave:5,step:0,realKey:69,realName:"A5"},{key:7,name:"B",octave:5,step:0,realKey:70,mark:"fall",realName:"Bb5"},{key:7,name:"B",octave:5,step:0,realKey:71,realName:"B5"},{key:1,name:"C",octave:6,step:1,realKey:72,realName:"C6"},{key:2,name:"D",octave:6,step:1,realKey:73,mark:"fall",realName:"Db6"},{key:2,name:"D",octave:6,step:1,realKey:74,realName:"D6"},{key:3,name:"E",octave:6,step:1,realKey:75,mark:"fall",realName:"Eb6"},{key:3,name:"E",octave:6,step:1,realKey:76,realName:"E6"},{key:4,name:"F",octave:6,step:1,realKey:77,realName:"F6"},{key:5,name:"G",octave:6,step:1,realKey:78,mark:"fall",realName:"Gb6"},{key:5,name:"G",octave:6,step:1,realKey:79,realName:"G6"},{key:6,name:"A",octave:6,step:1,realKey:80,mark:"fall",realName:"Ab6"},{key:6,name:"A",octave:6,step:1,realKey:81,realName:"A6"},{key:7,name:"B",octave:6,step:1,realKey:82,mark:"fall",realName:"Bb6"},{key:7,name:"B",octave:6,step:1,realKey:83,realName:"B6"},{key:1,name:"C",octave:7,step:2,realKey:84,realName:"C7"},{key:2,name:"D",octave:7,step:2,realKey:85,mark:"fall",realName:"Db7"},{key:2,name:"D",octave:7,step:2,realKey:86,realName:"D7"}],listF4:[{key:5,step:-1,name:"C",octave:5,realKey:60,realName:"C5"},{key:5,step:-1,mark:"rise",name:"D",octave:5,realKey:61,realName:"Db5"},{key:6,step:-1,name:"D",octave:5,realKey:62,realName:"D5"},{key:6,step:-1,mark:"rise",name:"E",octave:5,realKey:63,realName:"Eb5"},{key:7,step:-1,name:"E",octave:5,realKey:64,realName:"E5"},{key:1,step:0,name:"F",octave:5,realKey:65,realName:"F5"},{key:1,step:0,mark:"rise",name:"G",octave:5,realKey:66,realName:"Gb5"},{key:2,step:0,name:"G",octave:5,realKey:67,realName:"G5"},{key:2,step:0,mark:"rise",name:"A",octave:5,realKey:68,realName:"Ab5"},{key:3,step:0,name:"A",octave:5,realKey:69,realName:"A5"},{key:4,step:0,name:"B",octave:5,realKey:70,realName:"Bb5"},{key:4,step:0,mark:"rise",name:"B",octave:5,realKey:71,realName:"B5"},{key:5,step:0,name:"C",octave:6,realKey:72,realName:"C6"},{key:5,step:0,mark:"rise",name:"D",octave:6,realKey:73,realName:"Db6"},{key:6,step:0,name:"D",octave:6,realKey:74,realName:"D6"},{key:6,step:0,mark:"rise",name:"E",octave:6,realKey:75,realName:"Eb6"},{key:7,step:0,name:"E",octave:6,realKey:76,realName:"E6"},{key:1,step:1,name:"F",octave:6,realKey:77,realName:"F6"},{key:1,step:1,mark:"rise",name:"G",octave:6,realKey:78,realName:"Gb6"},{key:2,step:1,name:"G",octave:6,realKey:79,realName:"G6"},{key:2,step:1,mark:"rise",name:"A",octave:6,realKey:80,realName:"Ab6"},{key:3,step:1,name:"A",octave:6,realKey:81,realName:"A6"},{key:4,step:1,name:"B",octave:6,realKey:82,realName:"Bb6"},{key:4,step:1,mark:"rise",name:"B",octave:6,realKey:83,realName:"B6"},{key:5,step:1,name:"C",octave:7,realKey:84,realName:"C7"},{key:5,step:1,name:"D",mark:"rise",octave:7,realKey:85,realName:"Db7"},{key:6,step:1,name:"D",octave:7,realKey:86,realName:"D7"}],listD4:[{key:6,step:-1,mark:"rise",name:"C",octave:5,realKey:60,realName:"C5"},{key:7,step:-1,name:"D",octave:5,realKey:61,realName:"Db5"},{key:1,step:0,name:"D",octave:5,realKey:62,realName:"D5"},{key:1,step:0,mark:"rise",name:"E",octave:5,realKey:63,realName:"Eb5"},{key:2,step:0,name:"E",octave:5,realKey:64,realName:"E5"},{key:2,step:0,mark:"rise",name:"F",octave:5,realKey:65,realName:"F5"},{key:3,step:0,name:"G",octave:5,realKey:66,realName:"Gb5"},{key:4,step:0,name:"G",octave:5,realKey:67,realName:"G5"},{key:4,step:0,mark:"rise",name:"A",octave:5,realKey:68,realName:"Ab5"},{key:5,step:0,name:"A",octave:5,realKey:69,realName:"A5"},{key:5,step:0,mark:"rise",name:"B",octave:5,realKey:70,realName:"Bb5"},{key:6,step:0,name:"B",octave:5,realKey:71,realName:"B5"},{key:6,step:0,mark:"rise",name:"C",octave:6,realKey:72,realName:"C6"},{key:7,step:0,name:"D",octave:6,realKey:73,realName:"Db6"},{key:1,step:1,name:"D",octave:6,realKey:74,realName:"D6"},{key:1,step:1,mark:"rise",name:"E",octave:6,realKey:75,realName:"Eb6"},{key:2,step:1,name:"E",octave:6,realKey:76,realName:"E6"},{key:2,step:1,mark:"rise",name:"F",octave:6,realKey:77,realName:"F6"},{key:3,step:1,name:"G",octave:6,realKey:78,realName:"Gb6"},{key:4,step:1,name:"G",octave:6,realKey:79,realName:"G6"},{key:4,step:1,mark:"rise",name:"A",octave:6,realKey:80,realName:"Ab6"},{key:5,step:1,name:"A",octave:6,realKey:81,realName:"A6"},{key:5,step:1,mark:"rise",name:"B",octave:6,realKey:82,realName:"Bb6"},{key:6,step:1,name:"B",octave:6,realKey:83,realName:"B6"},{key:6,step:1,mark:"rise",name:"C",octave:7,realKey:84,realName:"C7"},{key:7,step:1,name:"D",octave:7,realKey:85,realName:"Db7"},{key:1,step:2,name:"D",octave:7,realKey:86,realName:"D7"}],listG4:[{key:4,step:-1,name:"C",octave:5,realKey:60,realName:"C5"},{key:4,step:-1,mark:"rise",name:"D",octave:5,realKey:61,realName:"Db5"},{key:5,step:-1,name:"D",octave:5,realKey:62,realName:"D5"},{key:5,step:-1,mark:"rise",name:"E",octave:5,realKey:63,realName:"Eb5"},{key:6,step:-1,name:"E",octave:5,realKey:64,realName:"E5"},{key:6,step:-1,mark:"rise",name:"F",octave:5,realKey:65,realName:"F5"},{key:7,step:-1,name:"G",octave:5,realKey:66,realName:"Gb5"},{key:1,step:0,name:"G",octave:5,realKey:67,realName:"G5"},{key:1,step:0,mark:"rise",name:"A",octave:5,realKey:68,realName:"Ab5"},{key:2,step:0,name:"A",octave:5,realKey:69,realName:"A5"},{key:2,step:0,mark:"rise",name:"B",octave:5,realKey:70,realName:"Bb5"},{key:3,step:0,name:"B",octave:5,realKey:71,realName:"B5"},{key:4,step:0,name:"C",octave:6,realKey:72,realName:"C6"},{key:4,step:0,mark:"rise",name:"D",octave:6,realKey:73,realName:"Db6"},{key:5,step:0,name:"D",octave:6,realKey:74,realName:"D6"},{key:5,step:0,mark:"rise",name:"E",octave:6,realKey:75,realName:"Eb6"},{key:6,step:0,name:"E",octave:6,realKey:76,realName:"E6"},{key:6,step:0,mark:"rise",name:"F",octave:6,realKey:77,realName:"F6"},{key:7,step:0,name:"G",octave:6,realKey:78,realName:"Gb6"},{key:1,step:1,name:"G",octave:6,realKey:79,realName:"G6"},{key:1,step:1,mark:"rise",name:"A",octave:6,realKey:80,realName:"Ab6"},{key:2,step:1,name:"A",octave:6,realKey:81,realName:"A6"},{key:2,step:1,mark:"rise",name:"B",octave:6,realKey:82,realName:"Bb6"},{key:3,step:1,name:"B",octave:6,realKey:83,realName:"B6"},{key:4,step:1,name:"C",octave:7,realKey:84,realName:"C7"},{key:4,step:1,name:"D",mark:"rise",octave:7,realKey:85,realName:"Db7"},{key:5,step:1,name:"D",octave:7,realKey:86,realName:"D7"}]},ocarina:{tips:[{key:0,name:"嘴型",octave:0,step:0,realKey:0,realName:`以嘴唇轻轻含住吹口,不可含太深,以免盖住出气孔。 吹气方式宜以丹田之力(腹腔)稳定送出,一可避免太多口水,二可产生振音效果,让笛韵更为悦耳。`},{key:0,name:"长音",octave:0,step:0,realKey:0,realName:`长音的吹奏,要求音量平稳,不可忽大忽小,音与音之间,要流畅的连接,不可断断续续。 短音与重音需运用“踢舌”的技巧,将舌尖抵住上腭牙齿与牙龈的相接处,于吹气时瞬间将舌头缩回,这样的声音干净有力,听起来有活泼欢乐的感觉。`},{key:0,name:"滑音",octave:0,step:0,realKey:0,realName:"开合气孔的方式,一般是直接提高手指,音阶瞬间转换,另一种方式是将手指向陶笛外侧慢慢滑开,如此可以产生优美的滑音。"},{key:0,name:"圆滑音",octave:0,step:0,realKey:0,realName:"在两个以上不同高的音符之间加上“”记号,此记号成为圆滑线,它的吹法是用一口气连接的吹完整串音符,中间气不间断,注意第一个音仍要踢舌!"},{key:0,name:"气震音",octave:0,step:0,realKey:0,realName:"气震音是指在吹奏中用气流的变化来让发出的音发生波动,产生颤抖的感觉,所以又称气颤音,靠腹部控制,又叫腹震音。"},{key:0,name:"呼吸方法",octave:0,step:0,realKey:0,realName:"使用胸腹式呼吸法是一种比较科学的呼吸方法,大致分为两个步骤,吸气速度要快,胸腹要做到联合动作,让胸腹快速吸到更多的气,也可以用口协助吸气。"}],tones:[{key:1,name:"C",octave:5,step:0,realKey:0,realName:""},{key:1,name:"C",octave:5,step:0,mark:"rise",realKey:0,realName:"Db5"},{key:2,name:"D",octave:5,step:0,realKey:0,realName:"D5"},{key:2,name:"D",octave:5,step:0,mark:"rise",realKey:0,realName:"Eb5"},{key:3,name:"E",octave:5,step:0,realKey:0,realName:"E5"},{key:4,name:"F",octave:5,step:0,realKey:0,realName:"F5"},{key:4,name:"F",octave:5,step:0,mark:"rise",realKey:0,realName:"Gb5"},{key:5,name:"G",octave:5,step:0,realKey:0,realName:"G5"},{key:5,name:"G",octave:5,step:0,mark:"rise",realKey:0,realName:"Ab5"},{key:6,name:"A",octave:5,step:0,realKey:0,realName:"A5"},{key:6,name:"A",octave:5,step:0,mark:"rise",realKey:0,realName:"Bb5"},{key:7,name:"B",octave:5,step:0,realKey:0,realName:"B5"}],list:[{key:6,name:"A",octave:4,step:-1,realKey:57,realName:"A4"},{key:7,name:"B",octave:4,step:-1,realKey:58,mark:"fall",realName:"Bb4"},{key:7,name:"B",octave:4,step:-1,realKey:59,realName:"B4"},{key:1,name:"C",octave:5,step:0,realKey:60,realName:"C5"},{key:2,name:"D",octave:5,step:0,realKey:61,mark:"fall",realName:"Db5"},{key:2,name:"D",octave:5,step:0,realKey:62,realName:"D5"},{key:3,name:"E",octave:5,step:0,realKey:63,mark:"fall",realName:"Eb5"},{key:3,name:"E",octave:5,step:0,realKey:64,realName:"E5"},{key:4,name:"F",octave:5,step:0,realKey:65,realName:"F5"},{key:5,name:"G",octave:5,step:0,realKey:66,mark:"fall",realName:"Gb5"},{key:5,name:"G",octave:5,step:0,realKey:67,realName:"G5"},{key:6,name:"A",octave:5,step:0,realKey:68,mark:"fall",realName:"Ab5"},{key:6,name:"A",octave:5,step:0,realKey:69,realName:"A5"},{key:7,name:"B",octave:5,step:0,realKey:70,mark:"fall",realName:"Bb5"},{key:7,name:"B",octave:5,step:0,realKey:71,realName:"B5"},{key:1,name:"C",octave:6,step:1,realKey:72,realName:"C6"},{key:2,name:"D",octave:6,step:1,realKey:73,mark:"fall",realName:"Db6"},{key:2,name:"D",octave:6,step:1,realKey:74,realName:"D6"},{key:3,name:"E",octave:6,step:1,realKey:75,mark:"fall",realName:"Eb6"},{key:3,name:"E",octave:6,step:1,realKey:76,realName:"E6"},{key:4,name:"F",octave:6,step:1,realKey:77,realName:"F6"}],listDb5:[{key:5,step:-1,mark:"rise",name:"A",octave:4,realKey:57,realName:"A4"},{key:6,step:-1,name:"B",octave:4,realKey:58,realName:"Bb4"},{key:6,step:-1,mark:"rise",name:"B",octave:4,realKey:59,realName:"B4"},{key:7,step:-1,name:"C",octave:5,realKey:60,realName:"C5"},{key:1,step:0,name:"D",octave:5,realKey:61,realName:"Db5"},{key:1,step:0,mark:"rise",name:"D",octave:5,realKey:62,realName:"D5"},{key:2,step:0,name:"E",octave:5,realKey:63,realName:"Eb5"},{key:2,step:0,mark:"rise",name:"E",octave:5,realKey:64,realName:"E5"},{key:3,step:0,name:"F",octave:5,realKey:65,realName:"F5"},{key:4,step:0,name:"G",octave:5,realKey:66,realName:"Gb5"},{key:4,step:0,mark:"rise",name:"G",octave:5,realKey:67,realName:"G5"},{key:5,step:0,name:"A",octave:5,realKey:68,realName:"Ab5"},{key:5,step:0,mark:"rise",name:"A",octave:5,realKey:69,realName:"A5"},{key:6,step:0,name:"B",octave:5,realKey:70,realName:"Bb5"},{key:6,step:0,mark:"rise",name:"B",octave:5,realKey:71,realName:"B5"},{key:7,step:0,name:"C",octave:6,realKey:72,realName:"C6"},{key:1,step:1,name:"D",octave:6,realKey:73,realName:"Db6"},{key:1,step:1,mark:"rise",name:"D",octave:6,realKey:74,realName:"D6"},{key:2,step:1,name:"E",octave:6,realKey:75,realName:"Eb6"},{key:2,step:1,mark:"rise",name:"E",octave:6,realKey:76,realName:"E6"},{key:3,step:1,name:"F",octave:6,realKey:77,realName:"F6"}],listD5:[{key:5,step:-1,name:"A",octave:4,realKey:57,realName:"A4"},{key:5,step:-1,mark:"rise",name:"B",octave:4,realKey:58,realName:"Bb4"},{key:6,step:-1,name:"B",octave:4,realKey:59,realName:"B4"},{key:6,step:-1,mark:"rise",name:"C",octave:5,realKey:60,realName:"C5"},{key:7,step:-1,name:"D",octave:5,realKey:61,realName:"Db5"},{key:1,step:0,name:"D",octave:5,realKey:62,realName:"D5"},{key:1,step:0,mark:"rise",name:"E",octave:5,realKey:63,realName:"Eb5"},{key:2,step:0,name:"E",octave:5,realKey:64,realName:"E5"},{key:2,step:0,mark:"rise",name:"F",octave:5,realKey:65,realName:"F5"},{key:3,step:0,name:"G",octave:5,realKey:66,realName:"Gb5"},{key:4,step:0,name:"G",octave:5,realKey:67,realName:"G5"},{key:4,step:0,mark:"rise",name:"A",octave:5,realKey:68,realName:"Ab5"},{key:5,step:0,name:"A",octave:5,realKey:69,realName:"A5"},{key:5,step:0,mark:"rise",name:"B",octave:5,realKey:70,realName:"Bb5"},{key:6,step:0,name:"B",octave:5,realKey:71,realName:"B5"},{key:6,step:0,mark:"rise",name:"C",octave:6,realKey:72,realName:"C6"},{key:7,step:0,name:"D",octave:6,realKey:73,realName:"Db6"},{key:1,step:1,name:"D",octave:6,realKey:74,realName:"D6"},{key:1,step:1,mark:"rise",name:"E",octave:6,realKey:75,realName:"Eb6"},{key:2,step:1,name:"E",octave:6,realKey:76,realName:"E6"},{key:2,step:1,mark:"rise",name:"F",octave:6,realKey:77,realName:"F6"}],listEb5:[{key:4,step:-1,mark:"rise",name:"A",octave:4,realKey:57,realName:"A4"},{key:5,step:-1,name:"B",octave:4,realKey:58,realName:"Bb4"},{key:5,step:-1,mark:"rise",name:"B",octave:4,realKey:59,realName:"B4"},{key:6,step:-1,name:"C",octave:5,realKey:60,realName:"C5"},{key:6,step:-1,mark:"rise",name:"D",octave:5,realKey:61,realName:"Db5"},{key:7,step:-1,name:"D",octave:5,realKey:62,realName:"D5"},{key:1,step:0,name:"E",octave:5,realKey:63,realName:"Eb5"},{key:1,step:0,mark:"rise",name:"E",octave:5,realKey:64,realName:"E5"},{key:2,step:0,name:"F",octave:5,realKey:65,realName:"F5"},{key:2,step:0,mark:"rise",name:"G",octave:5,realKey:66,realName:"Gb5"},{key:3,step:0,name:"G",octave:5,realKey:67,realName:"G5"},{key:4,step:0,name:"A",octave:5,realKey:68,realName:"Ab5"},{key:4,step:0,mark:"rise",name:"A",octave:5,realKey:69,realName:"A5"},{key:5,step:0,name:"B",octave:5,realKey:70,realName:"Bb5"},{key:5,step:0,mark:"rise",name:"B",octave:5,realKey:71,realName:"B5"},{key:6,step:0,name:"C",octave:6,realKey:72,realName:"C6"},{key:6,step:0,mark:"rise",name:"D",octave:6,realKey:73,realName:"Db6"},{key:7,step:0,name:"D",octave:6,realKey:74,realName:"D6"},{key:1,step:1,name:"E",octave:6,realKey:75,realName:"Eb6"},{key:1,step:1,mark:"rise",name:"E",octave:6,realKey:76,realName:"E6"},{key:2,step:1,name:"F",octave:6,realKey:77,realName:"F6"}],listE5:[{key:4,step:-1,name:"A",octave:4,realKey:57,realName:"A4"},{key:4,step:-1,mark:"rise",name:"B",octave:4,realKey:58,realName:"Bb4"},{key:5,step:-1,name:"B",octave:4,realKey:59,realName:"B4"},{key:5,step:-1,mark:"rise",name:"C",octave:5,realKey:60,realName:"C5"},{key:6,step:-1,name:"D",octave:5,realKey:61,realName:"Db5"},{key:6,step:-1,mark:"rise",name:"D",octave:5,realKey:62,realName:"D5"},{key:7,step:-1,name:"E",octave:5,realKey:63,realName:"Eb5"},{key:1,step:0,name:"E",octave:5,realKey:64,realName:"E5"},{key:1,step:0,mark:"rise",name:"F",octave:5,realKey:65,realName:"F5"},{key:2,step:0,name:"G",octave:5,realKey:66,realName:"Gb5"},{key:2,step:0,mark:"rise",name:"G",octave:5,realKey:67,realName:"G5"},{key:3,step:0,name:"A",octave:5,realKey:68,realName:"Ab5"},{key:4,step:0,name:"A",octave:5,realKey:69,realName:"A5"},{key:4,step:0,mark:"rise",name:"B",octave:5,realKey:70,realName:"Bb5"},{key:5,step:0,name:"B",octave:5,realKey:71,realName:"B5"},{key:5,step:0,mark:"rise",name:"C",octave:6,realKey:72,realName:"C6"},{key:6,step:0,name:"D",octave:6,realKey:73,realName:"Db6"},{key:6,step:0,mark:"rise",name:"D",octave:6,realKey:74,realName:"D6"},{key:7,step:0,name:"E",octave:6,realKey:75,realName:"Eb6"},{key:1,step:1,name:"E",octave:6,realKey:76,realName:"E6"},{key:1,step:1,mark:"rise",name:"F",octave:6,realKey:77,realName:"F6"}],listF5:[{key:3,step:-1,name:"A",octave:4,realKey:57,realName:"A4"},{key:4,step:-1,name:"B",octave:4,realKey:58,realName:"Bb4"},{key:4,step:-1,mark:"rise",name:"B",octave:4,realKey:59,realName:"B4"},{key:5,step:-1,name:"C",octave:5,realKey:60,realName:"C5"},{key:5,step:-1,mark:"rise",name:"D",octave:5,realKey:61,realName:"Db5"},{key:6,step:-1,name:"D",octave:5,realKey:62,realName:"D5"},{key:6,step:-1,mark:"rise",name:"E",octave:5,realKey:63,realName:"Eb5"},{key:7,step:-1,name:"E",octave:5,realKey:64,realName:"E5"},{key:1,step:0,name:"F",octave:5,realKey:65,realName:"F5"},{key:1,step:0,mark:"rise",name:"G",octave:5,realKey:66,realName:"Gb5"},{key:2,step:0,name:"G",octave:5,realKey:67,realName:"G5"},{key:2,step:0,mark:"rise",name:"A",octave:5,realKey:68,realName:"Ab5"},{key:3,step:0,name:"A",octave:5,realKey:69,realName:"A5"},{key:4,step:0,name:"B",octave:5,realKey:70,realName:"Bb5"},{key:4,step:0,mark:"rise",name:"B",octave:5,realKey:71,realName:"B5"},{key:5,step:0,name:"C",octave:6,realKey:72,realName:"C6"},{key:5,step:0,mark:"rise",name:"D",octave:6,realKey:73,realName:"Db6"},{key:6,step:0,name:"D",octave:6,realKey:74,realName:"D6"},{key:6,step:0,mark:"rise",name:"E",octave:6,realKey:75,realName:"Eb6"},{key:7,step:0,name:"E",octave:6,realKey:76,realName:"E6"},{key:1,step:1,name:"F",octave:6,realKey:77,realName:"F6"}],listGb5:[{key:2,step:-1,mark:"rise",name:"A",octave:4,realKey:57,realName:"A4"},{key:3,step:-1,name:"B",octave:4,realKey:58,realName:"Bb4"},{key:4,step:-1,name:"B",octave:4,realKey:59,realName:"B4"},{key:4,step:-1,mark:"rise",name:"C",octave:5,realKey:60,realName:"C5"},{key:5,step:-1,name:"D",octave:5,realKey:61,realName:"Db5"},{key:5,step:-1,mark:"rise",name:"D",octave:5,realKey:62,realName:"D5"},{key:6,step:-1,name:"E",octave:5,realKey:63,realName:"Eb5"},{key:6,step:-1,mark:"rise",name:"E",octave:5,realKey:64,realName:"E5"},{key:7,step:-1,name:"F",octave:5,realKey:65,realName:"F5"},{key:1,step:0,name:"G",octave:5,realKey:66,realName:"Gb5"},{key:1,step:0,mark:"rise",name:"G",octave:5,realKey:67,realName:"G5"},{key:2,step:0,name:"A",octave:5,realKey:68,realName:"Ab5"},{key:2,step:0,mark:"rise",name:"A",octave:5,realKey:69,realName:"A5"},{key:3,step:0,name:"B",octave:5,realKey:70,realName:"Bb5"},{key:4,step:0,name:"B",octave:5,realKey:71,realName:"B5"},{key:4,step:0,mark:"rise",name:"C",octave:6,realKey:72,realName:"C6"},{key:5,step:0,name:"D",octave:6,realKey:73,realName:"Db6"},{key:5,step:0,mark:"rise",name:"D",octave:6,realKey:74,realName:"D6"},{key:6,step:0,name:"E",octave:6,realKey:75,realName:"Eb6"},{key:6,step:0,mark:"rise",name:"E",octave:6,realKey:76,realName:"E6"},{key:7,step:0,name:"F",octave:6,realKey:77,realName:"F6"}],listG5:[{key:2,step:-1,name:"A",octave:4,realKey:57,realName:"A4"},{key:2,step:-1,mark:"rise",name:"B",octave:4,realKey:58,realName:"Bb4"},{key:3,step:-1,name:"B",octave:4,realKey:59,realName:"B4"},{key:4,step:-1,name:"C",octave:5,realKey:60,realName:"C5"},{key:4,step:-1,mark:"rise",name:"D",octave:5,realKey:61,realName:"Db5"},{key:5,step:-1,name:"D",octave:5,realKey:62,realName:"D5"},{key:5,step:-1,mark:"rise",name:"E",octave:5,realKey:63,realName:"Eb5"},{key:6,step:-1,name:"E",octave:5,realKey:64,realName:"E5"},{key:6,step:-1,mark:"rise",name:"F",octave:5,realKey:65,realName:"F5"},{key:7,step:-1,name:"G",octave:5,realKey:66,realName:"Gb5"},{key:1,step:0,name:"G",octave:5,realKey:67,realName:"G5"},{key:1,step:0,mark:"rise",name:"A",octave:5,realKey:68,realName:"Ab5"},{key:2,step:0,name:"A",octave:5,realKey:69,realName:"A5"},{key:2,step:0,mark:"rise",name:"B",octave:5,realKey:70,realName:"Bb5"},{key:3,step:0,name:"B",octave:5,realKey:71,realName:"B5"},{key:4,step:0,name:"C",octave:6,realKey:72,realName:"C6"},{key:4,step:0,mark:"rise",name:"D",octave:6,realKey:73,realName:"Db6"},{key:5,step:0,name:"D",octave:6,realKey:74,realName:"D6"},{key:5,step:0,mark:"rise",name:"E",octave:6,realKey:75,realName:"Eb6"},{key:6,step:0,name:"E",octave:6,realKey:76,realName:"E6"},{key:6,step:0,mark:"rise",name:"F",octave:6,realKey:77,realName:"F6"}],listAb5:[{key:1,step:-1,mark:"rise",name:"A",octave:4,realKey:57,realName:"A4"},{key:2,step:-1,name:"B",octave:4,realKey:58,realName:"Bb4"},{key:2,step:-1,mark:"rise",name:"B",octave:4,realKey:59,realName:"B4"},{key:3,step:-1,name:"C",octave:5,realKey:60,realName:"C5"},{key:4,step:-1,name:"D",octave:5,realKey:61,realName:"Db5"},{key:4,step:-1,mark:"rise",name:"D",octave:5,realKey:62,realName:"D5"},{key:5,step:-1,name:"E",octave:5,realKey:63,realName:"Eb5"},{key:5,step:-1,mark:"rise",name:"E",octave:5,realKey:64,realName:"E5"},{key:6,step:-1,name:"F",octave:5,realKey:65,realName:"F5"},{key:6,step:-1,mark:"rise",name:"G",octave:5,realKey:66,realName:"Gb5"},{key:7,step:-1,name:"G",octave:5,realKey:67,realName:"G5"},{key:1,step:0,name:"A",octave:5,realKey:68,realName:"Ab5"},{key:1,step:0,mark:"rise",name:"A",octave:5,realKey:69,realName:"A5"},{key:2,step:0,name:"B",octave:5,realKey:70,realName:"Bb5"},{key:2,step:0,mark:"rise",name:"B",octave:5,realKey:71,realName:"B5"},{key:3,step:0,name:"C",octave:6,realKey:72,realName:"C6"},{key:4,step:0,name:"D",octave:6,realKey:73,realName:"Db6"},{key:4,step:0,mark:"rise",name:"D",octave:6,realKey:74,realName:"D6"},{key:5,step:0,name:"E",octave:6,realKey:75,realName:"Eb6"},{key:5,step:0,mark:"rise",name:"E",octave:6,realKey:76,realName:"E6"},{key:6,step:0,name:"F",octave:6,realKey:77,realName:"F6"}],listA5:[{key:1,step:0,name:"A",octave:4,realKey:57,realName:"A4"},{key:1,step:0,mark:"rise",name:"B",octave:4,realKey:58,realName:"Bb4"},{key:2,step:0,name:"B",octave:4,realKey:59,realName:"B4"},{key:2,step:0,mark:"rise",name:"C",octave:5,realKey:60,realName:"C5"},{key:3,step:0,name:"D",octave:5,realKey:61,realName:"Db5"},{key:4,step:0,name:"D",octave:5,realKey:62,realName:"D5"},{key:4,step:0,mark:"rise",name:"E",octave:5,realKey:63,realName:"Eb5"},{key:5,step:0,name:"E",octave:5,realKey:64,realName:"E5"},{key:5,step:0,mark:"rise",name:"F",octave:5,realKey:65,realName:"F5"},{key:6,step:0,name:"G",octave:5,realKey:66,realName:"Gb5"},{key:6,step:0,mark:"rise",name:"G",octave:5,realKey:67,realName:"G5"},{key:7,step:0,name:"A",octave:5,realKey:68,realName:"Ab5"},{key:1,step:1,name:"A",octave:5,realKey:69,realName:"A5"},{key:1,step:1,mark:"rise",name:"B",octave:5,realKey:70,realName:"Bb5"},{key:2,step:1,name:"B",octave:5,realKey:71,realName:"B5"},{key:2,step:1,mark:"rise",name:"C",octave:6,realKey:72,realName:"C6"},{key:3,step:1,name:"D",octave:6,realKey:73,realName:"Db6"},{key:4,step:1,name:"D",octave:6,realKey:74,realName:"D6"},{key:4,step:1,mark:"rise",name:"E",octave:6,realKey:75,realName:"Eb6"},{key:5,step:1,name:"E",octave:6,realKey:76,realName:"E6"},{key:5,step:1,mark:"rise",name:"F",octave:6,realKey:77,realName:"F6"}],listBb5:[{key:7,step:-1,name:"A",octave:4,realKey:57,realName:"A4"},{key:1,step:0,name:"B",octave:4,realKey:58,realName:"Bb4"},{key:1,step:0,mark:"rise",name:"B",octave:4,realKey:59,realName:"B4"},{key:2,step:0,name:"C",octave:5,realKey:60,realName:"C5"},{key:2,step:0,mark:"rise",name:"D",octave:5,realKey:61,realName:"Db5"},{key:3,step:0,name:"D",octave:5,realKey:62,realName:"D5"},{key:4,step:0,name:"E",octave:5,realKey:63,realName:"Eb5"},{key:4,step:0,mark:"rise",name:"E",octave:5,realKey:64,realName:"E5"},{key:5,step:0,name:"F",octave:5,realKey:65,realName:"F5"},{key:5,step:0,mark:"rise",name:"G",octave:5,realKey:66,realName:"Gb5"},{key:6,step:0,name:"G",octave:5,realKey:67,realName:"G5"},{key:6,step:0,mark:"rise",name:"A",octave:5,realKey:68,realName:"Ab5"},{key:7,step:0,name:"A",octave:5,realKey:69,realName:"A5"},{key:1,step:1,name:"B",octave:5,realKey:70,realName:"Bb5"},{key:1,step:1,mark:"rise",name:"B",octave:5,realKey:71,realName:"B5"},{key:2,step:1,name:"C",octave:6,realKey:72,realName:"C6"},{key:2,step:1,mark:"rise",name:"D",octave:6,realKey:73,realName:"Db6"},{key:3,step:1,name:"D",octave:6,realKey:74,realName:"D6"},{key:4,step:1,name:"E",octave:6,realKey:75,realName:"Eb6"},{key:4,step:1,mark:"rise",name:"E",octave:6,realKey:76,realName:"E6"},{key:5,step:1,name:"F",octave:6,realKey:77,realName:"F6"}],listB5:[{key:6,step:-1,mark:"rise",name:"A",octave:4,realKey:57,realName:"A4"},{key:7,step:-1,name:"B",octave:4,realKey:58,realName:"Bb4"},{key:1,step:0,name:"B",octave:4,realKey:59,realName:"B4"},{key:1,step:0,mark:"rise",name:"C",octave:5,realKey:60,realName:"C5"},{key:2,step:0,name:"D",octave:5,realKey:61,realName:"Db5"},{key:2,step:0,mark:"rise",name:"D",octave:5,realKey:62,realName:"D5"},{key:3,step:0,name:"E",octave:5,realKey:63,realName:"Eb5"},{key:4,step:0,name:"E",octave:5,realKey:64,realName:"E5"},{key:4,step:0,mark:"rise",name:"F",octave:5,realKey:65,realName:"F5"},{key:5,step:0,name:"G",octave:5,realKey:66,realName:"Gb5"},{key:5,step:0,mark:"rise",name:"G",octave:5,realKey:67,realName:"G5"},{key:6,step:0,name:"A",octave:5,realKey:68,realName:"Ab5"},{key:6,step:0,name:"A",octave:5,realKey:69,realName:"A5"},{key:6,step:0,mark:"rise",name:"B",octave:5,realKey:70,realName:"Bb5"},{key:7,step:0,name:"B",octave:5,realKey:71,realName:"B5"},{key:1,step:1,name:"C",octave:6,realKey:72,realName:"C6"},{key:1,step:1,mark:"rise",name:"D",octave:6,realKey:73,realName:"Db6"},{key:2,step:1,name:"D",octave:6,realKey:74,realName:"D6"},{key:2,step:1,mark:"rise",name:"E",octave:6,realKey:75,realName:"Eb6"},{key:3,step:1,name:"E",octave:6,realKey:76,realName:"E6"},{key:4,step:1,name:"F",octave:6,realKey:77,realName:"F6"}]},whistling:{tips:[{key:0,name:"嘴型",octave:0,step:0,realKey:0,realName:`以嘴唇轻轻含住吹口,不可含太深,以免盖住出气孔。 吹气方式宜以丹田之力(腹腔)稳定送出,一可避免太多口水,二可产生振音效果,让笛韵更为悦耳。`},{key:0,name:"长音",octave:0,step:0,realKey:0,realName:`长音的吹奏,要求音量平稳,不可忽大忽小,音与音之间,要流畅的连接,不可断断续续。 短音与重音需运用“踢舌”的技巧,将舌尖抵住上腭牙齿与牙龈的相接处,于吹气时瞬间将舌头缩回,这样的声音干净有力,听起来有活泼欢乐的感觉。`},{key:0,name:"滑音",octave:0,step:0,realKey:0,realName:"开合气孔的方式,一般是直接提高手指,音阶瞬间转换,另一种方式是将手指向陶笛外侧慢慢滑开,如此可以产生优美的滑音。"},{key:0,name:"圆滑音",octave:0,step:0,realKey:0,realName:"在两个以上不同高的音符之间加上“”记号,此记号成为圆滑线,它的吹法是用一口气连接的吹完整串音符,中间气不间断,注意第一个音仍要踢舌!"},{key:0,name:"气震音",octave:0,step:0,realKey:0,realName:"气震音是指在吹奏中用气流的变化来让发出的音发生波动,产生颤抖的感觉,所以又称气颤音,靠腹部控制,又叫腹震音。"},{key:0,name:"呼吸方法",octave:0,step:0,realKey:0,realName:"使用胸腹式呼吸法是一种比较科学的呼吸方法,大致分为两个步骤,吸气速度要快,胸腹要做到联合动作,让胸腹快速吸到更多的气,也可以用口协助吸气。"}],tones:[{key:1,name:"C",octave:5,step:0,realKey:0,realName:""},{key:1,name:"C",octave:5,step:0,mark:"rise",realKey:0,realName:"Db5"},{key:2,name:"D",octave:5,step:0,realKey:0,realName:"D5"},{key:2,name:"D",octave:5,step:0,mark:"rise",realKey:0,realName:"Eb5"},{key:3,name:"E",octave:5,step:0,realKey:0,realName:"E5"},{key:4,name:"F",octave:5,step:0,realKey:0,realName:"F5"},{key:4,name:"F",octave:5,step:0,mark:"rise",realKey:0,realName:"Gb5"},{key:5,name:"G",octave:5,step:0,realKey:0,realName:"G5"},{key:5,name:"G",octave:5,step:0,mark:"rise",realKey:0,realName:"Ab5"},{key:6,name:"A",octave:5,step:0,realKey:0,realName:"A5"},{key:6,name:"A",octave:5,step:0,mark:"rise",realKey:0,realName:"Bb5"},{key:7,name:"B",octave:5,step:0,realKey:0,realName:"B5"}],list:[{key:6,name:"A",octave:4,step:-1,realKey:57,realName:"A4"},{key:7,name:"B",octave:4,step:-1,realKey:58,mark:"fall",realName:"Bb4"},{key:7,name:"B",octave:4,step:-1,realKey:59,realName:"B4"},{key:1,name:"C",octave:5,step:0,realKey:60,realName:"C5"},{key:2,name:"D",octave:5,step:0,realKey:61,mark:"fall",realName:"Db5"},{key:2,name:"D",octave:5,step:0,realKey:62,realName:"D5"},{key:3,name:"E",octave:5,step:0,realKey:63,mark:"fall",realName:"Eb5"},{key:3,name:"E",octave:5,step:0,realKey:64,realName:"E5"},{key:4,name:"F",octave:5,step:0,realKey:65,realName:"F5"},{key:5,name:"G",octave:5,step:0,realKey:66,mark:"fall",realName:"Gb5"},{key:5,name:"G",octave:5,step:0,realKey:67,realName:"G5"},{key:6,name:"A",octave:5,step:0,realKey:68,mark:"fall",realName:"Ab5"},{key:6,name:"A",octave:5,step:0,realKey:69,realName:"A5"},{key:7,name:"B",octave:5,step:0,realKey:70,mark:"fall",realName:"Bb5"},{key:7,name:"B",octave:5,step:0,realKey:71,realName:"B5"},{key:1,name:"C",octave:6,step:1,realKey:72,realName:"C6"},{key:2,name:"D",octave:6,step:1,realKey:73,mark:"fall",realName:"Db6"},{key:2,name:"D",octave:6,step:1,realKey:74,realName:"D6"},{key:3,name:"E",octave:6,step:1,realKey:75,mark:"fall",realName:"Eb6"},{key:3,name:"E",octave:6,step:1,realKey:76,realName:"E6"},{key:4,name:"F",octave:6,step:1,realKey:77,realName:"F6"}],listDb5:[{key:5,step:-1,mark:"rise",name:"A",octave:4,realKey:57,realName:"A4"},{key:6,step:-1,name:"B",octave:4,realKey:58,realName:"Bb4"},{key:6,step:-1,mark:"rise",name:"B",octave:4,realKey:59,realName:"B4"},{key:7,step:-1,name:"C",octave:5,realKey:60,realName:"C5"},{key:1,step:0,name:"D",octave:5,realKey:61,realName:"Db5"},{key:1,step:0,mark:"rise",name:"D",octave:5,realKey:62,realName:"D5"},{key:2,step:0,name:"E",octave:5,realKey:63,realName:"Eb5"},{key:2,step:0,mark:"rise",name:"E",octave:5,realKey:64,realName:"E5"},{key:3,step:0,name:"F",octave:5,realKey:65,realName:"F5"},{key:4,step:0,name:"G",octave:5,realKey:66,realName:"Gb5"},{key:4,step:0,mark:"rise",name:"G",octave:5,realKey:67,realName:"G5"},{key:5,step:0,name:"A",octave:5,realKey:68,realName:"Ab5"},{key:5,step:0,mark:"rise",name:"A",octave:5,realKey:69,realName:"A5"},{key:6,step:0,name:"B",octave:5,realKey:70,realName:"Bb5"},{key:6,step:0,mark:"rise",name:"B",octave:5,realKey:71,realName:"B5"},{key:7,step:0,name:"C",octave:6,realKey:72,realName:"C6"},{key:1,step:1,name:"D",octave:6,realKey:73,realName:"Db6"},{key:1,step:1,mark:"rise",name:"D",octave:6,realKey:74,realName:"D6"},{key:2,step:1,name:"E",octave:6,realKey:75,realName:"Eb6"},{key:2,step:1,mark:"rise",name:"E",octave:6,realKey:76,realName:"E6"},{key:3,step:1,name:"F",octave:6,realKey:77,realName:"F6"}],listD5:[{key:5,step:-1,name:"A",octave:4,realKey:57,realName:"A4"},{key:5,step:-1,mark:"rise",name:"B",octave:4,realKey:58,realName:"Bb4"},{key:6,step:-1,name:"B",octave:4,realKey:59,realName:"B4"},{key:6,step:-1,mark:"rise",name:"C",octave:5,realKey:60,realName:"C5"},{key:7,step:-1,name:"D",octave:5,realKey:61,realName:"Db5"},{key:1,step:0,name:"D",octave:5,realKey:62,realName:"D5"},{key:1,step:0,mark:"rise",name:"E",octave:5,realKey:63,realName:"Eb5"},{key:2,step:0,name:"E",octave:5,realKey:64,realName:"E5"},{key:2,step:0,mark:"rise",name:"F",octave:5,realKey:65,realName:"F5"},{key:3,step:0,name:"G",octave:5,realKey:66,realName:"Gb5"},{key:4,step:0,name:"G",octave:5,realKey:67,realName:"G5"},{key:4,step:0,mark:"rise",name:"A",octave:5,realKey:68,realName:"Ab5"},{key:5,step:0,name:"A",octave:5,realKey:69,realName:"A5"},{key:5,step:0,mark:"rise",name:"B",octave:5,realKey:70,realName:"Bb5"},{key:6,step:0,name:"B",octave:5,realKey:71,realName:"B5"},{key:6,step:0,mark:"rise",name:"C",octave:6,realKey:72,realName:"C6"},{key:7,step:0,name:"D",octave:6,realKey:73,realName:"Db6"},{key:1,step:1,name:"D",octave:6,realKey:74,realName:"D6"},{key:1,step:1,mark:"rise",name:"E",octave:6,realKey:75,realName:"Eb6"},{key:2,step:1,name:"E",octave:6,realKey:76,realName:"E6"},{key:2,step:1,mark:"rise",name:"F",octave:6,realKey:77,realName:"F6"}],listEb5:[{key:4,step:-1,mark:"rise",name:"A",octave:4,realKey:57,realName:"A4"},{key:5,step:-1,name:"B",octave:4,realKey:58,realName:"Bb4"},{key:5,step:-1,mark:"rise",name:"B",octave:4,realKey:59,realName:"B4"},{key:6,step:-1,name:"C",octave:5,realKey:60,realName:"C5"},{key:6,step:-1,mark:"rise",name:"D",octave:5,realKey:61,realName:"Db5"},{key:7,step:-1,name:"D",octave:5,realKey:62,realName:"D5"},{key:1,step:0,name:"E",octave:5,realKey:63,realName:"Eb5"},{key:1,step:0,mark:"rise",name:"E",octave:5,realKey:64,realName:"E5"},{key:2,step:0,name:"F",octave:5,realKey:65,realName:"F5"},{key:2,step:0,mark:"rise",name:"G",octave:5,realKey:66,realName:"Gb5"},{key:3,step:0,name:"G",octave:5,realKey:67,realName:"G5"},{key:4,step:0,name:"A",octave:5,realKey:68,realName:"Ab5"},{key:4,step:0,mark:"rise",name:"A",octave:5,realKey:69,realName:"A5"},{key:5,step:0,name:"B",octave:5,realKey:70,realName:"Bb5"},{key:5,step:0,mark:"rise",name:"B",octave:5,realKey:71,realName:"B5"},{key:6,step:0,name:"C",octave:6,realKey:72,realName:"C6"},{key:6,step:0,mark:"rise",name:"D",octave:6,realKey:73,realName:"Db6"},{key:7,step:0,name:"D",octave:6,realKey:74,realName:"D6"},{key:1,step:1,name:"E",octave:6,realKey:75,realName:"Eb6"},{key:1,step:1,mark:"rise",name:"E",octave:6,realKey:76,realName:"E6"},{key:2,step:1,name:"F",octave:6,realKey:77,realName:"F6"}],listE5:[{key:4,step:-1,name:"A",octave:4,realKey:57,realName:"A4"},{key:4,step:-1,mark:"rise",name:"B",octave:4,realKey:58,realName:"Bb4"},{key:5,step:-1,name:"B",octave:4,realKey:59,realName:"B4"},{key:5,step:-1,mark:"rise",name:"C",octave:5,realKey:60,realName:"C5"},{key:6,step:-1,name:"D",octave:5,realKey:61,realName:"Db5"},{key:6,step:-1,mark:"rise",name:"D",octave:5,realKey:62,realName:"D5"},{key:7,step:-1,name:"E",octave:5,realKey:63,realName:"Eb5"},{key:1,step:0,name:"E",octave:5,realKey:64,realName:"E5"},{key:1,step:0,mark:"rise",name:"F",octave:5,realKey:65,realName:"F5"},{key:2,step:0,name:"G",octave:5,realKey:66,realName:"Gb5"},{key:2,step:0,mark:"rise",name:"G",octave:5,realKey:67,realName:"G5"},{key:3,step:0,name:"A",octave:5,realKey:68,realName:"Ab5"},{key:4,step:0,name:"A",octave:5,realKey:69,realName:"A5"},{key:4,step:0,mark:"rise",name:"B",octave:5,realKey:70,realName:"Bb5"},{key:5,step:0,name:"B",octave:5,realKey:71,realName:"B5"},{key:5,step:0,mark:"rise",name:"C",octave:6,realKey:72,realName:"C6"},{key:6,step:0,name:"D",octave:6,realKey:73,realName:"Db6"},{key:6,step:0,mark:"rise",name:"D",octave:6,realKey:74,realName:"D6"},{key:7,step:0,name:"E",octave:6,realKey:75,realName:"Eb6"},{key:1,step:1,name:"E",octave:6,realKey:76,realName:"E6"},{key:1,step:1,mark:"rise",name:"F",octave:6,realKey:77,realName:"F6"}],listF5:[{key:3,step:-1,name:"A",octave:4,realKey:57,realName:"A4"},{key:4,step:-1,name:"B",octave:4,realKey:58,realName:"Bb4"},{key:4,step:-1,mark:"rise",name:"B",octave:4,realKey:59,realName:"B4"},{key:5,step:-1,name:"C",octave:5,realKey:60,realName:"C5"},{key:5,step:-1,mark:"rise",name:"D",octave:5,realKey:61,realName:"Db5"},{key:6,step:-1,name:"D",octave:5,realKey:62,realName:"D5"},{key:6,step:-1,mark:"rise",name:"E",octave:5,realKey:63,realName:"Eb5"},{key:7,step:-1,name:"E",octave:5,realKey:64,realName:"E5"},{key:1,step:0,name:"F",octave:5,realKey:65,realName:"F5"},{key:1,step:0,mark:"rise",name:"G",octave:5,realKey:66,realName:"Gb5"},{key:2,step:0,name:"G",octave:5,realKey:67,realName:"G5"},{key:2,step:0,mark:"rise",name:"A",octave:5,realKey:68,realName:"Ab5"},{key:3,step:0,name:"A",octave:5,realKey:69,realName:"A5"},{key:4,step:0,name:"B",octave:5,realKey:70,realName:"Bb5"},{key:4,step:0,mark:"rise",name:"B",octave:5,realKey:71,realName:"B5"},{key:5,step:0,name:"C",octave:6,realKey:72,realName:"C6"},{key:5,step:0,mark:"rise",name:"D",octave:6,realKey:73,realName:"Db6"},{key:6,step:0,name:"D",octave:6,realKey:74,realName:"D6"},{key:6,step:0,mark:"rise",name:"E",octave:6,realKey:75,realName:"Eb6"},{key:7,step:0,name:"E",octave:6,realKey:76,realName:"E6"},{key:1,step:1,name:"F",octave:6,realKey:77,realName:"F6"}],listGb5:[{key:2,step:-1,mark:"rise",name:"A",octave:4,realKey:57,realName:"A4"},{key:3,step:-1,name:"B",octave:4,realKey:58,realName:"Bb4"},{key:4,step:-1,name:"B",octave:4,realKey:59,realName:"B4"},{key:4,step:-1,mark:"rise",name:"C",octave:5,realKey:60,realName:"C5"},{key:5,step:-1,name:"D",octave:5,realKey:61,realName:"Db5"},{key:5,step:-1,mark:"rise",name:"D",octave:5,realKey:62,realName:"D5"},{key:6,step:-1,name:"E",octave:5,realKey:63,realName:"Eb5"},{key:6,step:-1,mark:"rise",name:"E",octave:5,realKey:64,realName:"E5"},{key:7,step:-1,name:"F",octave:5,realKey:65,realName:"F5"},{key:1,step:0,name:"G",octave:5,realKey:66,realName:"Gb5"},{key:1,step:0,mark:"rise",name:"G",octave:5,realKey:67,realName:"G5"},{key:2,step:0,name:"A",octave:5,realKey:68,realName:"Ab5"},{key:2,step:0,mark:"rise",name:"A",octave:5,realKey:69,realName:"A5"},{key:3,step:0,name:"B",octave:5,realKey:70,realName:"Bb5"},{key:4,step:0,name:"B",octave:5,realKey:71,realName:"B5"},{key:4,step:0,mark:"rise",name:"C",octave:6,realKey:72,realName:"C6"},{key:5,step:0,name:"D",octave:6,realKey:73,realName:"Db6"},{key:5,step:0,mark:"rise",name:"D",octave:6,realKey:74,realName:"D6"},{key:6,step:0,name:"E",octave:6,realKey:75,realName:"Eb6"},{key:6,step:0,mark:"rise",name:"E",octave:6,realKey:76,realName:"E6"},{key:7,step:0,name:"F",octave:6,realKey:77,realName:"F6"}],listG5:[{key:2,step:-1,name:"A",octave:4,realKey:57,realName:"A4"},{key:2,step:-1,mark:"rise",name:"B",octave:4,realKey:58,realName:"Bb4"},{key:3,step:-1,name:"B",octave:4,realKey:59,realName:"B4"},{key:4,step:-1,name:"C",octave:5,realKey:60,realName:"C5"},{key:4,step:-1,mark:"rise",name:"D",octave:5,realKey:61,realName:"Db5"},{key:5,step:-1,name:"D",octave:5,realKey:62,realName:"D5"},{key:5,step:-1,mark:"rise",name:"E",octave:5,realKey:63,realName:"Eb5"},{key:6,step:-1,name:"E",octave:5,realKey:64,realName:"E5"},{key:6,step:-1,mark:"rise",name:"F",octave:5,realKey:65,realName:"F5"},{key:7,step:-1,name:"G",octave:5,realKey:66,realName:"Gb5"},{key:1,step:0,name:"G",octave:5,realKey:67,realName:"G5"},{key:1,step:0,mark:"rise",name:"A",octave:5,realKey:68,realName:"Ab5"},{key:2,step:0,name:"A",octave:5,realKey:69,realName:"A5"},{key:2,step:0,mark:"rise",name:"B",octave:5,realKey:70,realName:"Bb5"},{key:3,step:0,name:"B",octave:5,realKey:71,realName:"B5"},{key:4,step:0,name:"C",octave:6,realKey:72,realName:"C6"},{key:4,step:0,mark:"rise",name:"D",octave:6,realKey:73,realName:"Db6"},{key:5,step:0,name:"D",octave:6,realKey:74,realName:"D6"},{key:5,step:0,mark:"rise",name:"E",octave:6,realKey:75,realName:"Eb6"},{key:6,step:0,name:"E",octave:6,realKey:76,realName:"E6"},{key:6,step:0,mark:"rise",name:"F",octave:6,realKey:77,realName:"F6"}],listAb5:[{key:1,step:-1,mark:"rise",name:"A",octave:4,realKey:57,realName:"A4"},{key:2,step:-1,name:"B",octave:4,realKey:58,realName:"Bb4"},{key:2,step:-1,mark:"rise",name:"B",octave:4,realKey:59,realName:"B4"},{key:3,step:-1,name:"C",octave:5,realKey:60,realName:"C5"},{key:4,step:-1,name:"D",octave:5,realKey:61,realName:"Db5"},{key:4,step:-1,mark:"rise",name:"D",octave:5,realKey:62,realName:"D5"},{key:5,step:-1,name:"E",octave:5,realKey:63,realName:"Eb5"},{key:5,step:-1,mark:"rise",name:"E",octave:5,realKey:64,realName:"E5"},{key:6,step:-1,name:"F",octave:5,realKey:65,realName:"F5"},{key:6,step:-1,mark:"rise",name:"G",octave:5,realKey:66,realName:"Gb5"},{key:7,step:-1,name:"G",octave:5,realKey:67,realName:"G5"},{key:1,step:0,name:"A",octave:5,realKey:68,realName:"Ab5"},{key:1,step:0,mark:"rise",name:"A",octave:5,realKey:69,realName:"A5"},{key:2,step:0,name:"B",octave:5,realKey:70,realName:"Bb5"},{key:2,step:0,mark:"rise",name:"B",octave:5,realKey:71,realName:"B5"},{key:3,step:0,name:"C",octave:6,realKey:72,realName:"C6"},{key:4,step:0,name:"D",octave:6,realKey:73,realName:"Db6"},{key:4,step:0,mark:"rise",name:"D",octave:6,realKey:74,realName:"D6"},{key:5,step:0,name:"E",octave:6,realKey:75,realName:"Eb6"},{key:5,step:0,mark:"rise",name:"E",octave:6,realKey:76,realName:"E6"},{key:6,step:0,name:"F",octave:6,realKey:77,realName:"F6"}],listA5:[{key:1,step:0,name:"A",octave:4,realKey:57,realName:"A4"},{key:1,step:0,mark:"rise",name:"B",octave:4,realKey:58,realName:"Bb4"},{key:2,step:0,name:"B",octave:4,realKey:59,realName:"B4"},{key:2,step:0,mark:"rise",name:"C",octave:5,realKey:60,realName:"C5"},{key:3,step:0,name:"D",octave:5,realKey:61,realName:"Db5"},{key:4,step:0,name:"D",octave:5,realKey:62,realName:"D5"},{key:4,step:0,mark:"rise",name:"E",octave:5,realKey:63,realName:"Eb5"},{key:5,step:0,name:"E",octave:5,realKey:64,realName:"E5"},{key:5,step:0,mark:"rise",name:"F",octave:5,realKey:65,realName:"F5"},{key:6,step:0,name:"G",octave:5,realKey:66,realName:"Gb5"},{key:6,step:0,mark:"rise",name:"G",octave:5,realKey:67,realName:"G5"},{key:7,step:0,name:"A",octave:5,realKey:68,realName:"Ab5"},{key:1,step:1,name:"A",octave:5,realKey:69,realName:"A5"},{key:1,step:1,mark:"rise",name:"B",octave:5,realKey:70,realName:"Bb5"},{key:2,step:1,name:"B",octave:5,realKey:71,realName:"B5"},{key:2,step:1,mark:"rise",name:"C",octave:6,realKey:72,realName:"C6"},{key:3,step:1,name:"D",octave:6,realKey:73,realName:"Db6"},{key:4,step:1,name:"D",octave:6,realKey:74,realName:"D6"},{key:4,step:1,mark:"rise",name:"E",octave:6,realKey:75,realName:"Eb6"},{key:5,step:1,name:"E",octave:6,realKey:76,realName:"E6"},{key:5,step:1,mark:"rise",name:"F",octave:6,realKey:77,realName:"F6"}],listBb5:[{key:7,step:-1,name:"A",octave:4,realKey:57,realName:"A4"},{key:1,step:0,name:"B",octave:4,realKey:58,realName:"Bb4"},{key:1,step:0,mark:"rise",name:"B",octave:4,realKey:59,realName:"B4"},{key:2,step:0,name:"C",octave:5,realKey:60,realName:"C5"},{key:2,step:0,mark:"rise",name:"D",octave:5,realKey:61,realName:"Db5"},{key:3,step:0,name:"D",octave:5,realKey:62,realName:"D5"},{key:4,step:0,name:"E",octave:5,realKey:63,realName:"Eb5"},{key:4,step:0,mark:"rise",name:"E",octave:5,realKey:64,realName:"E5"},{key:5,step:0,name:"F",octave:5,realKey:65,realName:"F5"},{key:5,step:0,mark:"rise",name:"G",octave:5,realKey:66,realName:"Gb5"},{key:6,step:0,name:"G",octave:5,realKey:67,realName:"G5"},{key:6,step:0,mark:"rise",name:"A",octave:5,realKey:68,realName:"Ab5"},{key:7,step:0,name:"A",octave:5,realKey:69,realName:"A5"},{key:1,step:1,name:"B",octave:5,realKey:70,realName:"Bb5"},{key:1,step:1,mark:"rise",name:"B",octave:5,realKey:71,realName:"B5"},{key:2,step:1,name:"C",octave:6,realKey:72,realName:"C6"},{key:2,step:1,mark:"rise",name:"D",octave:6,realKey:73,realName:"Db6"},{key:3,step:1,name:"D",octave:6,realKey:74,realName:"D6"},{key:4,step:1,name:"E",octave:6,realKey:75,realName:"Eb6"},{key:4,step:1,mark:"rise",name:"E",octave:6,realKey:76,realName:"E6"},{key:5,step:1,name:"F",octave:6,realKey:77,realName:"F6"}],listB5:[{key:6,step:-1,mark:"rise",name:"A",octave:4,realKey:57,realName:"A4"},{key:7,step:-1,name:"B",octave:4,realKey:58,realName:"Bb4"},{key:1,step:0,name:"B",octave:4,realKey:59,realName:"B4"},{key:1,step:0,mark:"rise",name:"C",octave:5,realKey:60,realName:"C5"},{key:2,step:0,name:"D",octave:5,realKey:61,realName:"Db5"},{key:2,step:0,mark:"rise",name:"D",octave:5,realKey:62,realName:"D5"},{key:3,step:0,name:"E",octave:5,realKey:63,realName:"Eb5"},{key:4,step:0,name:"E",octave:5,realKey:64,realName:"E5"},{key:4,step:0,mark:"rise",name:"F",octave:5,realKey:65,realName:"F5"},{key:5,step:0,name:"G",octave:5,realKey:66,realName:"Gb5"},{key:5,step:0,mark:"rise",name:"G",octave:5,realKey:67,realName:"G5"},{key:6,step:0,name:"A",octave:5,realKey:68,realName:"Ab5"},{key:6,step:0,name:"A",octave:5,realKey:69,realName:"A5"},{key:6,step:0,mark:"rise",name:"B",octave:5,realKey:70,realName:"Bb5"},{key:7,step:0,name:"B",octave:5,realKey:71,realName:"B5"},{key:1,step:1,name:"C",octave:6,realKey:72,realName:"C6"},{key:1,step:1,mark:"rise",name:"D",octave:6,realKey:73,realName:"Db6"},{key:2,step:1,name:"D",octave:6,realKey:74,realName:"D6"},{key:2,step:1,mark:"rise",name:"E",octave:6,realKey:75,realName:"Eb6"},{key:3,step:1,name:"E",octave:6,realKey:76,realName:"E6"},{key:4,step:1,name:"F",octave:6,realKey:77,realName:"F6"}]},melodica:{tips:[{key:0,name:"演奏姿势",octave:0,step:0,realKey:0,realName:"口风琴的基本演奏姿势有两种,即坐奏式和立奏式两种。"},{key:0,name:"坐奏式",octave:0,step:0,realKey:0,realName:"将口风琴平放在桌上,左手持长吹管前面的吹嘴,有手在琴键上演奎。要求身体端正。"},{key:0,name:"立奏式",octave:0,step:0,realKey:0,realName:`口含短吹管,左手持琴,右手在琴键上演奏。琴身倾斜约45度。 注:无论是坐奏式还是立奏式,都要注意口含吹嘴少些。`},{key:0,name:"呼吸方法",octave:0,step:0,realKey:0,realName:"呼吸吹奏口风琴时的呼吸与唱歌和演奏其他吹管乐器时的呼吸方法基本一致,即采用口鼻并用的胸腹式呼吸法。请记住下面这一句:深吸气,要保持,均匀平稳呼出去。"},{key:0,name:"吐舌法",octave:0,step:0,realKey:0,realName:"与演奏其他管乐器一样,演奏口风琴时,吐舌法是十分重要的。其基本方法是舌尖轻触上牙床,并靠拢前肠,气流通过。"},{key:0,name:"基本指法",octave:0,step:0,realKey:0,realName:`口风琴的指法与钢琴、风琴电子琴、手风琴等键盘乐器基本上相同,其区别在于使用它作同音重复演奏时,手指不动,而是用吐舌法来完成。 演奏口风琴时,右手手指编了号:拇指为1号指,食指为2号指,中指为3号指,无名指为4号指,小指为五号指。与演奏其他键盘乐器一样,演奏口风琴时要求手指自然弯曲,以指尖触键,手腕平放,手心如提球状。`}],tones:[],list:[{key:4,name:"F",octave:4,step:-1,realKey:53,realName:"F4"},{key:5,name:"G",octave:4,step:-1,realKey:54,mark:"fall",realName:"Gb4"},{key:5,name:"G",octave:4,step:-1,realKey:55,realName:"G4"},{key:6,name:"A",octave:4,step:-1,realKey:56,mark:"fall",realName:"Ab4"},{key:6,name:"A",octave:4,step:-1,realKey:57,realName:"A4"},{key:7,name:"B",octave:4,step:-1,realKey:58,mark:"fall",realName:"Bb4"},{key:7,name:"B",octave:4,step:-1,realKey:59,realName:"B4"},{key:1,name:"C",octave:5,step:0,realKey:60,realName:"C5"},{key:2,name:"D",octave:5,step:0,realKey:61,mark:"fall",realName:"Db5"},{key:2,name:"D",octave:5,step:0,realKey:62,realName:"D5"},{key:3,name:"E",octave:5,step:0,realKey:63,mark:"fall",realName:"Eb5"},{key:3,name:"E",octave:5,step:0,realKey:64,realName:"E5"},{key:4,name:"F",octave:5,step:0,realKey:65,realName:"F5"},{key:5,name:"G",octave:5,step:0,realKey:66,mark:"fall",realName:"Gb5"},{key:5,name:"G",octave:5,step:0,realKey:67,realName:"G5"},{key:6,name:"A",octave:5,step:0,realKey:68,mark:"fall",realName:"Ab5"},{key:6,name:"A",octave:5,step:0,realKey:69,realName:"A5"},{key:7,name:"B",octave:5,step:0,realKey:70,mark:"fall",realName:"Bb5"},{key:7,name:"B",octave:5,step:0,realKey:71,realName:"B5"},{key:1,name:"C",octave:6,step:1,realKey:72,realName:"C6"},{key:2,name:"D",octave:6,step:1,realKey:73,mark:"fall",realName:"Db6"},{key:2,name:"D",octave:6,step:1,realKey:74,realName:"D6"},{key:3,name:"E",octave:6,step:1,realKey:75,mark:"fall",realName:"Eb6"},{key:3,name:"E",octave:6,step:1,realKey:76,realName:"E6"},{key:4,name:"F",octave:6,step:1,realKey:77,realName:"F6"},{key:5,name:"G",octave:6,step:1,realKey:78,mark:"fall",realName:"Gb6"},{key:5,name:"G",octave:6,step:1,realKey:79,realName:"G6"},{key:6,name:"A",octave:6,step:1,realKey:80,mark:"fall",realName:"Ab6"},{key:6,name:"A",octave:6,step:1,realKey:81,realName:"A6"},{key:7,name:"B",octave:6,step:1,realKey:82,mark:"fall",realName:"Bb6"},{key:7,name:"B",octave:6,step:1,realKey:83,realName:"B6"},{key:1,name:"C",octave:7,step:2,realKey:84,realName:"C7"}]},"baroque-recorder":{tips:[{key:0,name:"拿竖笛的方法",octave:0,step:0,realKey:0,realName:"把竖笛拿起来,然后放在嘴边,把它轻轻地放在你的唇间,并用你的手指拿稳。记住要把你的左手放在上边,有一个孔的背面应该正对着你,不要咬吹口或是让它碰到牙。"},{key:0,name:"吹竖笛的力度",octave:0,step:0,realKey:0,realName:"向竖笛吹气,轻一点吹想象你在吹泡泡一样,控制气流的稳定并轻柔地吹奏,尝试用膈肌呼吸并确保你吹得均匀,这可以使声音稳定持续。"},{key:0,name:"学习呼吸方法",octave:0,step:0,realKey:0,realName:"吹竖笛时,气息的控制是很关键的,气息分为缓吹法和急吹法,吸气要从鼻子和嘴角吸气,吸到胸部和腰部,小腹微微向里收,以使演奏有气息支持。"},{key:0,name:"勤练习指法",octave:0,step:0,realKey:0,realName:"指法图是用来表示竖笛上的单音的,后背的孔叫0孔,从上到下依次为一孔、二孔、三孔、四孔、五孔、六孔、七孔,要吹奏简单的练习曲,必须要牢记单音的指法。"},{key:0,name:"学习一些演奏技法",octave:0,step:0,realKey:0,realName:"单吐是用舌尖顶住上牙的牙根,用气息轻轻地把舌尖冲开,待声音发出后舌尖有弹性地返回到原来的位置,这时舌尖就像一个通气阀门,如果我们让它发出声音就像发“嘟”音的感觉。在有连线的地方只有第一个音采用单吐的技法,后面的音不再做吐音,只接前面“嘟”音的尾音发出“呜”音,整个连线里面的音就像“嘟呜”的。"}],list:[{key:1,name:"C",octave:5,step:0,realKey:60,realName:"C5"},{key:2,name:"D",octave:5,step:0,realKey:61,mark:"fall",realName:"Db5"},{key:2,name:"D",octave:5,step:0,realKey:62,realName:"D5"},{key:3,name:"E",octave:5,step:0,realKey:63,mark:"fall",realName:"Eb5"},{key:3,name:"E",octave:5,step:0,realKey:64,realName:"E5"},{key:4,name:"F",octave:5,step:0,realKey:65,realName:"F5"},{key:5,name:"G",octave:5,step:0,realKey:66,mark:"fall",realName:"Gb5"},{key:5,name:"G",octave:5,step:0,realKey:67,realName:"G5"},{key:6,name:"A",octave:5,step:0,realKey:68,mark:"fall",realName:"Ab5"},{key:6,name:"A",octave:5,step:0,realKey:69,realName:"A5"},{key:7,name:"B",octave:5,step:0,realKey:70,mark:"fall",realName:"Bb5"},{key:7,name:"B",octave:5,step:0,realKey:71,realName:"B5"},{key:1,name:"C",octave:6,step:1,realKey:72,realName:"C6"},{key:2,name:"D",octave:6,step:1,realKey:73,mark:"fall",realName:"Db6"},{key:2,name:"D",octave:6,step:1,realKey:74,realName:"D6"},{key:3,name:"E",octave:6,step:1,realKey:75,mark:"fall",realName:"Eb6"},{key:3,name:"E",octave:6,step:1,realKey:76,realName:"E6"},{key:4,name:"F",octave:6,step:1,realKey:77,realName:"F6"},{key:5,name:"G",octave:6,step:1,realKey:78,mark:"fall",realName:"Gb6"},{key:5,name:"G",octave:6,step:1,realKey:79,realName:"G6"},{key:6,name:"A",octave:6,step:1,realKey:80,mark:"fall",realName:"Ab6"},{key:6,name:"A",octave:6,step:1,realKey:81,realName:"A6"},{key:7,name:"B",octave:6,step:1,realKey:82,mark:"fall",realName:"Bb6"},{key:7,name:"B",octave:6,step:1,realKey:83,realName:"B6"},{key:1,name:"C",octave:7,step:2,realKey:84,realName:"C7"},{key:2,name:"D",octave:7,step:2,realKey:85,mark:"fall",realName:"Db7"},{key:2,name:"D",octave:7,step:2,realKey:86,realName:"D7"},{key:3,name:"D",octave:7,step:2,realKey:87,mark:"fall",realName:"Gb7"}]}},FIGNER_INSTRUMENT_REALKEY=[60,62,64,65,67,69,71,72];var hammerExports={},hammer={get exports(){return hammerExports},set exports(i){hammerExports=i}};/*! Hammer.JS - v2.0.7 - 2016-04-22 * http://hammerjs.github.io/ * * Copyright (c) 2016 Jorik Tangelder; * Licensed under the MIT license */(function(i){(function(e,r,s,o){var a=["","webkit","Moz","MS","ms","o"],l=r.createElement("div"),c="function",u=Math.round,m=Math.abs,g=Date.now;function d(le,be,Re){return setTimeout(P(le,Re),be)}function y(le,be,Re){return Array.isArray(le)?(A(le,Re[be],Re),!0):!1}function A(le,be,Re){var Ge;if(le)if(le.forEach)le.forEach(be,Re);else if(le.length!==o)for(Ge=0;Ge\s*\(/gm,"{anonymous}()@"):"Unknown Stack Trace",St=e.console&&(e.console.warn||e.console.log);return St&&St.call(e.console,Ge,it),le.apply(this,arguments)}}var S;typeof Object.assign!="function"?S=function(be){if(be===o||be===null)throw new TypeError("Cannot convert undefined or null to object");for(var Re=Object(be),Ge=1;Ge-1}function N(le){return le.trim().split(/\s+/g)}function O(le,be,Re){if(le.indexOf&&!Re)return le.indexOf(be);for(var Ge=0;Gejt[be]}):Ge=Ge.sort()),Ge}function R(le,be){for(var Re,Ge,Ye=be[0].toUpperCase()+be.slice(1),it=0;it1&&!Re.firstMultiple?Re.firstMultiple=Pe(be):Ye===1&&(Re.firstMultiple=!1);var it=Re.firstInput,St=Re.firstMultiple,_t=St?St.center:it.center,Ut=be.center=ye(Ge);be.timeStamp=g(),be.deltaTime=be.timeStamp-it.timeStamp,be.angle=_e(_t,Ut),be.distance=je(_t,Ut),Ce(Re,be),be.offsetDirection=Ue(be.deltaX,be.deltaY);var jt=Ve(be.deltaTime,be.deltaX,be.deltaY);be.overallVelocityX=jt.x,be.overallVelocityY=jt.y,be.overallVelocity=m(jt.x)>m(jt.y)?jt.x:jt.y,be.scale=St?tt(St.pointers,Ge):1,be.rotation=St?Ke(St.pointers,Ge):0,be.maxPointers=Re.prevInput?be.pointers.length>Re.prevInput.maxPointers?be.pointers.length:Re.prevInput.maxPointers:be.pointers.length,he(Re,be);var Zt=le.element;F(be.srcEvent.target,Zt)&&(Zt=be.srcEvent.target),be.target=Zt}function Ce(le,be){var Re=be.center,Ge=le.offsetDelta||{},Ye=le.prevDelta||{},it=le.prevInput||{};(be.eventType===ce||it.eventType===Ee)&&(Ye=le.prevDelta={x:it.deltaX||0,y:it.deltaY||0},Ge=le.offsetDelta={x:Re.x,y:Re.y}),be.deltaX=Ye.x+(Re.x-Ge.x),be.deltaY=Ye.y+(Re.y-Ge.y)}function he(le,be){var Re=le.lastInterval||be,Ge=be.timeStamp-Re.timeStamp,Ye,it,St,_t;if(be.eventType!=Ie&&(Ge>J||Re.velocity===o)){var Ut=be.deltaX-Re.deltaX,jt=be.deltaY-Re.deltaY,Zt=Ve(Ge,Ut,jt);it=Zt.x,St=Zt.y,Ye=m(Zt.x)>m(Zt.y)?Zt.x:Zt.y,_t=Ue(Ut,jt),le.lastInterval=be}else Ye=Re.velocity,it=Re.velocityX,St=Re.velocityY,_t=Re.direction;be.velocity=Ye,be.velocityX=it,be.velocityY=St,be.direction=_t}function Pe(le){for(var be=[],Re=0;Re=m(be)?le<0?ie:ae:be<0?H:ve}function je(le,be,Re){Re||(Re=me);var Ge=be[Re[0]]-le[Re[0]],Ye=be[Re[1]]-le[Re[1]];return Math.sqrt(Ge*Ge+Ye*Ye)}function _e(le,be,Re){Re||(Re=me);var Ge=be[Re[0]]-le[Re[0]],Ye=be[Re[1]]-le[Re[1]];return Math.atan2(Ye,Ge)*180/Math.PI}function Ke(le,be){return _e(be[1],be[0],Be)+_e(le[1],le[0],Be)}function tt(le,be){return je(be[0],be[1],Be)/je(le[0],le[1],Be)}var $e={mousedown:ce,mousemove:ge,mouseup:Ee},ot="mousedown",yt="mousemove mouseup";function ct(){this.evEl=ot,this.evWin=yt,this.pressed=!1,oe.apply(this,arguments)}C(ct,oe,{handler:function(be){var Re=$e[be.type];Re&ce&&be.button===0&&(this.pressed=!0),Re&ge&&be.which!==1&&(Re=Ee),this.pressed&&(Re&Ee&&(this.pressed=!1),this.callback(this.manager,Re,{pointers:[be],changedPointers:[be],pointerType:ue,srcEvent:be}))}});var dt={pointerdown:ce,pointermove:ge,pointerup:Ee,pointercancel:Ie,pointerout:Ie},Pt={2:W,3:xe,4:ue,5:Y},ht="pointerdown",pt="pointermove pointerup pointercancel";e.MSPointerEvent&&!e.PointerEvent&&(ht="MSPointerDown",pt="MSPointerMove MSPointerUp MSPointerCancel");function Ct(){this.evEl=ht,this.evWin=pt,oe.apply(this,arguments),this.store=this.manager.session.pointerEvents=[]}C(Ct,oe,{handler:function(be){var Re=this.store,Ge=!1,Ye=be.type.toLowerCase().replace("ms",""),it=dt[Ye],St=Pt[be.pointerType]||be.pointerType,_t=St==W,Ut=O(Re,be.pointerId,"pointerId");it&ce&&(be.button===0||_t)?Ut<0&&(Re.push(be),Ut=Re.length-1):it&(Ee|Ie)&&(Ge=!0),!(Ut<0)&&(Re[Ut]=be,this.callback(this.manager,it,{pointers:Re,changedPointers:[be],pointerType:St,srcEvent:be}),Ge&&Re.splice(Ut,1))}});var Gt={touchstart:ce,touchmove:ge,touchend:Ee,touchcancel:Ie},Je="touchstart",te="touchstart touchmove touchend touchcancel";function de(){this.evTarget=Je,this.evWin=te,this.started=!1,oe.apply(this,arguments)}C(de,oe,{handler:function(be){var Re=Gt[be.type];if(Re===ce&&(this.started=!0),!!this.started){var Ge=ke.call(this,be,Re);Re&(Ee|Ie)&&Ge[0].length-Ge[1].length===0&&(this.started=!1),this.callback(this.manager,Re,{pointers:Ge[0],changedPointers:Ge[1],pointerType:W,srcEvent:be})}}});function ke(le,be){var Re=B(le.touches),Ge=B(le.changedTouches);return be&(Ee|Ie)&&(Re=V(Re.concat(Ge),"identifier",!0)),[Re,Ge]}var Oe={touchstart:ce,touchmove:ge,touchend:Ee,touchcancel:Ie},We="touchstart touchmove touchend touchcancel";function Ze(){this.evTarget=We,this.targetIds={},oe.apply(this,arguments)}C(Ze,oe,{handler:function(be){var Re=Oe[be.type],Ge=nt.call(this,be,Re);Ge&&this.callback(this.manager,Re,{pointers:Ge[0],changedPointers:Ge[1],pointerType:W,srcEvent:be})}});function nt(le,be){var Re=B(le.touches),Ge=this.targetIds;if(be&(ce|ge)&&Re.length===1)return Ge[Re[0].identifier]=!0,[Re,Re];var Ye,it,St=B(le.changedTouches),_t=[],Ut=this.target;if(it=Re.filter(function(jt){return F(jt.target,Ut)}),be===ce)for(Ye=0;Ye-1&&Ge.splice(it,1)};setTimeout(Ye,vt)}}function z(le){for(var be=le.srcEvent.clientX,Re=le.srcEvent.clientY,Ge=0;Ge-1&&this.requireFail.splice(be,1),this},hasRequireFailures:function(){return this.requireFail.length>0},canRecognizeWith:function(le){return!!this.simultaneous[le.id]},emit:function(le){var be=this,Re=this.state;function Ge(Ye){be.manager.emit(Ye,le)}Re=At&&Ge(be.options.event+rt(Re))},tryEmit:function(le){if(this.canEmit())return this.emit(le);this.state=at},canEmit:function(){for(var le=0;lebe.threshold&&Ye&be.direction},attrTest:function(le){return kt.prototype.attrTest.call(this,le)&&(this.state&Et||!(this.state&Et)&&this.directionTest(le))},emit:function(le){this.pX=le.deltaX,this.pY=le.deltaY;var be=mt(le.direction);be&&(le.additionalEvent=this.options.event+be),this._super.emit.call(this,le)}});function Ht(){kt.apply(this,arguments)}C(Ht,kt,{defaults:{event:"pinch",threshold:0,pointers:2},getTouchAction:function(){return[Te]},attrTest:function(le){return this._super.attrTest.call(this,le)&&(Math.abs(le.scale-1)>this.options.threshold||this.state&Et)},emit:function(le){if(le.scale!==1){var be=le.scale<1?"in":"out";le.additionalEvent=this.options.event+be}this._super.emit.call(this,le)}});function Vt(){et.apply(this,arguments),this._timer=null,this._input=null}C(Vt,et,{defaults:{event:"press",pointers:1,time:251,threshold:9},getTouchAction:function(){return[we]},process:function(le){var be=this.options,Re=le.pointers.length===be.pointers,Ge=le.distancebe.time;if(this._input=le,!Ge||!Re||le.eventType&(Ee|Ie)&&!Ye)this.reset();else if(le.eventType&ce)this.reset(),this._timer=d(function(){this.state=Tt,this.tryEmit()},be.time,this);else if(le.eventType&Ee)return Tt;return at},reset:function(){clearTimeout(this._timer)},emit:function(le){this.state===Tt&&(le&&le.eventType&Ee?this.manager.emit(this.options.event+"up",le):(this._input.timeStamp=g(),this.manager.emit(this.options.event,this._input)))}});function Qt(){kt.apply(this,arguments)}C(Qt,kt,{defaults:{event:"rotate",threshold:0,pointers:2},getTouchAction:function(){return[Te]},attrTest:function(le){return this._super.attrTest.call(this,le)&&(Math.abs(le.rotation)>this.options.threshold||this.state&Et)}});function ni(){kt.apply(this,arguments)}C(ni,kt,{defaults:{event:"swipe",threshold:10,velocity:.3,direction:pe|ee,pointers:1},getTouchAction:function(){return Dt.prototype.getTouchAction.call(this)},attrTest:function(le){var be=this.options.direction,Re;return be&(pe|ee)?Re=le.overallVelocity:be&pe?Re=le.overallVelocityX:be&ee&&(Re=le.overallVelocityY),this._super.attrTest.call(this,le)&&be&le.offsetDirection&&le.distance>this.options.threshold&&le.maxPointers==this.options.pointers&&m(Re)>this.options.velocity&&le.eventType&Ee},emit:function(le){var be=mt(le.offsetDirection);be&&this.manager.emit(this.options.event+be,le),this.manager.emit(this.options.event,le)}});function ri(){et.apply(this,arguments),this.pTime=!1,this.pCenter=!1,this._timer=null,this._input=null,this.count=0}C(ri,et,{defaults:{event:"tap",pointers:1,taps:1,interval:300,time:250,threshold:9,posThreshold:10},getTouchAction:function(){return[Se]},process:function(le){var be=this.options,Re=le.pointers.length===be.pointers,Ge=le.distancecreateVNode("div",{ref:r,class:styles$4.detail},[createVNode("div",{class:styles$4.btn,onClick:()=>e("close",!0)},[createTextVNode("不再提醒")]),createVNode("span",{class:styles$4.closeIcon,onClick:()=>e("close")},null)])}}),guide_1="data:image/png;base64,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",guide_2="data:image/png;base64,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",guide_3="data:image/png;base64,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",guide_4="data:image/png;base64,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",icon_cursor_1="data:image/png;base64,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",icon_cursor_2="data:image/png;base64,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",icon_cursor_3="data:image/png;base64,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",icons={guide_1,guide_2,guide_3,guide_4,icon_cursor_1,icon_cursor_2,icon_cursor_3},FingerGuide=defineComponent({name:"DetailGuide",props:{fingeringMode:{type:String,default:""}},emits:["close"],setup(i,{emit:e}){const r=getQuery(),s=reactive({box:{},show:!0,steps:[{className:"boxItem1",classTip:"",des:`快点击下排按钮听听${state$1.fingeringInfo.code}的声音吧,按钮可以滑动哦~`,img:icons.icon_cursor_1},{className:"boxItem2",classTip:"boxTip2",des:"这里可以切换音调,查看不同音调的指法~",img:icons.icon_cursor_2},{className:"boxItem3",classTip:"boxTip3",des:"可以通过手势放大缩小乐器哦~",img:icons.icon_cursor_3}],step:0}),o=["finger-note-0","finger-note-1","finger-note-2"],a=()=>{const u=document.getElementById(o[s.step]);if(console.log(s.step,u),u){const m=u.getBoundingClientRect(),g=s.step===2?m.width:0;s.box={left:m.x-g+"px",top:m.y+"px",width:(s.step===2?0:m.width)+"px",height:(s.step===2?0:m.height)+"px"}}else l()};onMounted(()=>{a()});const l=()=>{if(s.step>=2){c();return}s.step=s.step+1,a()},c=()=>{e("close",!0)};return()=>createVNode(Popup,{zIndex:5051,teleport:"body",overlay:!1,closeOnClickOverlay:!1,class:["popup-custom",styles$4.fingerGuide],show:s.show,"onUpdate:show":u=>s.show=u},{default:()=>[createVNode("div",{class:styles$4.content,onClick:()=>l()},[createVNode("div",{class:styles$4.box,style:s.box},[s.steps.map((u,m)=>createVNode("div",{style:{display:m===s.step?"":"none"},class:styles$4[u.className]},[createVNode("img",{src:u.img},null)]))]),createVNode("div",{onClick:u=>u.stopPropagation()},[s.steps.map((u,m)=>createVNode("div",{style:{display:m===s.step?"":"none"},class:[styles$4.item,i.fingeringMode!=="scaleMode"&&styles$4.fingeringMode,["Woodwind","Tenor Recorder","BaroqueRecorder"].includes(r.code)&&styles$4.itemScale,styles$4[u.classTip]]},[createVNode("div",{class:styles$4.icon},[createVNode("img",{src:icons.guide_3},null)]),createVNode(Button$1,{class:styles$4.btn,round:!0,type:"primary",onClick:()=>l()},{default:()=>[createTextVNode("我知道了")]}),createVNode("div",{class:styles$4.title},[createVNode("img",{src:icons.guide_4},null),createVNode("div",{class:styles$4.des,style:{fontSize:m===2?"0.34667rem":""}},[u.des])])]))])])]})}}),GuideIndex=defineComponent({name:"guide-index",props:{list:{type:Array,default:""},showGuide:{type:Boolean,default:!0},fingeringMode:{type:String,default:""}},setup(i){const e=getQuery(),r="detailGuideKey",s="fingerGuideKey",o=reactive({list:i.list,detailShow:!1,fingerShow:!1}),a=()=>{if(!(i.showGuide&&!e.showGuide)){if(o.list.includes("detail")){if(localStorage.getItem(r))return;setTimeout(()=>{o.detailShow=!0},300)}if(o.list.includes("finger")){if(localStorage.getItem(s))return;o.fingerShow=!0}}};return onMounted(()=>{a()}),()=>createVNode(Fragment,null,[o.detailShow&&createVNode(DetailGuide,{onClose:l=>{l&&localStorage.setItem(r,"1"),o.detailShow=!1}},null),o.fingerShow&&createVNode(FingerGuide,{fingeringMode:i.fingeringMode,onClose:l=>{l&&localStorage.setItem(s,"1"),o.fingerShow=!1}},null)])}}),icon_loading_img="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAc4AAACsCAMAAADFc7xnAAAC7lBMVEUAAAD///////////////////////8A0sX/////////////////////////////////////////lYb/o4YA08v/////////////yUD///////////8C2dAAzML/qIUA1Mr///////8BwrX/1QD/1AD/1QD///8B1cz/1QD///////8B0MYByb7/1QD/1QD///////8BzsP///8Bxbr/////kof/////1gAA1c3/1AD/1AAByb7/////1AD/15P///8B08kBxroD4Nn/1QD/1QD/lob/////1QD/mIYBy78Axrv///8B3dT/iIcC2ND/q4X/1QAByb4B0ccC39f/qIUC187/////1QD/ooUD3NQByL3/iocC2dACzcMCzMH/1QD///8CzsP///8C29T/1QD/oob/1gD/nIYC184CzcP/////mof/1wAA0ssA0sj/l4P/0wD/////lYb/noYBzcP/////nob/iYb/////rYX/////j4b/1pP/nob/oIb/////k4b/qoX/1QACyr//kIcC29P/1QD/15UD08n/1QAD4NgD1s4E39YBzcT/1QD/nYb/1AD/1wD/1pP/o4YC39j/1pMC0cgC08oBx7z/q4b/1AAC2M//mof/iof/15P/kIf/rYb/1pT/15T/rIYC183/q4b/1QD/////o4X/qYX/1pT/////////sIX/y5D/1wD/2Zj/jIf/h4cD4dr/q4X/r4X/2JMC0MX/////15P/1QD/15H/////1AD/1pMC2tEC29P/j4YC2ND/lIb/koYByL0C184By8EC1cwBwrYC3tf/jYb/q4X/kYb/iob/iIYC3dUBxLgC08r/loa18OwBzcP/rYUByr//poUBxrr/jIYC0cgBz8X/qoX/qYX/qIX/o4X/n4X/3duw7usC4NlC2dEfz8b/r4X/nYX/m4UPz8X/l5L/mYWp7ekD4do12NA00sr/pJ7/mIb/qqX/29lZ3db/2Nb/2dgMx7z/tK80mDA7AAAAvHRSTlMAP88qHAkjDTcnBfQ9Oy0TEPosFgTXs60H56aggy8kHhgN/Pnu2ruzFO3e09HAtJN4bWRjXldJSBQK/ffi4uDLv76oqJyJf39yOzczM/z18/Pr593a2dHQy8GwoJ+fmJOK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",noteImg=""+new URL("../png/noteImg-72c69ed5.png",import.meta.url).href,changeSubject="_changeSubject_11ws8_1",changeSubjectContainer="_changeSubjectContainer_11ws8_4",title$1="_title_11ws8_13",subjectContainer="_subjectContainer_11ws8_30",subjectItem="_subjectItem_11ws8_36",arrow="_arrow_11ws8_51",active="_active_11ws8_63",btnGroups="_btnGroups_11ws8_73",btn="_btn_11ws8_73",resetBtn="_resetBtn_11ws8_86",confirmBtn="_confirmBtn_11ws8_90",styles$3={changeSubject,changeSubjectContainer,title:title$1,subjectContainer,subjectItem,arrow,active,btnGroups,btn,resetBtn,confirmBtn},ChangeSubject=defineComponent({name:"change-subject",props:{subjectList:{type:Array,default:()=>[]},subject:{type:String,default:""}},emits:["close","confirm"],setup(i,{emit:e}){const r=reactive({subjectValue:null,instrumentCode:null,selectList:[]});watch(()=>i.subject,()=>{s()});const s=()=>{let o={};i.subjectList.forEach(a=>{Array.isArray(a.children)&&a.children.forEach(l=>{l.value===i.subject&&(o={...l,parentId:a.id},r.instrumentCode=l.value,r.subjectValue=a.id,r.selectList=a.children||[])})}),o||i.subjectList.forEach(a=>{a.children&&a.children.length>0&&a.children.forEach(l=>{l.value===i.subject&&(r.instrumentCode=l.value,r.subjectValue=a.id,r.selectList=a.children)})})};return onMounted(()=>{console.log(i.subjectList,"subjectList",i.subject),s()}),()=>createVNode("div",{class:styles$3.changeSubject},[createVNode("div",{class:[styles$3.changeSubjectContainer,"changeSubjectContainer_pc"]},[createVNode("div",{class:styles$3.title},[createTextVNode("声部")]),createVNode("div",{class:styles$3.subjectContainer},[i.subjectList.map(o=>createVNode("div",{class:[styles$3.subjectItem,o.children.length>0&&styles$3.arrow,o.id===r.subjectValue&&styles$3.active],onClick:()=>{o.children.length<=0&&(r.instrumentCode=""),r.subjectValue=o.id,r.selectList=o.children,r.selectList.length>0&&(r.instrumentCode=r.selectList[0].value)}},[o.text]))]),r.selectList.length>0&&createVNode(Fragment,null,[createVNode("div",{class:styles$3.title},[createTextVNode("乐器")]),createVNode("div",{class:styles$3.subjectContainer},[r.selectList.map(o=>createVNode("div",{class:[styles$3.subjectItem,o.value===r.instrumentCode&&styles$3.active],onClick:()=>{r.instrumentCode=o.value}},[o.text]))])])]),createVNode("div",{class:[styles$3.btnGroups,"btnGroups_pc"]},[createVNode("div",{class:[styles$3.btn,styles$3.resetBtn],onClick:()=>{e("close"),s()}},null),createVNode("div",{class:[styles$3.btn,styles$3.confirmBtn],onClick:()=>{if(r.selectList.length>0&&!r.instrumentCode){showToast("请选择乐器");return}e("confirm",r.instrumentCode||r.subjectValue)}},null)])])}});function useDrag(i,e,r,s){const o=ref({top:-1,left:-1}),a=s+e;watch(r,()=>{r.value?(c(),window.addEventListener("resize",u),nextTick(()=>{const m=document.querySelector(`.${e}`);m&&i.map(g=>{const d=document.querySelector(`.${g}`);d&&(d.style.cursor="move",drag(d,m,o))})})):(window.removeEventListener("resize",u),setCachePos(a,o.value))});const l=computed(()=>o.value.left===-1&&o.value.top===-1?{}:{position:"fixed",left:`${o.value.left}px`,top:`${o.value.top}px`,transform:"initial",transformOrigin:"initial",margin:"initial",transition:"initial"});function c(){const m=getCachePos(a);m&&(o.value=m,nextTick(()=>{u()}))}function u(){if(o.value.left===-1&&o.value.top===-1)return;const m=document.querySelector(`.${e}`);if(!m)return;const g=m.getBoundingClientRect(),d=document.documentElement.clientWidth,y=document.documentElement.clientHeight,{top:A,left:b}=o.value,S=d-g.width,E=y-g.height;let x=b,C=A;const P=0,k=0;x=xS?S:x,C=CE?E:C,o.value={top:C,left:x}}return{pos:o,styleDrag:l}}function drag(i,e,r){function s(o){const a=e.getBoundingClientRect(),l=o.clientX,c=o.clientY,u=document.documentElement.clientWidth,m=document.documentElement.clientHeight,g=u-a.width,d=m-a.height,y=0,A=0;function b(E){let x=a.left+(E.clientX-l),C=a.top+(E.clientY-c);x=xg?g:x,C=Cd?d:C,r.value={top:C,left:x}}function S(){document.removeEventListener("mousemove",b),document.removeEventListener("mouseup",S)}document.addEventListener("mousemove",b),document.addEventListener("mouseup",S)}i.addEventListener("mousedown",s)}const localStorageName="dragCachePos";function getCachePos(i){const e=localStorage.getItem(localStorageName);if(e)try{return JSON.parse(e)[i]}catch(r){return null}return null}function setCachePos(i,e){const r=localStorage.getItem(localStorageName);let s={};if(r)try{s=JSON.parse(r)}catch(o){}s[i]=e,localStorage.setItem(localStorageName,JSON.stringify(s))}const dragbomBox="_dragbomBox_19ydm_1",dragBom="_dragBom_19ydm_9",box="_box_19ydm_17",right="_right_19ydm_23",guide="_guide_19ydm_27",guideBg="_guideBg_19ydm_44",guideDone="_guideDone_19ydm_52",guideTop="_guideTop_19ydm_63",guideLeft="_guideLeft_19ydm_71",guideRight="_guideRight_19ydm_80",styles$2={dragbomBox,dragBom,box,right,guide,guideBg,guideDone,guideTop,guideLeft,guideRight},Dragbom=defineComponent({name:"dragBom",emits:["guideDone"],props:{showGuide:{type:Boolean,default:!1}},setup(i,{emit:e}){const r=reactive({guidePos:"bottom"}),s=()=>{var g,d,y;const o=document.documentElement.clientHeight||document.body.clientHeight;document.documentElement.clientWidth||document.body.clientWidth;const a=((g=document.querySelector(".bom_guide"))==null?void 0:g.clientHeight)||0,l=((d=document.querySelector(".bom_guide"))==null?void 0:d.clientWidth)||0,c=(y=document.querySelector(".bom_drag"))==null?void 0:y.getBoundingClientRect(),u=(c==null?void 0:c.top)||0,m=(c==null?void 0:c.left)||0;o-u>a?r.guidePos="bottom":r.guidePos=m>l?"left":"right"};return onMounted(()=>{setTimeout(()=>{s()},0)}),()=>createVNode(Fragment,null,[createVNode("div",{class:[styles$2.dragbomBox,"dragbomBox"]},[createVNode("div",{class:[styles$2.dragBom,"bom_drag"]},[createVNode("div",{class:styles$2.box},null),createVNode("div",{class:[styles$2.box,styles$2.right]},null)])]),i.showGuide&&createVNode("div",{class:[styles$2.guide,r.guidePos==="left"&&styles$2.guideLeft,r.guidePos==="right"&&styles$2.guideRight,"bom_guide"],onClick:()=>e("guideDone")},[createVNode("div",{class:styles$2.guideBg},null),createVNode("div",{class:styles$2.guideDone,onClick:o=>{o.stopPropagation(),e("guideDone")}},null)])])}});function useDragGuidance(){const i=ref(!1);let e={};r();async function r(){var o;try{const a=await getGuidance({guideTag:"guideInfo"});if(a.code===200)if(a.data){const l=JSON.parse((o=a.data)==null?void 0:o.guideValue)||null;l&&(e=l,i.value=!l.teacherDrag)}else i.value=!0}catch(a){console.log(a)}}function s(){try{setGuidance({guideTag:"guideInfo",guideValue:JSON.stringify(Object.assign(e,{teacherDrag:!0}))}),i.value=!1}catch(o){console.log(o)}}return{guidanceShow:i,setGuidanceShow:s}}function _isSlot(i){return typeof i=="function"||Object.prototype.toString.call(i)==="[object Object]"&&!isVNode(i)}const ViewFigner=defineComponent({name:"viewFigner",emits:["close"],props:{show:{type:Boolean,default:!0},isComponent:{type:Boolean,default:!1},subject:{type:String,default:""}},setup(i,{emit:e}){var Be;const r=getQuery(),s=browser(),o=mappingVoicePart(r.code,"INSTRUMENT"),a=i.isComponent?i.subject||"pan-flute":o||"pan-flute",l=reactive({linkSource:r.linkSource,loading:!0,subject:a,realKey:0,notes:[],tones:[],activeTone:{},popupActiveTone:{},activeToneName:"",soundFonts:{},viewIndex:0,viewTotal:1,noteAudio:null,transform:{scale:1,x:0,y:0,startScale:1,startX:0,startY:0,transition:""},tipShow:!1,tips:[],tnoteShow:!1,loadingSoundFonts:!0,loadingSoundProgress:0,changeSubjectShow:!1,huaweiPad:!!((Be=navigator==null?void 0:navigator.userAgent)!=null&&Be.includes("UAWEIVRD-W09")),paddingTop:"",paddingLeft:"",subjects:[],fingeringModeList:[{text:"指法模式",value:"fingeringMode",icon:icons$1.icon_click},{text:"听音模式",value:"listenMode",icon:icons$1.icon_listen},{text:"音阶模式",value:"scaleMode",icon:icons$1.icon_mode}],fingeringMode:r.type||"scaleMode",noteType:"all",loadingDom:!1,loadingImg:!1}),c=reactive({relationshipIndex:0,subject:null,fingeringInfo:subjectFingering(l.subject)});i.isComponent||(state$1.fingeringInfo=c.fingeringInfo);const u=async oe=>{const Ae=await isSpecialShapedScreen();if(Ae!=null&&Ae.content){console.log("🚀 ~ screenData:",Ae.content);const{isSpecialShapedScreen:Me,notchHeight:Le}=Ae.content;Me&&(oe==="top"&&(l.paddingTop="25px"),oe==="left"&&(l.paddingLeft="25px"))}},m=()=>{c.fingeringInfo.orientation===1&&u("top"),c.fingeringInfo.orientation===0&&u("left")},g=()=>{const oe=FIGNER_INSTRUMENT_DATA[l.subject];oe&&(l.tones=oe.tones||[],l.tones.length&&(l.activeTone=l.tones[0],l.popupActiveTone=l.tones[0]),l.tips=oe.tips||[],d(),setTimeout(()=>{l.loading=!1},600))},d=()=>{const oe=FIGNER_INSTRUMENT_DATA[l.subject];if(oe){const Ae=oe[`list${l.activeTone.realName||""}`],Me=[];Ae.forEach(Le=>{Le.steps=new Array(Math.abs(Le.step)).fill(1),FIGNER_INSTRUMENT_REALKEY.includes(Le.realKey)&&Me.push(Le)}),l.notes=l.noteType==="#c"?Me:Ae}},y=async()=>{const oe=l.subject+(l.viewIndex===0?"":l.viewIndex);console.log("🚀 ~ subject:模式",oe,l.viewIndex,l.fingeringMode),c.subject=await getFingeringConfig(oe)},A=oe=>new Promise((Ae,Me)=>{const Le=new howler.Howl({src:oe,loop:!0,onload:()=>{Ae(Le)},onloaderror:()=>{Me(new Error("加载音频失败"))}})}),b=async()=>{const oe=/(192|localhost)/.test(location.origin)?"/":location.pathname;l.loadingSoundFonts=!0;try{l.loadingSoundProgress=0;for(let Ae=0;Ae{if(oe.stopPropagation(),!G.listenLock&&!G.showAnswerLoading){if(l.loadingImg=!0,l.fingeringMode==="scaleMode"){["pan-flute","ocarina","whistling"].includes(l.subject)?l.viewIndex=1:l.viewIndex=0;const Ae={"pan-flute":2,ocarina:2,whistling:2,piccolo:2,"hulusi-flute":2,"baroque-recorder":2};l.viewTotal=Ae[l.subject]||1,l.fingeringMode="listenMode"}else l.fingeringMode==="listenMode"?l.fingeringMode="fingeringMode":l.fingeringMode==="fingeringMode"&&(l.fingeringMode="scaleMode",l.viewIndex=0,l.noteType="all");l.tipShow=!1,Y(!0,0),setTimeout(()=>{E(!1)},100)}},E=async(oe=!0)=>{l.loadingDom=!0,g(),l.fingeringMode==="fingeringMode"?l.subject==="pan-flute"?l.viewIndex=3:["pan-flute","ocarina","melodica","whistling"].includes(l.subject)&&(l.viewIndex=1):["pan-flute","ocarina","whistling"].includes(l.subject)&&(l.viewIndex=1);const Ae={"pan-flute":2,ocarina:2,whistling:2,piccolo:2,"hulusi-flute":2,"baroque-recorder":2};l.viewTotal=Ae[l.subject]||1,y(),m(),oe&&await b(),l.loadingDom=!1,l.loadingImg=!1},x=async()=>{try{const Ae=(await api_subjectList({enableFlag:!0,delFlag:0,page:1,rows:999})).data||[],Me=[];Ae.forEach(Le=>{const Ce={text:Le.name,value:"",id:Le.id,children:[]};Array.isArray(Le.instruments)&&Le.instruments.forEach(he=>{Ce.children.push({text:he.name,id:he.id,value:mappingVoicePart(he.code,"INSTRUMENT")})}),Me.push(Ce)}),console.log(l.subject,"data.subject"),l.subjects=Me}catch(oe){console.log(oe,"e")}};onBeforeMount(async()=>{var oe;browser().isApp?state$1.platform="APP":state$1.platform=((oe=r.platform)==null?void 0:oe.toLocaleUpperCase())||"",state$1.platform===IPlatform.PC&&(document.title="听音练习"),await x(),E()});const C=(oe,Ae=!0)=>{if(l.noteAudio&&(l.noteAudio.stop(),l.realKey===oe.realKey)){l.realKey=0,l.noteAudio=null;return}Ae&&(l.realKey=oe.realKey),console.log("key:",oe.realKey,l.soundFonts),l.noteAudio=l.soundFonts[oe.realKey],l.noteAudio&&l.noteAudio.play()},P=()=>{l.noteAudio&&(l.noteAudio.stop(),l.realKey=0,l.noteAudio=null)},k=()=>{if(P(),i.isComponent){e("close");return}else if(state$1.platform===IPlatform.PC)if(console.log(1,r),r.matchMedia==1){window.parent.postMessage({api:"iframe_exit"},"*");return}else{window.close();return}if(!storeData.isApp){window.close();return}api_back()},I=()=>{l.subject==="pan-flute"&&(l.transform.scale=.9,l.transform.startScale=.9)};onMounted(()=>{M(),api_setStatusBarVisibility()});const M=()=>{const oe=document.getElementById("fingeringContainer");I();const Ae=new Hammer.Manager(oe);Ae.add(new Hammer.Pan({threshold:0,pointers:0})),Ae.add(new Hammer.Pinch({threshold:0})).recognizeWith([Ae.get("pan")]),Ae.on("panstart pinchstart",function(Me){l.transform.transition=""}),Ae.on("panmove pinchmove",function(Me){Me.type==="pinchmove"&&(l.transform.scale=Me.scale*l.transform.startScale,l.transform.x=l.transform.startX+Me.deltaX,l.transform.y=l.transform.startY+Me.deltaY),Me.type==="panmove"&&(l.transform.x=l.transform.startX+Me.deltaX,l.transform.y=l.transform.startY+Me.deltaY)}),Ae.on("hammer.input",function(Me){Me.isFinal&&(l.transform.startScale=l.transform.scale,l.transform.startX=l.transform.x,l.transform.startY=l.transform.y)})},T=()=>{l.transform.transition="all 0.3s",nextTick(()=>{l.transform.scale=l.subject==="pan-flute"?.9:1,l.transform.x=0,l.transform.y=0,l.transform.startScale=l.subject==="pan-flute"?.9:1,l.transform.startX=0,l.transform.startY=0})},F=computed(()=>{const oe=l.transform;let Ae=1;return l.subject==="pan-flute"&&(Ae=.9),oe.scale!==Ae||oe.x!==0||oe.y!==0||oe.startScale!==Ae||oe.startX!==0||oe.startY!==0}),D=usePageVisibility();watch(()=>D.value,oe=>{oe==="hidden"&&(clearTimeout(G.timer),G.listenLock=!1,G.listenTipsStatus=!1,G.exampleAnser={},Y(!0,0),P(),K())});const N=oe=>{var Ae,Me,Le;((Ae=oe==null?void 0:oe.data)==null?void 0:Ae.api)==="setPlayState"&&(clearTimeout(G.timer),G.listenLock=!1,G.listenTipsStatus=!1,G.exampleAnser={},Y(!0,0),P(),K(),(Le=(Me=oe==null?void 0:oe.data)==null?void 0:Me.data)!=null&&Le.code&&(l.subject=o,l.viewIndex=0,l.tipShow=!1,l.loadingDom=!0,c.fingeringInfo=subjectFingering(l.subject),l.activeTone={},l.popupActiveTone={},T(),setTimeout(()=>{E()},100)))},O=ref(),B=oe=>{const Ae=O.value.offsetWidth/2;O.value.scrollBy({left:oe==="left"?-Ae:Ae,behavior:"smooth"})},V=reactive({gamut:!1,gamutTimer:null,answer:!1,action:!1}),R=()=>{if(V.action){if(G.listenLock)return;G.resetAction=!0,Y(!0,0)}V.gamut=!1,K(),l.noteType==="all"?l.noteType="#c":l.noteType="all",g(),setTimeout(()=>{G.resetAction=!1},2e3)},Q=async()=>{if(G.resetAction=!1,V.gamut)V.gamut=!1,K();else{O.value.scroll({left:0,top:0,behavior:"smooth"}),V.gamut=!0;const oe=l.notes;let Ae=0;for(let Me=0;Me=O.value.offsetWidth+O.value.offsetWidth/2*Ae-Le.offsetWidth&&(B("right"),Ae++),await _(oe[Me])}setTimeout(()=>{V.gamut=!1,K()},667)}},_=(oe,Ae)=>new Promise(Me=>{V.gamutTimer=setTimeout(()=>{(V.gamut||Ae)&&C(oe),Me(oe)},667)}),K=()=>{clearTimeout(V.gamutTimer),l.noteAudio&&(l.noteAudio.stop(),l.realKey=0,l.noteAudio=null)},G=reactive({exampleAnser:{},standardAnswer:{},showAnswerLoading:!1,listenModeStatus:!1,listenLock:!1,listenTipsStatus:!1,resetAction:!1,userAnswerStatus:0,userAnswer:{},timer:null}),U=async()=>{G.resetAction=!1,!G.listenLock&&(G.showAnswerLoading||(V.action=!0,V.answer=!0,K(),l.fingeringMode==="fingeringMode"?q():l.fingeringMode==="listenMode"&&(G.listenModeStatus?(G.listenLock=!0,await $(G.standardAnswer,1500,!1),K(),G.listenLock=!1):W())))},$=(oe,Ae=1500,Me=!0)=>new Promise(Le=>{C(oe,Me),G.timer=setTimeout(()=>{Le(oe)},Ae)}),q=()=>{const oe=Math.floor(Math.random()*l.notes.length);G.standardAnswer=l.notes[oe],l.realKey=l.notes[oe].realKey,!G.listenModeStatus&&(G.listenModeStatus=!0,G.listenLock=!0,G.listenTipsStatus=!0,G.timer=setTimeout(()=>{G.listenTipsStatus=!1,G.listenLock=!1},2e3))},W=async()=>{G.listenModeStatus=!0,G.listenLock=!0,G.listenTipsStatus=!0;let oe=l.notes.findIndex(Ae=>Ae.realKey===67);G.exampleAnser=l.notes[oe],l.realKey=G.exampleAnser.realKey,ue(G.exampleAnser.realKey),await $(G.exampleAnser),l.realKey=0,G.exampleAnser={},K(),G.timer=setTimeout(async()=>{oe=Math.floor(Math.random()*l.notes.length),G.standardAnswer=l.notes[oe],await $(l.notes[oe],1500,!1),K(),G.listenLock=!1,G.listenTipsStatus=!1},1e3)},xe=async()=>{G.listenLock||(G.showAnswerLoading=!0,ue(G.standardAnswer.realKey),await $(G.standardAnswer),Y(!0,0))},ue=oe=>{const Ae=oe||l.realKey,Me=l.notes.findIndex(Ce=>Ce.realKey===Ae),Le=document.querySelectorAll(".note-class")[Me];if(Le){const Ce=Le.offsetWidth,he=O.value.offsetWidth,Pe=Math.max((Le==null?void 0:Le.offsetLeft)-Ce,0);O.value.scroll({left:Math.max(Pe-he/2,0),top:0,behavior:"smooth"})}},Y=(oe=!0,Ae=2e3)=>{setTimeout(()=>{K(),oe?(G.standardAnswer={},G.showAnswerLoading=!1,G.userAnswerStatus=0,G.userAnswer={},G.listenModeStatus=!1,V.action=!1,V.answer=!1,V.gamut=!1,l.realKey=0):(G.userAnswerStatus=0,G.userAnswer={})},Ae)},J=oe=>{oe.preventDefault(),oe.deltaY>0?(l.transform.scale-=.1,l.transform.scale<=.5&&(l.transform.scale=.5)):(l.transform.scale+=.1,l.transform.scale>=2&&(l.transform.scale=2))};onMounted(()=>{window.addEventListener("message",N);const oe=document.getElementById("fingeringContainer");oe==null||oe.addEventListener("wheel",J)}),onUnmounted(()=>{window.removeEventListener("message",N);const oe=document.getElementById("fingeringContainer");oe==null||oe.removeEventListener("wheel",J),document.title="Ai学练"});const ce=computed(()=>state$1.platform===IPlatform.PC||r.modelType?{paddingTop:"1.3rem",paddingBottom:""}:l.fingeringMode==="scaleMode"?l.subject==="hulusi-flute"?{paddingTop:"1.3rem",paddingBottom:".5rem"}:l.subject==="piccolo"||l.subject==="baroque-recorder"?{paddingTop:"1.3rem",paddingBottom:".5rem"}:l.subject==="pan-flute"?{paddingTop:"1.3rem",paddingBottom:"0"}:l.subject==="ocarina"||l.subject==="whistling"?{paddingTop:"1.3rem",paddingBottom:"0"}:l.subject==="melodica"?{paddingTop:"1.8rem",paddingBottom:"0.2rem"}:{paddingTop:"",paddingBottom:""}:l.subject==="hulusi-flute"?{paddingTop:"1.3rem",paddingBottom:"0rem"}:l.subject==="piccolo"||l.subject==="baroque-recorder"?{paddingTop:"1.3rem",paddingBottom:".5rem"}:l.subject==="pan-flute"?{paddingTop:"1.3rem",paddingBottom:"0"}:l.subject==="ocarina"||l.subject==="whistling"?{paddingTop:"1.3rem",paddingBottom:"0"}:l.subject==="melodica"?{paddingTop:"1.8rem",paddingBottom:"0.2rem"}:{paddingTop:"",paddingBottom:""}),ge=computed(()=>l.fingeringMode==="fingeringMode"?V.action?"换一换":"开始练习":l.fingeringMode==="listenMode"&&V.action?"再听一遍":"开始听音"),Ee=computed(()=>{let oe="",Ae=icons$1.icon_mode;return l.fingeringModeList.forEach(Me=>{Me.value===l.fingeringMode&&(oe=Me.text,Ae=Me.icon)}),{text:oe,icon:Ae}}),Ie=computed(()=>["hulusi-flute","piccolo","baroque-recorder"].includes(l.subject)?1:0),De=oe=>{if(l.realKey===oe.realKey&&!V.action)return{icon:icons$1.icon_btn_ylow,status:!1};if(G.exampleAnser.realKey===oe.realKey)return{icon:icons$1.icon_btn_ylow,status:!1};if(G.standardAnswer.realKey===oe.realKey){if(!V.action)return{icon:icons$1.icon_btn_ylow,status:!1};if(G.showAnswerLoading)return{icon:icons$1.icon_btn_green,status:!0};if(G.userAnswerStatus===1)return{icon:icons$1.icon_btn_green,status:!0}}else if(G.userAnswerStatus===2&&G.userAnswer.realKey===oe.realKey)return{icon:icons$1.icon_btn_red,status:!0};return{icon:icons$1.icon_btn_blue,status:!0}},ie=ref("1"),ae=[{name:"音阶",value:"1"},{name:"功能",value:"2"}],{guidanceShow:H,setGuidanceShow:ve}=useDragGuidance();let pe,ee;r.platform==="pc"&&(ee="changeSubjectShowBoxClass_drag",pe=useDrag([`${ee} .dragTopBox`,`${ee} .dragbomBox`],ee,toRef(l,"changeSubjectShow"),storeData.user.id));let ne,me;return r.platform==="pc"&&(me="tnoteShowBoxClass_drag",ne=useDrag([`${me} .dragTopBox`,`${me} .dragbomBox`],me,toRef(l,"tnoteShow"),storeData.user.id)),()=>{var he,Pe,ye,Ve,Ue,je;let oe,Ae;const Me=((Pe=(he=c.subject)==null?void 0:he.relationship)==null?void 0:Pe[l.realKey])||[],Le=Array.isArray(Me[1])?Me[c.relationshipIndex]:Me,Ce=Array.isArray(Me[1]);return createVNode("div",{class:[styles$5.fingerBox,state$1.platform!==IPlatform.PC&&!r.modelType&&c.fingeringInfo.orientation===1?styles$5.fingerBottom:styles$5.fingerRight,l.linkSource==="class"?styles$5.linkSourceClass:""],onClick:()=>{l.linkSource==="class"&&window.parent.postMessage({api:"clickViewFigner"},"*")}},[r.platform!=="pc"&&createVNode("div",{class:styles$5.head,style:{paddingTop:l.paddingTop&&!browser().ios?l.paddingTop:"",paddingLeft:l.paddingLeft&&!browser().ios?l.paddingLeft:""}},[createVNode("div",{class:styles$5.left},[createVNode("button",{class:[styles$5.backBtn],onClick:()=>k()},[createVNode("img",{src:icons$1.icon_back},null)]),createVNode("div",{class:[styles$5.baseBtn,styles$5.changeInstrumentBtn],onClick:_e=>{_e.stopPropagation(),!V.gamut&&(G.listenLock||(l.changeSubjectShow=!0))}},[createVNode("img",{src:icons$1.icon_change_instrument},null),createVNode("span",null,[createTextVNode("切换乐器")])]),createVNode("div",{class:styles$5.baseBtn,onClick:S},[createVNode("img",{src:Ee.value.icon},null),createVNode("span",null,[Ee.value.text])])])]),createVNode("div",{class:styles$5.fingerContent,style:{paddingTop:l.paddingTop?l.paddingTop:"",paddingLeft:l.paddingLeft?l.paddingLeft:""}},[createVNode("div",{class:styles$5.wrapFinger},[createVNode("div",{id:"fingeringContainer",class:[styles$5.boxFinger,r.platform==="pc"?styles$5.pcBoxFinger:""],style:{paddingTop:ce.value.paddingTop,paddingBottom:ce.value.paddingBottom}},[createVNode("div",{style:{transform:`translate3d(${l.transform.x}px,${l.transform.y}px,0px) scale(${l.transform.scale})`,transition:l.transform.transition},class:[styles$5.fingeringContainer]},[createVNode("div",{class:styles$5.imgs},[!l.loadingImg&&createVNode("img",{src:l.fingeringMode==="scaleMode"?(Ve=(ye=c.subject)==null?void 0:ye.json)==null?void 0:Ve.full:(je=(Ue=c.subject)==null?void 0:Ue.json)==null?void 0:je.full1},null),Le.map((_e,Ke)=>{var $e,ot;const tt=typeof _e=="string"?_e.replace("active-",""):String(_e);return createVNode("img",{"data-index":tt,src:(ot=($e=c.subject)==null?void 0:$e.json)==null?void 0:ot[tt]},null)}),createVNode("div",{style:{left:l.viewIndex==2?"0":"64%"},class:[styles$5.tizhi,Ce&&styles$5.canDisplay],onClick:()=>c.relationshipIndex=c.relationshipIndex===0?1:0},[createTextVNode("替指")]),createVNode("div",{id:"finger-note-2",style:{left:"50%",transform:"translateX(-50%)"},class:styles$5.tizhi,onClick:()=>c.relationshipIndex=c.relationshipIndex===0?1:0},null)])])]),r.platform==="pc"?createVNode("div",{class:styles$5.userTab},[createVNode(Tabs,{active:ie.value,"onUpdate:active":_e=>ie.value=_e,class:styles$5.userTabBox},_isSlot(oe=ae.map(_e=>createVNode(Tab,{title:_e.name,name:_e.value},{default:()=>[_e.value==="1"?createVNode(Fragment,null,[createVNode("div",{class:styles$5.notes,style:{paddingLeft:l.paddingLeft?l.paddingLeft:""}},[G.listenTipsStatus&&createVNode("div",{class:[styles$5.tipsT,l.fingeringMode==="fingeringMode"?styles$5.playTips2:styles$5.playTips]},null),G.userAnswerStatus===1&&createVNode("div",{class:[styles$5.tipsT,styles$5.playSuccess]},null),G.userAnswerStatus===2&&createVNode("div",{class:[styles$5.tipsT,styles$5.playError]},null),G.resetAction&&createVNode("div",{class:[styles$5.tipsT,styles$5.playTips5]},null),createVNode("div",{class:[styles$5.backBtn,styles$5.changeMusBtn],onClick:()=>k()},[createVNode("span",null,[createTextVNode("返回")])]),createVNode("div",{class:styles$5.changeMusBtn,onClick:S},[createVNode("span",null,[Ee.value.text])]),createVNode("div",{class:[styles$5.noteContent,l.fingeringMode!=="scaleMode"&&Ie.value===0&&styles$5.noteContentOther,s.ios?"":styles$5.noteContentWrap,l.huaweiPad&&styles$5.huaweiPad],onClick:Ke=>{Ke.stopPropagation()}},[(l.noteType!=="#c"&&(Ie.value===0||Ie.value===1&&state$1.platform===IPlatform.PC)||Ie.value===1&&state$1.platform===IPlatform.APP)&&createVNode(Button$1,{class:styles$5.noteBtn,onClick:Ke=>{Ke.stopPropagation(),B("left")}},{default:()=>[createVNode(Icon$1,{name:"arrow-left"},null)]}),l.fingeringMode!=="scaleMode"&&createVNode("div",{draggable:!1,class:styles$5.note,onClick:R},[createVNode("img",{draggable:!1,src:l.noteType==="all"?icons$1.icon_btn_orange:icons$1.icon_btn_orange2},null)]),!!l.tones.length&&l.fingeringMode==="scaleMode"&&createVNode(Fragment,null,[c.fingeringInfo.name=="hulusi-flute"?createVNode("div",{id:"finger-note-1",class:[styles$5.note,styles$5.btnGrToggleBtn],onClick:()=>l.tnoteShow=!0},[createVNode("img",{draggable:!1,src:noteImg},null),createVNode("div",{class:styles$5.nameBox},[createVNode("div",{class:styles$5.name},[createTextVNode("全按作")]),createVNode("div",{class:[styles$5.noteKey,styles$5.noteKeyBtn]},[l.activeTone.step>0?createVNode("span",{class:styles$5.dot},null):null,createVNode("div",{class:styles$5.noteName},[createVNode("sup",null,[l.activeTone.mark&&(l.activeTone.mark==="rise"?"#":"b")]),l.activeTone.key]),l.activeTone.step<0?createVNode("span",{class:[styles$5.dot,styles$5.botDot]},null):null])])]):createVNode("div",{id:"finger-note-1",class:[styles$5.note,styles$5.btnGrToggleBtn],onClick:()=>l.tnoteShow=!0},[createVNode("img",{draggable:!1,src:noteImg},null),createVNode("div",null,[createVNode("div",{class:styles$5.name},[createVNode("div",null,[createVNode("sup",null,[l.activeTone.mark&&(l.activeTone.mark==="rise"?"#":"b")]),l.activeTone.name]),createTextVNode("调")])])])]),createVNode("div",{class:styles$5.lastNoteContent},[createVNode("div",{ref:O,class:styles$5.noteBox},[l.notes.map((Ke,tt)=>{const $e=new Array(Math.abs(Ke.step)).fill(1);return createVNode("div",{id:tt==0?"finger-note-0":"",draggable:!1,class:[styles$5.note,"note-class"],key:Ke.realKey,onClick:async()=>{if(!V.gamut&&!G.listenLock&&!G.showAnswerLoading)if(V.action){G.userAnswer=Ke;const ot=Ke.realKey===G.standardAnswer.realKey?1:2;G.userAnswerStatus=ot,G.listenLock=!0,l.realKey=Ke.realKey,await $(Ke,1e3),Y(ot===1,0),l.realKey=0,l.fingeringMode==="fingeringMode"&&ot===2&&setTimeout(()=>{l.realKey=G.standardAnswer.realKey},10),G.listenLock=!1}else C(Ke)}},[createVNode("img",{draggable:!1,src:De(Ke).icon},null),V.action&&(G.showAnswerLoading&&G.standardAnswer.realKey===Ke.realKey||G.userAnswerStatus===1&&G.userAnswer.realKey===Ke.realKey)?createVNode("span",{class:styles$5.showAnswer},null):"",V.action&&G.userAnswerStatus===2&&G.userAnswer.realKey===Ke.realKey?createVNode("span",{class:[styles$5.showAnswer,styles$5.errorAnswer]},null):"",createVNode("div",{class:[styles$5.noteKey,(l.realKey===Ke.realKey&&!V.action||V.action&&G.exampleAnser.realKey===Ke.realKey||V.action&&(G.showAnswerLoading&&G.standardAnswer.realKey===Ke.realKey||G.userAnswerStatus===1&&G.userAnswer.realKey===Ke.realKey)||V.action&&G.userAnswerStatus===2&&G.userAnswer.realKey===Ke.realKey)&&styles$5.keyActive]},[Ke.step>0?$e.map(ot=>createVNode("span",{class:styles$5.dot},null)):null,createVNode("div",{class:styles$5.noteName},[createVNode("sup",null,[Ke.mark&&(Ke.mark==="rise"?"#":"b")]),Ke.key]),Ke.step<0?$e.map(ot=>createVNode("span",{class:styles$5.dot},null)):null])])})])]),(l.noteType!=="#c"&&(Ie.value===0||Ie.value===1&&state$1.platform===IPlatform.PC)||Ie.value===1&&state$1.platform===IPlatform.APP)&&createVNode(Button$1,{class:styles$5.noteBtn,onClick:Ke=>{Ke.stopPropagation(),B("right")}},{default:()=>[createVNode(Icon$1,{name:"arrow"},null)]})])]),l.fingeringMode!=="scaleMode"&&createVNode("div",{class:styles$5.optionBtns,onClick:Ke=>{Ke.stopPropagation()}},[createVNode(Button$1,{class:[styles$5.oBtn,styles$5.gamut,V.action&&styles$5.disabled],round:!0,onClick:Q},{default:()=>[V.gamut?"暂停":"播放音阶"]}),createVNode(Button$1,{class:[styles$5.oBtn,styles$5.play,V.gamut&&styles$5.disabled],round:!0,onClick:U},{default:()=>[ge.value]}),createVNode(Button$1,{class:[styles$5.oBtn,styles$5.success,!V.answer&&styles$5.disabled],round:!0,onClick:xe},{default:()=>[createTextVNode("显示答案")]})])]):createVNode(Fragment,null,[createVNode("div",{class:styles$5.btnBox},[createVNode("div",{class:styles$5.btnCon},[createVNode("div",{class:[styles$5.btnGr],onClick:Ke=>{Ke.stopPropagation(),!V.gamut&&(G.listenLock||(l.changeSubjectShow=!0))}},[createVNode("img",{src:icons$1.icon_change_instrument},null),createVNode("span",null,[createTextVNode("切换乐器")])]),l.subject!=="melodica"&&l.fingeringMode==="scaleMode"&&createVNode("div",{class:styles$5.btnGr,onClick:()=>{l.viewIndex++,l.viewIndex>l.viewTotal&&(["pan-flute","ocarina","whistling"].includes(l.subject)?l.viewIndex=1:l.viewIndex=0),y()}},[createVNode("img",{src:icons$1.icon_toggle},null),createVNode("span",null,[createTextVNode("视图")])]),createVNode("div",{class:styles$5.btnGr,onClick:()=>{T(),l.tipShow=!l.tipShow}},[createVNode("img",{src:icons$1.icon_2_1},null),createVNode("span",null,[createTextVNode("说明")])]),F.value&&createVNode("div",{class:[styles$5.btnGr],onClick:()=>T()},[createVNode("img",{src:icons$1.icon_2_0},null),createVNode("span",null,[createTextVNode("还原")])])])])])]})))?oe:{default:()=>[oe]})]):createVNode(Fragment,null,[createVNode("div",{class:styles$5.notes,style:{paddingLeft:l.paddingLeft?l.paddingLeft:""}},[G.listenTipsStatus&&createVNode("div",{class:[styles$5.tipsT,l.fingeringMode==="fingeringMode"?styles$5.playTips2:styles$5.playTips]},null),G.userAnswerStatus===1&&createVNode("div",{class:[styles$5.tipsT,styles$5.playSuccess]},null),G.userAnswerStatus===2&&createVNode("div",{class:[styles$5.tipsT,styles$5.playError]},null),G.resetAction&&createVNode("div",{class:[styles$5.tipsT,styles$5.playTips5]},null),(l.noteType!=="#c"&&(Ie.value===0||Ie.value===1&&state$1.platform===IPlatform.PC)||Ie.value===1&&state$1.platform===IPlatform.APP)&&createVNode(Button$1,{class:styles$5.noteBtn,onClick:_e=>{_e.stopPropagation(),B("left")}},{default:()=>[createVNode(Icon$1,{name:"arrow-left"},null)]}),createVNode("div",{class:[styles$5.noteContent,l.fingeringMode!=="scaleMode"&&Ie.value===0&&styles$5.noteContentOther,s.ios?"":styles$5.noteContentWrap,l.huaweiPad&&styles$5.huaweiPad],onClick:_e=>{_e.stopPropagation()}},[l.fingeringMode!=="scaleMode"&&createVNode("div",{draggable:!1,class:styles$5.note,onClick:R},[createVNode("img",{draggable:!1,src:l.noteType==="all"?icons$1.icon_btn_orange:icons$1.icon_btn_orange2},null)]),createVNode("div",{class:styles$5.lastNoteContent},[createVNode("div",{ref:O,class:styles$5.noteBox},[l.notes.map((_e,Ke)=>{const tt=new Array(Math.abs(_e.step)).fill(1);return createVNode("div",{id:Ke==0?"finger-note-0":"",draggable:!1,class:[styles$5.note,"note-class"],key:_e.realKey,onClick:async()=>{if(!V.gamut&&!G.listenLock&&!G.showAnswerLoading)if(V.action){G.userAnswer=_e;const $e=_e.realKey===G.standardAnswer.realKey?1:2;G.userAnswerStatus=$e,G.listenLock=!0,l.realKey=_e.realKey,await $(_e,1e3),Y($e===1,0),l.realKey=0,l.fingeringMode==="fingeringMode"&&$e===2&&setTimeout(()=>{l.realKey=G.standardAnswer.realKey},10),G.listenLock=!1}else C(_e)}},[createVNode("img",{draggable:!1,src:De(_e).icon},null),V.action&&(G.showAnswerLoading&&G.standardAnswer.realKey===_e.realKey||G.userAnswerStatus===1&&G.userAnswer.realKey===_e.realKey)?createVNode("span",{class:styles$5.showAnswer},null):"",V.action&&G.userAnswerStatus===2&&G.userAnswer.realKey===_e.realKey?createVNode("span",{class:[styles$5.showAnswer,styles$5.errorAnswer]},null):"",createVNode("div",{class:[styles$5.noteKey,(l.realKey===_e.realKey&&!V.action||V.action&&G.exampleAnser.realKey===_e.realKey||V.action&&(G.showAnswerLoading&&G.standardAnswer.realKey===_e.realKey||G.userAnswerStatus===1&&G.userAnswer.realKey===_e.realKey)||V.action&&G.userAnswerStatus===2&&G.userAnswer.realKey===_e.realKey)&&styles$5.keyActive]},[_e.step>0?tt.map($e=>createVNode("span",{class:styles$5.dot},null)):null,createVNode("div",{class:styles$5.noteName},[createVNode("sup",null,[_e.mark&&(_e.mark==="rise"?"#":"b")]),_e.key]),_e.step<0?tt.map($e=>createVNode("span",{class:styles$5.dot},null)):null])])})])])]),(l.noteType!=="#c"&&(Ie.value===0||Ie.value===1&&state$1.platform===IPlatform.PC)||Ie.value===1&&state$1.platform===IPlatform.APP)&&createVNode(Button$1,{class:styles$5.noteBtn,onClick:_e=>{_e.stopPropagation(),B("right")}},{default:()=>[createVNode(Icon$1,{name:"arrow"},null)]})]),l.fingeringMode!=="scaleMode"&&createVNode("div",{class:styles$5.optionBtns,onClick:_e=>{_e.stopPropagation()}},[createVNode(Button$1,{class:[styles$5.oBtn,styles$5.gamut,V.action&&styles$5.disabled],round:!0,onClick:Q},{default:()=>[V.gamut?"暂停":"播放音阶"]}),createVNode(Button$1,{class:[styles$5.oBtn,styles$5.play,V.gamut&&styles$5.disabled],round:!0,onClick:U},{default:()=>[ge.value]}),createVNode(Button$1,{class:[styles$5.oBtn,styles$5.success,!V.answer&&styles$5.disabled],round:!0,onClick:xe},{default:()=>[createTextVNode("显示答案")]})])])]),r.platform!=="pc"&&createVNode("div",{class:styles$5.fixedRightBtns,style:{paddingTop:l.paddingTop?l.paddingTop:"",paddingLeft:l.paddingLeft?l.paddingLeft:""},onClick:_e=>{_e.stopPropagation()}},[createVNode("div",{class:styles$5.rightBtn},[l.subject!=="melodica"&&l.fingeringMode==="scaleMode"&&createVNode("div",{class:styles$5.baseBtn,onClick:()=>{l.viewIndex++,l.viewIndex>l.viewTotal&&(["pan-flute","ocarina","whistling"].includes(l.subject)?l.viewIndex=1:l.viewIndex=0),y()}},[createVNode("img",{src:icons$1.icon_toggle},null),createVNode("span",null,[createTextVNode("视图")])]),createVNode("div",{class:styles$5.baseBtn,onClick:()=>{T(),l.tipShow=!l.tipShow}},[createVNode("img",{src:icons$1.icon_2_1},null),createVNode("span",null,[createTextVNode("说明")])]),!!l.tones.length&&l.fingeringMode==="scaleMode"&&createVNode(Fragment,null,[c.fingeringInfo.name=="hulusi-flute"?createVNode("div",{id:"finger-note-1",class:[styles$5.baseBtn,styles$5.toggleBtnhulusi,styles$5.active],onClick:()=>l.tnoteShow=!0},[createVNode("div",null,[createTextVNode("全按作"),createVNode("div",{class:[styles$5.noteKey,styles$5.noteKeyBtn]},[l.activeTone.step>0?createVNode("span",{class:[styles$5.topDot,styles$5.dot]},null):null,createVNode("div",{class:styles$5.noteName},[createVNode("sup",null,[l.activeTone.mark&&(l.activeTone.mark==="rise"?"#":"b")]),l.activeTone.key]),l.activeTone.step<0?createVNode("span",{class:[styles$5.bottomDot,styles$5.dot]},null):null])]),createVNode("img",{src:icons$1.icon_arrow},null)]):createVNode("div",{id:"finger-note-1",class:[styles$5.baseBtn,styles$5.toggleBtnhulusi2,styles$5.active],onClick:()=>l.tnoteShow=!0},[createVNode("div",{class:styles$5.oterhD},[createVNode("div",null,[createVNode("div",{style:{marginTop:"-4px"}},[createVNode("sup",null,[l.activeTone.mark&&(l.activeTone.mark==="rise"?"#":"b")]),l.activeTone.name]),createTextVNode("调")]),createVNode("img",{src:icons$1.icon_arrow},null)])])])]),createVNode("div",{class:[styles$5.baseBtn,!F.value&&styles$5.resetBtn],style:{marginTop:"8px"},onClick:()=>T()},[createVNode("img",{src:icons$1.icon_2_0},null),createVNode("span",null,[createTextVNode("还原")])])]),r.platform==="pc"&&l.tipShow&&createVNode("div",{class:[styles$5.tipsOverlay,l.tipShow?styles$5.tipsOverlayBg:""],onClick:()=>{l.tipShow=!1}},null),createVNode("div",{class:[styles$5.tips,l.loadingDom?styles$5.hiddens:"",l.tipShow?"":styles$5.tipHidden,r.platform==="pc"&&l.tipShow?styles$5.tipsPcBg:""]},[createVNode("div",{class:styles$5.tipTitle},[createVNode("div",{class:styles$5.tipTitleName},[c.fingeringInfo.code,createTextVNode("使用说明")]),createVNode(Button$1,{class:styles$5.tipClose,onClick:_e=>{_e.stopPropagation(),l.tipShow=!1}},{default:()=>[createVNode(Icon$1,{name:"cross",size:19,color:"#fff"},null)]})]),createVNode("div",{class:styles$5.iconBook},null),createVNode("div",{class:styles$5.tipContentbox},[createVNode("div",{class:styles$5.tipContent},[l.tips.map((_e,Ke)=>createVNode("div",{class:styles$5.tipItem},[createVNode("div",{class:styles$5.iconWrap},[createVNode("div",{class:styles$5.tipItemIcon},[Ke+1])]),createVNode("div",null,[_e.name,createTextVNode(": "),_e.realName])]))])])]),l.loadingSoundFonts&&createVNode("div",{class:styles$5.loading},[createVNode("div",{class:styles$5.loadingWrap},[createVNode("img",{class:styles$5.loadingIcon,src:icon_loading_img},null),createVNode(Progress,{percentage:l.loadingSoundProgress},null),createVNode("div",{class:styles$5.loadingTip},[createTextVNode("加载中,请稍后…")])])])]),createVNode(Popup,{class:["tonePopup",me],style:r.platform==="pc"?ne.styleDrag.value:{},show:l.tnoteShow,"onUpdate:show":_e=>l.tnoteShow=_e,position:state$1.platform===IPlatform.PC?"center":!r.modelType&&c.fingeringInfo.orientation===1?"bottom":"right"},{default:()=>[createVNode("div",{class:styles$5.tones},[createVNode("div",{class:[styles$5.toneTitle,"toneTitle_pc"]},[createVNode("div",{class:styles$5.tipTitleName},[createTextVNode("移调")]),createVNode(Button$1,{class:styles$5.tipClose,onClick:_e=>{_e.stopPropagation(),l.tnoteShow=!1}},{default:()=>[createVNode(Icon$1,{name:"cross",size:19,color:"#fff"},null)]})]),createVNode("div",{class:[styles$5.tipContentbox,"tipContentbox_pc"]},[createVNode("div",{class:[styles$5.tipContent,"tipContent_pc"]},[createVNode("div",{class:[styles$5.tipWrap,"tipWrap_pc"]},[createVNode(Space,{size:0,class:styles$5.toneContent},_isSlot(Ae=l.tones.map(_e=>(new Array(Math.abs(_e.step)).fill(1),createVNode(Button$1,{class:[c.fingeringInfo.name=="hulusi-flute"&&styles$5.hulusiBtn],round:!0,plain:!0,type:l.popupActiveTone.realName===_e.realName?"primary":"default",onClick:Ke=>{Ke.stopPropagation(),l.popupActiveTone=_e,d()}},{default:()=>[c.fingeringInfo.name=="hulusi-flute"?createVNode("div",{style:{display:"flex",alignItems:"center"}},[createTextVNode("全按作"),createVNode("div",{class:[styles$5.noteKey,styles$5.hulusiNoteKey]},[_e.step>0?createVNode("span",{class:styles$5.dot},null):null,createVNode("div",{class:styles$5.noteName,style:{fontSize:"0.25rem"}},[createVNode("sup",null,[_e.mark&&(_e.mark==="rise"?"#":"b")]),_e.key]),_e.step<0?createVNode("span",{class:styles$5.dot},null):null])]):createVNode("div",{class:styles$5.noteName},[createVNode("sup",null,[_e.mark&&(_e.mark==="rise"?"#":"b")]),_e.name])]}))))?Ae:{default:()=>[Ae]})]),createVNode("div",{class:[styles$5.toneAction,"toneAction_pc"]},[createVNode("img",{onClick:_e=>{_e.stopPropagation(),l.tnoteShow=!1},src:icons$1.icon_action_cancel},null),createVNode("img",{onClick:_e=>{_e.stopPropagation(),l.activeTone=l.popupActiveTone,d(),l.tnoteShow=!1},src:icons$1.icon_action_confirm},null)])])])]),r.platform==="pc"&&createVNode(Fragment,null,[createVNode("div",{class:[styles$5.dragTopBox,"dragTopBox"]},null),createVNode(Dragbom,{showGuide:H.value,onGuideDone:ve},null)])]}),createVNode(Popup,{style:r.platform==="pc"?pe.styleDrag.value:{},show:l.changeSubjectShow,"onUpdate:show":_e=>l.changeSubjectShow=_e,class:[styles$5.changeSubjectPopup,ee],onClick:_e=>{_e.stopPropagation()}},{default:()=>[createVNode(ChangeSubject,{subjectList:l.subjects,subject:l.subject,onClose:()=>l.changeSubjectShow=!1,onConfirm:_e=>{if(l.subject===_e){l.changeSubjectShow=!1;return}const Ke=JSON.parse(JSON.stringify(l.subject));l.subject=_e,l.viewIndex=0,l.tipShow=!1,l.loadingDom=!0,c.fingeringInfo=subjectFingering(l.subject),l.activeTone={},T(),Y(!0,0),l.changeSubjectShow=!1,setTimeout(()=>{const tt=(["hulusi-flute","piccolo","baroque-recorder"].includes(Ke),0);Ie.value!==tt&&(l.paddingTop="",l.paddingLeft=""),E()},100)}},null),r.platform==="pc"&&createVNode(Fragment,null,[createVNode("div",{class:[styles$5.dragTopBox,"dragTopBox"]},null),createVNode(Dragbom,{showGuide:H.value,onGuideDone:ve},null)])]}),i.show&&!l.loading&&!l.loadingSoundFonts&&createVNode(GuideIndex,{fingeringMode:l.fingeringMode,showGuide:!1,list:["finger"]},null)])}}}),index=Object.freeze(Object.defineProperty({__proto__:null,default:ViewFigner},Symbol.toStringTag,{value:"Module"})),authorName="_authorName_1m8k1_1",title="_title_1m8k1_4",authorCon="_authorCon_1m8k1_19",author="_author_1m8k1_1",styles$1={authorName,title,authorCon,author},AuthorName=defineComponent({name:"authorName",setup(){const i=computed(()=>state$1.musicLyricist?state$1.musicComposer+" / "+state$1.musicLyricist:state$1.musicComposer);return()=>createVNode(Fragment,null,[!smoothAnimationState.isShow.value&&createVNode("div",{class:["authorName",styles$1.authorName]},[createVNode("div",{class:styles$1.title},[createVNode(NoticeBar,{text:state$1.examSongName,background:"none"},null)]),createVNode("div",{class:styles$1.authorCon},[createVNode("div",{class:styles$1.author},[state$1.isSingleLine?createVNode(Fragment,null,[state$1.musicLyricist&&createVNode(NoticeBar,{text:state$1.musicLyricist,background:"none"},null),state$1.musicComposer&&createVNode(NoticeBar,{text:state$1.musicComposer,background:"none"},null)]):createVNode(Fragment,null,[i.value&&createVNode(NoticeBar,{text:i.value,background:"none"},null)])])])])])}}),emptyMusic="_emptyMusic_pi1dj_1",emptyMusicBox="_emptyMusicBox_pi1dj_13",img="_img_pi1dj_18",tit="_tit_pi1dj_22",backBtn="_backBtn_pi1dj_29",styles={emptyMusic,emptyMusicBox,img,tit,backBtn},empty=""+new URL("../png/empty-9b9d0b72.png",import.meta.url).href,isEmptyMusicShow=ref(!1),EmptyMusic=defineComponent({name:"emptyMusic",setup(){const i=getQuery(),e=browser(),r=()=>{if(HANDLE_WORK_ADD(),!storeData.isApp){window.close();return}if((e.iPhone||e.ios)&&i.workRecord){setTimeout(()=>{api_back()},550);return}api_back()};return()=>createVNode(Fragment,null,[isEmptyMusicShow.value&&createVNode("div",{class:styles.emptyMusic},[createVNode("div",{class:styles.emptyMusicBox},[createVNode("img",{class:styles.img,src:empty},null),createVNode("div",{class:styles.tit},[createTextVNode("曲目已失效")]),createVNode("div",{class:styles.backBtn,onClick:r},[createTextVNode("返回")])])])])}}),DelayCheck=defineAsyncComponent(()=>__vitePreload(()=>import("./index-5c370b7b.js"),["./index-5c370b7b.js","..\\css\\index-ae68b783.css"],import.meta.url)),setNoteHalfTone=i=>{var r;const e=["hulusi-flute"];if(!((r=state$1.fingeringInfo)!=null&&r.name)||!e.includes(state$1.fingeringInfo.name))return i;for(let s=0;s{const d=await isSpecialShapedScreen();if(d!=null&&d.content){const{isSpecialShapedScreen:y,notchHeight:A}=d.content;y&&(e.paddingLeft="25px")}};onBeforeMount(async()=>{var y;console.time("渲染加载耗时"),api_keepScreenLongLight(),r(),api_setStatusBarVisibility();const d=store_legacy.get("musicscoresetting");if(d&&(state$1.setting=d,state$1.setting.beatVolume=50,state$1.setting.camera)){const A=await api_openCamera();(y=A==null?void 0:A.content)!=null&&y.reson&&(state$1.setting.camera=!1,store_legacy.set("musicscoresetting",state$1.setting))}}),onMounted(async()=>{window.appName="colexiu";const d=i.id||"43554";state$1.isPreView=i.isPreView,state$1.isPreView&&(state$1.zoom=.65),state$1.isSingleLine=i.isSingleLine==="true";try{await getMusicDetail(d)}catch(y){console.error(y),isEmptyMusicShow.value=!0;return}e.isLoading=!1,state$1.isShowFingering||(state$1.setting.displayFingering=!1)});const s=d=>{var b,S,E,x,C;api_cloudLoading(),console.timeEnd("渲染加载耗时"),e.skeletonLoading=!1,state$1.osmd=d,state$1.originSpeed===0&&(state$1.originSpeed=state$1.speed=d.bpm||d.Sheet.userStartTempoInBPM||100);const y=(store_legacy.get("speeds")||{})[state$1.examSongId]||state$1.speed||d.bpm||d.Sheet.userStartTempoInBPM;y&&handleSetSpeed(y),setCustomGradual(),setCustomNoteRealValue(),state$1.times=formateTimes(d),state$1.times=setNoteHalfTone(state$1.times),console.log("🚀 ~ state.times:",state$1.times,state$1.subjectId,state$1),state$1.isSingleLine&&(addNoteBBox(state$1.times),initSmoothAnimation());const A=((b=state$1.times[state$1.times.length-1||0])==null?void 0:b.endtime)||0;state$1.isAppPlay&&initMidi(A,state$1.midiUrl),state$1.measureTime=((S=state$1.times[0])==null?void 0:S.measureLength)||0;try{metronomeData.metro=new Metronome,metronomeData.metro.init(state$1.times)}catch(P){}if(i.isbeatTimes){const{isOpenMetronome:P,isSingOpenMetronome:k}=state$1,{xmlMp3BeatFixTime:I}=state$1.times[0],M=[],T=metronomeData.metroMeasure.map(D=>{const N=[],O=D.map(B=>{let V=B.time;return k&&!P?V+=I:!k&&P&&(V-=I),N.push(V),B.time});return M.push(N),O});state$1.fixtime=0,state$1.times.map(D=>{D.time=D.xmlNoteTime,D.endtime=D.xmlNoteEndTime,D.fixtime=0}),metronomeData.metro.calculation(state$1.times);const F=metronomeData.metroMeasure.map(D=>D.map(O=>O.time));throw console.log("webApi_beatTimes",{beatTime:T,singBeatTime:M,mingBeatTime:F}),window.parent.postMessage({api:"webApi_beatTimes",data:JSON.stringify({beatTime:T,singBeatTime:M,mingBeatTime:F})},"*"),new Error("webApi_beatTimes 完成")}state$1.music||(state$1.accompany?state$1.playSource="background":(state$1.fanSong?(state$1.playType="sing",state$1.playSource="music"):state$1.banSong?(state$1.playType="sing",state$1.playSource="background"):state$1.mingSong&&(state$1.playType="sing",state$1.playSource="mingSong"),handlerModeChange("play","music"))),handleInitTick(((C=(x=(E=d==null?void 0:d.Sheet)==null?void 0:E.SheetPlaybackSetting)==null?void 0:x.Rhythm)==null?void 0:C.Numerator)||4),state$1.playBtnDirection=i.imagePos==="right"?"right":"left",state$1.isAttendClass=i.imagePos==="left"||i.imagePos==="right",state$1.musicScoreBtnDirection=state$1.playBtnDirection,state$1.musicRendered=!0,evaluatCreateMusicPlayer(),resetPlaybackToStart()},o=computed(()=>{var d,y,A;return state$1.setting.displayFingering&&((d=state$1.fingeringInfo)!=null&&d.name)?state$1.fingeringInfo.direction==="transverse"?{container:{paddingBottom:e.headerHide?state$1.fingeringInfo.height:(y=state$1.fingeringInfo.scaleData)==null?void 0:y.offset},fingerBox:e.headerHide?{height:state$1.fingeringInfo.height}:{height:state$1.fingeringInfo.height,transform:`scale(${(A=state$1.fingeringInfo.scaleData)==null?void 0:A.scale})`}}:(console.log("指法",state$1.playBtnDirection,state$1.platform),state$1.platform===IPlatform.PC?{container:{paddingRight:state$1.playBtnDirection==="right"?"initial":state$1.fingeringInfo.width,paddingLeft:state$1.playBtnDirection==="right"?state$1.fingeringInfo.width:"initial"},fingerBox:{position:"absolute",width:state$1.fingeringInfo.width,height:"100%",right:state$1.playBtnDirection==="right"?"initial":0,left:state$1.playBtnDirection==="right"?0:"initial",top:0}}:{container:{paddingRight:state$1.fingeringInfo.width},fingerBox:{position:"absolute",width:state$1.fingeringInfo.width,height:"100%",right:0,top:0}}):{container:{},fingerBox:{}}});watch(()=>state$1.setting.displayFingering,()=>{state$1.fingeringInfo.direction==="vertical"&&(state$1.musicScoreBtnDirection=state$1.playBtnDirection)}),watch(()=>state$1.setting.soundEffect,()=>{store_legacy.set("musicscoresetting",state$1.setting)});const a=d=>{window.parent.postMessage({api:"headerTogge",playState:d},"*")};watch(()=>state$1.playState,()=>{e.headerHide=state$1.playState==="play",a(state$1.playState)}),watch(()=>e.fingerPreView,()=>{console.log(2342),window.parent.postMessage({api:"api_fingerPreView",state:e.fingerPreView},"*")});const l=usePageVisibility();watch(()=>l.value,d=>{d==="hidden"&&state$1.playState==="play"&&togglePlay("paused")});const c=browser(),u=()=>{if(i.modelType||(e.orientation=state$1.fingeringInfo.orientation||0,api_setRequestedOrientation(e.orientation)),state$1.playState==="play"){togglePlay("paused"),setTimeout(()=>{e.fingerPreView=!0},500);return}e.fingerPreView=!0},m=()=>{!i.modelType&&e.orientation==1&&api_setRequestedOrientation(0),e.fingerPreView=!1,e.fingerPreViewGuide=!1},g=computed(()=>{const d=state$1.modeType;if(d==="practise")return styles$9.practise;if(d==="evaluating")return styles$9.evaluating;if(d==="follow")return styles$9.follow});return()=>{var d;return createVNode("div",{class:[styles$9.detail,g.value,state$1.setting.eyeProtection&&"eyeProtection",state$1.platform===IPlatform.PC&&state$1.zoom>.8&&styles$9.PC,state$1.isPreView&&styles$9.preViewDetail],style:{paddingLeft:e.paddingLeft,background:state$1.setting.camera?`rgba(${state$1.setting.eyeProtection?"253,244,229":"255,255,255"} ,${state$1.setting.cameraOpacity/100}) !important`:""}},[createVNode(Transition,{name:"van-fade"},{default:()=>[e.skeletonLoading&&createVNode("div",{class:styles$9.skeleton},[createVNode(Skeleton,{row:8},null)])]}),createVNode(EmptyMusic,null,null),!state$1.isPreView&&createVNode("div",{class:[styles$9.headHeight,e.headerHide&&styles$9.headHide]},[state$1.musicRendered&&createVNode(HeaderTop,null,null)]),createVNode("div",{id:"scrollContainer",style:{...o.value.container},class:[styles$9.container,!state$1.setting.displayCursor&&"hideCursor",c.xiaomi&&styles$9.xiaomi,state$1.platform===IPlatform.PC&&styles$9.pcContainer],onClick:y=>{y.stopPropagation(),state$1.playState==="play"&&(e.headerHide=!e.headerHide)}},[!e.isLoading&&createVNode(MusicScore,{ref:musicScoreRef,musicColor:"#FFFFFF",showPartNames:state$1.isCombineRender,onRendered:s},{default:()=>[createVNode(AuthorName,null,null),!e.isLoading&&!e.skeletonLoading&&createVNode(Tick,null,null)]}),state$1.setting.displayFingering&&((d=state$1.fingeringInfo)==null?void 0:d.name)&&!state$1.isPreView&&state$1.isShowFingering&&createVNode("div",{style:{...o.value.fingerBox},class:styles$9.fingeringCon},[createVNode(Fingering,{style:{background:state$1.setting.camera?`rgba(${state$1.setting.eyeProtection?"253,244,229":"255,255,255"} ,${state$1.setting.cameraOpacity/100})`:""},onOpen:()=>u()},null)])]),!e.isLoading&&!e.skeletonLoading&&createVNode(AudioList,null,null),!e.isLoading&&!e.skeletonLoading&&evaluatingData.preloadJson&&!evaluatingData.jsonLoadDone&&createVNode("div",{class:styles$9.preJson},[createVNode(DelayCheck,{isPreLoad:!0},null)]),state$1.modeType==="evaluating"&&createVNode(Fragment,null,[createVNode(Evaluating,null,null),evaluatingData.rendered&&createVNode(EvaluatModel,null,null)]),state$1.modeType==="follow"&&createVNode(Fragment,null,[createVNode(FollowPractice,null,null),createVNode(FollowModel,null,null)]),!i.lessonTrainingId&&!i.questionId&&state$1.isConcert&&createVNode(ToggleMusicSheet,null,null),state$1.musicRendered&&!state$1.isPreView&&createVNode(Fragment,null,[storeData.isApp&&createVNode(RecordingTime,null,null),i.workRecord&&createVNode(WorkIndex,null,null),isMusicList.value&&createVNode(TheMusicList,null,null)]),createVNode(Popup,{zIndex:5050,teleport:"body",show:e.fingerPreView,"onUpdate:show":y=>e.fingerPreView=y,position:"bottom",onClosed:()=>{e.fingerPreViewAnimation=!1},onOpen:()=>{e.fingerPreViewAnimation=!0},onOpened:()=>{e.fingerPreViewGuide=!0}},{default:()=>[e.fingerPreViewAnimation&&createVNode(ViewFigner,{show:e.fingerPreViewGuide,subject:state$1.fingeringInfo.name,isComponent:!0,onClose:m},null)]})])}}}),query=getQuery();var EnumMusicRenderType=(i=>(i.staff="staff",i.firstTone="firstTone",i.fixedTone="fixedTone",i))(EnumMusicRenderType||{});const musicscoresettingKey="musicscoresetting";var IPlatform=(i=>(i.APP="APP",i.PC="PC",i))(IPlatform||{});const classids=[1,2,3,4,6,7,8,9,10,11,12,13,14,15,16,17,30,31,35,36,38,108,150,151,152,153,154,155,156,157,158,178,179,180,181,182],musicalInstrumentCodeInfo=[{name:"长笛",code:"Flute",id:1},{name:"短笛",code:"Piccolo",id:2},{name:"单簧管",code:"Clarinet",id:3},{name:"低音单簧管",code:"Bass Clarinet",id:4},{name:"中音萨克斯",code:"Alto Saxophone",id:5},{name:"次中音萨克斯",code:"Tenor Saxophone",id:6},{name:"高音萨克斯",code:"Soprano Saxophone",id:7},{name:"上低音萨克斯",code:"Baritone Saxophone",id:8},{name:"双簧管",code:"Oboe",id:9},{name:"大管",code:"Bassoon",id:10},{name:"小号",code:"Trumpet",id:11},{name:"圆号",code:"Horn",id:12},{name:"长号",code:"Trombone",id:13},{name:"上低音号",code:"Baritone",id:14},{name:"次中音号",code:"Euphonium",id:15},{name:"大号",code:"Tuba",id:16},{name:"钢琴",code:"Piano",id:17},{name:"电钢琴",code:"Electronical Piano",id:18},{name:"钢片琴",code:"Glockenspiel",id:19},{name:"小提琴",code:"Violin",id:20},{name:"中提琴",code:"Viola",id:21},{name:"大提琴",code:"Violoncello",id:22},{name:"低音提琴",code:"Contrabass",id:23},{name:"架子鼓",code:"Drum Set",id:24},{name:"小鼓",code:"Snare Drum",id:25},{name:"马林巴",code:"Marimba",id:26},{name:"颤音琴",code:"Vibraphone",id:27},{name:"钟琴",code:"Chimes",id:28},{name:"木琴",code:"Xylophone",id:29},{name:"管钟",code:"Tubular Bells",id:30},{name:"定音鼓",code:"Timpani",id:31},{name:"键盘",code:"Mallets",id:32},{name:"排箫",code:"Panpipes",id:33},{name:"陶笛",code:"Ocarina",id:34},{name:"葫芦丝",code:"Woodwind",id:35},{name:"口风琴",code:"Nai",id:36},{name:"德式竖笛",code:"Tenor Recorder",id:37},{name:"英式竖笛",code:"Baroque Recorder",id:38},{name:"高音陶笛",code:"Whistling",id:39}],state=reactive({platform:"",appName:"",musicRenderType:"staff",musicRendered:!1,detailId:"",xmlUrl:"",subjectId:0,trackId:0,categoriesId:0,categoriesName:"",enableEvaluation:!0,enableNotation:!1,examSongId:"",cbsExamSongId:"",examSongName:"",coverImg:"",extConfigJson:{},extStyleConfigJson:{},isOpenMetronome:!1,isSingOpenMetronome:!1,isShowFingering:!1,music:"",accompany:"",fanSong:"",banSong:"",mingSong:"",beatSong:{music:"",accompany:"",fanSong:"",banSong:"",mingSong:""},midiUrl:"",parentCategoriesId:0,musicSheetCategoriesId:0,bizMusicCategoryId:0,playMode:"MP3",speed:0,originSpeed:0,playIngSpeed:0,track:"",partIndex:0,needTick:!1,needSingTick:!1,osmd:null,isSpecialBookCategory:!1,playState:"paused",playEnd:!1,playType:"play",playSource:"music",playProgress:0,activeNoteIndex:0,activeMeasureIndex:0,sectionStatus:!1,section:[],sectionBoundingBoxs:[],isOpenPrepare:!1,sectionFirst:null,times:[],modeType:"practise",setting:{soundEffect:!0,eyeProtection:!1,camera:!1,cameraOpacity:70,repeatAutoPlay:!0,displayFingering:!0,displayCursor:!0,frequency:0,evaluationDifficulty:"BEGINNER",saveToAlbum:!0,enableAccompaniment:!0,reactionTimeMs:0,beatVolume:50},baseFrequency:440,fixtime:0,evXmlBeginTime:0,secondEvXmlBeginTime:0,evXmlBeginArr:[],fingeringInfo:{},scrollContainer:"musicAndSelection",isPercussion:!1,evaluationStandard:"",repeatedBeats:0,partListNames:[],gradual:[],gradualVersion:GradualVersion.BASE,gradualTimes:null,multitrack:0,zoom:.8,musicZoom:1,isSelectMeasureMode:!1,isReport:!1,isHideEvaluatReportSaveBtn:!1,isConcert:!1,userChooseEndIndex:0,repeatInfo:[],canSelectTracks:[],subjectCodeId:0,musicalCodeId:0,musicalCode:"",isCombineRender:!1,measureTime:0,beatStartTime:0,isPreView:!1,isEvaluatReport:!1,midiPlayIniting:!1,songs:{},isAppPlay:!1,audiosInstance:null,durationNum:0,midiSectionStart:0,audioDone:!1,isSingleLine:!1,isEvxml:!1,noTimes:[],playBtnDirection:"left",musicScoreBtnDirection:"right",isAttendClass:!1,guideInfo:null,noteCoords:[],specialPosInit:!1,paymentType:null,defaultModeType:1,maxLyricNum:0,vfmeasures:[],musicComposer:"",musicLyricist:"",loadingText:"音频资源加载中,请稍后…"});browser();const customData=reactive({customNoteRealValue:[],customNoteCurrentTime:!1}),setStep=()=>{if(state.playState!=="play"){console.log("暂停播放");return}let i=Date.now();requestAnimationFrame(()=>{Date.now()-i<16.7?(handlePlaying(),setStep()):setTimeout(()=>{handlePlaying(),setStep()},16.7)})},onPlay=()=>{console.log("开始播放","音频总时长:",getAudioDuration()),state.playEnd=!1,setStep()},autoResetPlay=()=>{state.modeType==="practise"&&(skipNotePlay(0,!0),state.setting.repeatAutoPlay&&(scrollViewNote(),setTimeout(()=>{togglePlay("play")},1e3)))},onEnded=()=>{console.log("音频播放结束"),state.playEnd=!0,state.playState="paused",audioListStart(state.playState),handleEndEvaluat(!0),autoResetPlay()},handlePlaying=()=>{var s;const i=getAudioCurrentTime(),e=getAudioDuration();state.playProgress=i/e*100;let r=getNote(i);if(r&&state.modeType==="practise"&&state.playState==="play"&&r.measureSpeed&&r.measureSpeed!==state.playIngSpeed){const o=state.speed/state.originSpeed;state.playIngSpeed=Math.ceil(o*r.measureSpeed)||state.speed}else state.modeType==="practise"&&state.playState==="play"&&r&&!r.measureSpeed&&(state.playIngSpeed=state.speed);if(state.playIngSpeed=state.playIngSpeed||state.speed,r){if(state.sectionStatus&&state.section.length===2){const o=state.sectionFirst?state.sectionFirst:state.section[0],a=state.section[1];if(state.repeatInfo.length){const l=verifyCanRepeat(state.section[0].MeasureNumberXML,state.section[1].MeasureNumberXML),c=l.repeatIdx==-1?0:l.repeatIdx;if(state.modeType==="practise"&&!l.canRepeat&&state.section[1].MeasureNumberXML>state.repeatInfo[c].end){const u=state.times[r.i-1];if(u&&u.MeasureNumberXML>r.MeasureNumberXML){const m=state.times.find(g=>g.MeasureNumberXML===u.MeasureNumberXML+1);if(m){setAudioCurrentTime(m.time,m.i),gotoNext(m);return}}}}if(i-a.endtime>=0){if(console.log("选段播放结束",state.setting.repeatAutoPlay),state.modeType==="evaluating"&&state.isSelectMeasureMode){onEnded();return}if(state.modeType==="practise"&&state.sectionStatus){onEnded(),resetPlaybackToStart();return}r=o,setAudioCurrentTime(o.time,o.i)}}gotoNext(r)}(s=metronomeData.metro)==null||s.sound(i),state.isSingleLine&&moveSmoothAnimationByPlayTime()},skipNotePlay=async(i,e=!1)=>{var o;const r=state.times[i];let s=r.time;e&&(s=0),r&&(setAudioCurrentTime(s,i),gotoNext(r,!0),(o=metronomeData.metro)==null||o.sound(s),state.isAppPlay&&(await api_cloudSetCurrentTime({currentTime:s*1e3,songID:state.examSongId}),audioData$1.progress=s,state.midiSectionStart=s))},togglePlay=async(i,e)=>{if(!state.isAppPlay&&!state.audioDone){e!=="courseware"&&showToast("音频资源加载中,请稍后");return}if((i||(state.playState==="paused"?"play":"paused"))==="play"&&state.modeType==="practise"&&state.playMode!=="MIDI"&&(console.log("设置音源"),changeSongSourceByBate(metronomeData.disable)),state.isAppPlay){if(i==="paused"){await api_cloudSuspend({songID:state.examSongId}),state.playState="paused";return}skipNotePlay(state.activeNoteIndex,!1),await api_cloudChangeSpeed({speed:state.modeType==="evaluating"?state.originSpeed:state.speed,originalSpeed:state.originSpeed,songID:state.examSongId});const r=await api_cloudGetMediaStatus(),s=(r==null?void 0:r.content.status)==="suspend"?"play":"paused";state.playState=s}else state.playState=i||(state.playState==="paused"?"play":"paused");if(state.playState==="play"&&state.sectionStatus&&state.section.length==2&&state.playProgress===0&&resetPlaybackToStart(),state.playState==="paused"&&closeTick(),state.playState==="play"&&getAudioCurrentTime()===0&&(state.playType==="play"&&state.needTick||state.playType==="sing"&&state.needSingTick))if(state.playType==="play"&&!state.isOpenMetronome||state.playType==="sing"&&!state.isSingOpenMetronome){if(!await handleStartTick())return state.playState="paused",!1}else handleStartTick();return state.playState=="play"&&state.sectionStatus&&state.section.length<2&&clearSelection(),audioListStart(state.playState),!0},handleStopPlay=()=>{state.playState="paused",audioListStart(state.playState)},resetPlaybackToStart=()=>{var i;if(state.sectionStatus&&state.section.length===2){state.section=formateSelectMearure(state.section);return}else metronomeData.activeMetro=((i=metronomeData.metroMeasure[0])==null?void 0:i[0])||{};skipNotePlay(0,!0)},gotoCustomNote=i=>{try{state.osmd.cursor.reset()}catch(e){}for(let e=0;e{var s,o,a;if(state.musicRenderType==="firstTone"||state.musicRenderType==="fixedTone"){if(state.sectionStatus&&state.playState==="paused"&&state.sectionFirst&&(i.multipleRestMeasures||i.MeasureNumberXML!==((s=state.sectionFirst)==null?void 0:s.MeasureNumberXML)))return;if(["1788850864767643649","1788502467554750466","1788501975122489346"].includes(state.cbsExamSongId)&&i.multipleRestMeasures===0){const c=(a=(o=e==null?void 0:e.cursorElement)==null?void 0:o.style)!=null&&a.left?parseFloat(e.cursorElement.style.left):0;let u=0;state.cbsExamSongId=="1788502467554750466"?(state.musicRenderType==="firstTone"&&(u=i.i==0||i.i==60?21:i.i==1||i.i==7||i.i==23||i.i==38||i.i==44||i.i==52||i.i==58?-6:i.i>=2||i.i<=6||i.i>=8||i.i<=22||i.i>=24||i.i<=37||i.i>=39||i.i<=43||i.i>=45||i.i<=51||i.i>=53||i.i<=57||i.i==59?6:0),state.musicRenderType==="fixedTone"&&(u=i.i==0?31:i.i==8||i.i==14||i.i==30||i.i==45||i.i==51||i.i==59||i.i==65?-10:i.i==67?31:0)):state.cbsExamSongId=="1788501975122489346"&&(state.musicRenderType==="firstTone"&&(u=i.i==0?21:i.i==1||i.i==7||i.i==23||i.i==38||i.i==44||i.i==52||i.i==58?-6:i.i==9||i.i==10||i.i==12||i.i==13?3:i.i==14||i.i==30||i.i==45||i.i==51||i.i==59?6:i.i==45?-8:i.i>=15||i.i<=29||i.i>=31||i.i<=36||i.i>=38||i.i<=44||i.i>=46||i.i<=50||i.i>=52||i.i<=58||i.i>=60||i.i<=64||i.i==66?4:0),state.musicRenderType==="fixedTone"&&(u=i.i==0?31:i.i==8||i.i==14||i.i==30||i.i==45||i.i==51||i.i==59||i.i==65?-10:i.i==67?31:0)),(r==="refresh"||r==="init"&&!state.specialPosInit)&&(e.cursorElement.style.left=c+u+"px",state.specialPosInit=!0)}else nextTick(()=>{var g,d,y,A;let c=i.bbox;if(!c){const S=(((g=document.getElementById("musicAndSelection"))==null?void 0:g.getBoundingClientRect())||{x:0,y:0}).x||0,E=document.querySelector(`#vf-${(y=(d=i.svgElement)==null?void 0:d.attrs)==null?void 0:y.id}`);if(E){const x=E.querySelector(".vf-numbered-note-head"),C=(A=x==null?void 0:x.getBoundingClientRect)==null?void 0:A.call(x);C&&(i.bbox={left:C.x-S-C.width/4,width:C.width*1.5},c=i.bbox)}}if(!c)return;const u=state.platform==="PC"?29:18,m=(c.width-u)/3;e.cursorElement.style.left=c.left+"px",e.cursorElement.style.transform=`translateX(${m}px)`})}},gotoNext=(i,e)=>{const r=i.i;if(state.activeNoteIndex===i.i){try{setCursorPosition(i,state.osmd.cursor,"init")}catch(a){console.log(a)}fillWordColor(),state.isSingleLine&&state.playState==="paused"&&moveSvgDom(e);return}const s=state.osmd;let o=state.activeNoteIndex;if(state.activeNoteIndex=r,state.activeMeasureIndex=i.MeasureNumberXML,o&&r-o===1)s.cursor.next();else if(o&&r-o>0)for(;r-o>0;)o++,s.cursor.next();else gotoCustomNote(r);try{setCursorPosition(i,state.osmd.cursor,"refresh")}catch(a){console.log(a)}fillWordColor(),state.isSingleLine&&moveSvgDom(e),scrollViewNote()},getNote=i=>{const e=state.times,r=state.times.length;if(i>e[r-1].endtime+2&&!state.isAppPlay){onEnded();return}let s=null;for(let o=state.activeNoteIndex;o=a.time)(!l||a.time!=l.time)&&(s=a);else break}return s},handleResetPlay=()=>{state.isAppPlay&&(audioData$1.progress=0),resetPlaybackToStart(),togglePlay("play")},handleSetSpeed=i=>{setStorageSpeed(state.examSongId,i),state.speed=i},clearSelection=()=>{state.sectionStatus=!1,state.section=[],closeToast()},handleChangeSection=()=>{if(state.sectionStatus){togglePlay("paused"),clearSelection(),skipNotePlay(0,!0),state.sectionFirst=null;return}state.sectionStatus=!0,state.sectionStatus&&togglePlay("paused"),showToast({message:"请选择开始小节",duration:0,position:"top",className:"selectionToast"})},formateSelectMearure=i=>{var c,u;if(!i.length)return[];const e=i.sort((m,g)=>m.time-g.time),r=(c=e[0])==null?void 0:c.measureOpenIndex,s=(u=e.last())==null?void 0:u.measureOpenIndex,o=state.times.filter(m=>r===m.measureOpenIndex)||[],a=state.times.filter(m=>s===m.measureOpenIndex)||[];if(!o.length||!a.length)return clearSelection(),[];e[0]=o[0],e[1]=a.last();let l=e[0].i;if(state.isOpenPrepare){const m=e[0].MeasureNumberXML;state.sectionFirst=state.times.find(g=>m-g.MeasureNumberXML===1),l=state.sectionFirst?state.sectionFirst.i:l}return skipNotePlay(l,l===0),e},handleSelection=i=>{!state.sectionStatus||state.section.length>1||(state.section.length!==2&&i&&(state.section.push(i),state.section.length===2&&(setSection(state.section[0].MeasureNumberXML,state.section[1].MeasureNumberXML),closeToast())),state.section.length===1&&showToast({message:"请选择结束小节",duration:0,position:"top",className:"selectionToast"}))},setSection=(i,e,r)=>{var S,E,x,C;const s=state.times.filter(P=>P.noteElement.sourceMeasure.MeasureNumberXML==i),o=state.times.filter(P=>P.noteElement.sourceMeasure.MeasureNumberXML==e);state.userChooseEndIndex=e;const a=o[o.length-1].noteId;let l=o.filter(P=>P.noteId===a);const c=verifyCanRepeat(i,e);console.log("能否重播",c);const u=c.canRepeat;let m=!1;l.length===1&&(m=(x=(E=(S=l[0])==null?void 0:S.stave)==null?void 0:E.modifiers)==null?void 0:x.some(P=>P.getAttribute("type")==="Volta"));let g=e;const d=((C=state.repeatInfo[c.repeatIdx])==null?void 0:C.end)||0;for(;u&&l.length===1&&l[0].MeasureNumberXML<=d&&!m;){g=g-1;const P=state.times.filter(I=>I.noteElement.sourceMeasure.MeasureNumberXML==g),k=P[P.length-1].noteId;l=P.filter(I=>I.noteId===k)}const y=u&&c.repeatIdx==state.repeatInfo.length-1?l.length-1:0,A=s[0],b=l[y];A&&b&&(state.isSelectMeasureMode=!0,hanldeDirectSelection([A,b]),r&&handleSetSpeed(r))},hanldeDirectSelection=i=>{!Array.isArray(i)||i.length!==2||(state.sectionStatus=!0,setTimeout(()=>{state.section=formateSelectMearure(i),console.log("选段小节",state.section)},0))};let offsetTop=0;const scrollViewNote=()=>{const i=document.getElementById("cursorImg-0"),e=document.getElementById(state.scrollContainer);!i||!e||offsetTop===i.offsetTop||(offsetTop=i.offsetTop,offsetTop>50?e.scrollTo({top:(offsetTop-50)*state.musicZoom,behavior:"smooth"}):e.scrollTo({top:0,behavior:"smooth"}))},isRhythmicExercises=()=>state.examSongName.indexOf("节奏练习")>-1,handleRessetState=()=>{clearSelection(),skipNotePlay(0,!0),state.isAppPlay&&(audioData$1.progress=0),state.modeType==="evaluating"?handleStartEvaluat():state.modeType==="practise"?togglePlay("paused"):state.modeType==="follow"&&toggleFollow(!1)},state$1=state,evaluatCreateMusicPlayer=()=>api_createMusicPlayer({musicSrc:state.accompany||state.music,tuneSrc:"https://oss.dayaedu.com/cloud-coach/1686725501654check_music1_(1).mp3"}),getMusicDetail=async i=>{const e=await getMusicSheetDetail(i);(e==null?void 0:e.code)===200&&await getMusicInfo(e)},getMusicInfo=async i=>{const e=await fetch(i.data.xmlFileUrl).then(l=>l.text());downloadXmlStr.value=e;const r=xmlToTracks(e);let s=query["part-index"]?parseInt(query["part-index"]):0;const o=initMusicSource(i.data,r[s]);s=r.findIndex(l=>l===(o==null?void 0:o.track));const a={...i.data,track:o==null?void 0:o.track};console.log("🚀 ~ musicInfo:",a),setState(a,s)};function xmlToTracks(i){const e=new DOMParser().parseFromString(i,"text/xml");return Array.from(e.getElementsByTagName("part-name")).reduce((s,o)=>{var l;const a=(l=o==null?void 0:o.textContent)==null?void 0:l.trim();return a!=="COMMON"&&a&&s.push(a),s},[])}function initMusicSource(i,e){const{instrumentId:r}=storeData.user;let{musicSheetType:s,isAllSubject:o,musicSheetSoundList:a,musicSheetAccompanimentList:l}=i;a||(a=[]),l||(l=[]);let c,u,m,g;if(s==="SINGLE"?(c=a.find(d=>o||!r?d.audioPlayType==="PLAY":d.audioPlayType==="PLAY"&&d.musicalInstrumentId==r),c||(c=a.find(d=>d.audioPlayType==="PLAY")),m=a.find(d=>d.audioPlayType==="SING"),g=l.find(d=>d.audioPlayType==="SING")):c=e?a.find(d=>d.track===e):a[0],u=l.find(d=>d.audioPlayType==="PLAY"),!(c!=null&&c.audioFileUrl)&&!(u!=null&&u.audioFileUrl)&&!(m!=null&&m.audioFileUrl)&&!(g!=null&&g.audioFileUrl)&&!(m!=null&&m.solmizationFileUrl))throw new Error("该曲目无任何音源");return Object.assign(state,{music:c==null?void 0:c.audioFileUrl,accompany:u==null?void 0:u.audioFileUrl,fanSong:m==null?void 0:m.audioFileUrl,banSong:g==null?void 0:g.audioFileUrl,mingSong:m==null?void 0:m.solmizationFileUrl}),Object.assign(state.beatSong,{music:c==null?void 0:c.audioBeatMixUrl,accompany:u==null?void 0:u.audioBeatMixUrl,fanSong:m==null?void 0:m.audioBeatMixUrl,banSong:g==null?void 0:g.audioBeatMixUrl,mingSong:m==null?void 0:m.solmizationBeatUrl}),c}const setState=(i,e)=>{var g,d,y,A,b,S,E,x,C,P,k,I,M,T;state.appName="COLEXIU",state.detailId=i.bizId,state.xmlUrl=i.xmlFileUrl,state.paymentType=i.paymentType,state.partIndex=e,state.trackId=i.track,state.subjectId=i.subjectIds?(g=i.subjectIds.split(","))==null?void 0:g[0]:0;const r=i.subjectCodes?(d=i.subjectCodes.split(","))==null?void 0:d[0]:"";let s=i.musicalInstrumentIdCodes?(y=i.musicalInstrumentIdCodes.split(","))==null?void 0:y[0]:"";const o=musicalInstrumentCodeInfo.find(F=>F.code.toLocaleLowerCase()===r.toLocaleLowerCase()),a=musicalInstrumentCodeInfo.find(F=>F.code.toLocaleLowerCase()===s.toLocaleLowerCase());if(state.subjectCodeId=o?o.id:0,state.musicalCodeId=a?a.id:0,state.categoriesId=i.musicCategoryId,state.categoriesName=i.musicTagNames,state.examSongId=i.bizId+"",state.cbsExamSongId=i.id+"",state.examSongName=i.name,state.coverImg=(A=i.musicCover)!=null?A:"",state.isCombineRender=i.musicSheetType==="SINGLE"&&((b=i.musicSheetSoundList)==null?void 0:b.length)>1,setCustom(state.isCombineRender?(S=i.musicSheetSoundList)==null?void 0:S.length:0),i.extConfigJson)try{state.extConfigJson=JSON.parse(i.extConfigJson)}catch(F){console.error("解析扩展字段错误:",F)}state.gradualTimes=state.extConfigJson.gradualTimes,state.repeatedBeats=state.extConfigJson.repeatedBeats||0,state.isEvxml=state.extConfigJson.isEvxml==1,state.needTick=!!i.isPlayBeat,state.needSingTick=!!i.isPlaySingBeat,state.isOpenMetronome=!!(i.isPlayBeat&&!i.isUseSystemBeat),state.isSingOpenMetronome=!!(i.isPlaySingBeat&&!i.isUseSingSystemBeat),state.isShowFingering=!!i.isShowFingering,state.isAppPlay=i.playMode==="MIDI",state.midiUrl=i.midiFileUrl,state.parentCategoriesId=i.musicTag,state.musicSheetCategoriesId=i.musicCategoryId,state.bizMusicCategoryId=i.bizMusicCategoryId,state.playMode=i.playMode==="MP3"?"MP3":"MIDI",state.originSpeed=state.speed=parseFloat(i.playSpeed)||0;const l=i.code||i.track;state.track=l?l.replace(/ /g,"").toLocaleLowerCase():"",state.isAppPlay?state.enableEvaluation=!!state.midiUrl:state.enableEvaluation=!!state.accompany,state.isConcert=i.musicSheetType==="CONCERT",state.canSelectTracks=i.multiTracksSelection==="null"||i.multiTracksSelection===""||i.multiTracksSelection===null?[]:(E=i.multiTracksSelection)==null?void 0:E.split(","),state.isOpenPrepare=!0,state.extStyleConfigJson=i.extStyleConfigJson||{},state.isPercussion=i.evaluationStandard==="AMPLITUDE"||i.evaluationStandard==="DECIBELS",state.evaluationStandard=((x=i.evaluationStandard)==null?void 0:x.toLocaleLowerCase())||"",state.isSpecialBookCategory=!classids.includes(Number(i.musicCategoryId));const c=state.isConcert?matchVoicePart(state.trackId,"CONCERT"):matchVoicePart(state.musicalCodeId,"SINGLE");state.fingeringInfo=subjectFingering(c),console.log("🚀 ~ state.fingeringInfo:",c,state.fingeringInfo,state.trackId,state.track),state.musicalCodeId=((C=state.fingeringInfo)==null?void 0:C.id)||0,state.musicalCode=((P=musicalInstrumentCodeInfo.find(F=>F.id===state.musicalCodeId))==null?void 0:P.code)||state.trackId,window.DYSubjectId=state.musicalCodeId,window.customSectionAmount=!0,window.DYProjectName="musicScore",!state.fingeringInfo.name&&state.setting.displayFingering&&(state.setting.displayFingering=!1),state.platform=((k=query.platform)==null?void 0:k.toLocaleUpperCase())||"",state.platform==="PC"&&(state.zoom=query.zoom||1.5,state.enableEvaluation=!1);let u=null;state.isConcert?(s=(I=musicalInstrumentCodeInfo.find(F=>F.id===state.musicalCodeId))==null?void 0:I.code,u=(M=i.musicalInstruments)==null?void 0:M.find(F=>F.code===s)):u=(T=i.musicalInstruments)==null?void 0:T.find(F=>F.code===s);let m="";u!=null&&u.defaultScore&&(m=(u==null?void 0:u.defaultScore)==="STAVE"?"staff":(u==null?void 0:u.defaultScore)==="JIAN"?"fixedTone":(u==null?void 0:u.defaultScore)==="FIRST"?"firstTone":""),state.musicRenderType=query.musicRenderType||m||"firstTone",["1788501975122489346","1788502467554750466","1789839575249596417"].includes(state.cbsExamSongId)&&state.musicRenderType==="fixedTone"&&(state.musicRenderType="firstTone"),state.enableNotation=u?i.isConvertibleScore&&u.transferFlag:i.isConvertibleScore,console.log("state对象",state),state.baseFrequency=i.evaluationFrequency?i.evaluationFrequency.split(",")[0]:440,state.baseFrequency=Number(state.baseFrequency),Math.abs(state.setting.frequency-state.baseFrequency)>10?state.setting.frequency=state.baseFrequency>=0?state.baseFrequency:440:state.setting.frequency=state.setting.frequency||state.baseFrequency},setCustom=i=>{(i||state.extConfigJson.multitrack)&&(state.multitrack=i||0,setGlobalData("multitrack",i||state.extConfigJson.multitrack))},followBeatPaly=()=>{let i=null;if(!followData.start){clearTimeout(i),i=null;return}const e=state.measureTime*1e3/metronomeData.totalNumerator;requestAnimationFrame(()=>{var s;Date.now()-state.beatStartTime{var o,a,l,c,u,m,g,d,y,A,b,S,E,x,C,P,k;const r=(((o=document.getElementById("musicAndSelection"))==null?void 0:o.getBoundingClientRect())||{x:0,y:0}).x||0;let s=null;for(let I=0;I{state.times.forEach((s,o)=>{var c,u,m,g,d,y;const a=document.getElementById(`vf-${(m=(u=(c=state.times[o])==null?void 0:c.svgElement)==null?void 0:u.attrs)==null?void 0:m.id}`),l=document.getElementById(`vf-${(y=(d=(g=state.times[o])==null?void 0:g.svgElement)==null?void 0:d.attrs)==null?void 0:y.id}-stem`);(s.i===state.activeNoteIndex||s.id===state.times[state.activeNoteIndex].id)&&s.svgElement?(a==null||a.classList.add("noteActive"),l==null||l.classList.add("noteActive")):(a==null||a.classList.remove("noteActive"),l==null||l.classList.remove("noteActive"))});const i=state.times[state.activeNoteIndex];Array.from(document.querySelectorAll(".vf-lyric")).forEach(s=>{s==null||s.classList.remove("lyricActive")}),Array.from(document.querySelectorAll(`.lyric${i==null?void 0:i.noteId}`)).forEach((s,o)=>{o===i.repeatIdx&&(s==null||s.classList.add("lyricActive"))})},moveSvgDom=i=>{var e,r,s,o;if(i){const a=((e=state.times[state.activeNoteIndex].bbox)==null?void 0:e.x)-((r=state.times[0].bbox)==null?void 0:r.x)+((s=state.times[state.activeNoteIndex].bbox)==null?void 0:s.width)/2-((o=state.times[0].bbox)==null?void 0:o.width)/2;smoothAnimationState.translateXNum=0,moveSmoothAnimation(0,state.activeNoteIndex),smoothAnimationState.osdmScrollDom.scrollTo({left:a,behavior:"smooth"})}};watch(()=>state.playState,()=>{if(state.isSingleLine&&!state.playEnd&&state.playState==="paused"){moveTranslateXNum(0);const i=smoothAnimationState.osdmScrollDom.scrollLeft;smoothAnimationState.osdmScrollDom.scrollLeft=i+smoothAnimationState.translateXNum,smoothAnimationState.translateXNum=0}});function getNeedReduceMultipleRestNum(i){let e=0;for(let r=0;ri)break;s.multipleRestMeasures&&s.multipleRestMeasures>1&&(e+=1)}return e}watch(()=>state.activeMeasureIndex,()=>{const i=getNeedReduceMultipleRestNum(state.activeMeasureIndex),e=state.activeMeasureIndex-i-1;console.log("选中的小节",e,"需要减去的小节",i,"当前的小节",state.activeMeasureIndex),state.vfmeasures.forEach((r,s)=>{var o,a,l,c,u,m,g,d;if(s===e)(o=r.querySelector(".vf-custom-bg"))==null||o.setAttribute("fill","#132D4C"),(a=r.querySelector(".vf-custom-bot"))==null||a.setAttribute("fill","#040D1E");else if(state.section.length===2){let y=state.section[0].MeasureNumberXML,A=state.section[1].MeasureNumberXML;y>A&&(y=state.section[1].MeasureNumberXML,A=state.section[0].MeasureNumberXML);const b=y-getNeedReduceMultipleRestNum(y)-1,S=A-getNeedReduceMultipleRestNum(A)-1;if(s>=b&&s<=S&&((l=r.querySelector(".vf-custom-bg"))==null||l.setAttribute("fill","#609FCF"),(c=r.querySelector(".vf-custom-bot"))==null||c.setAttribute("fill","#2B70A5")),state.sectionFirst){const E=state.sectionFirst.MeasureNumberXML-getNeedReduceMultipleRestNum(state.sectionFirst.MeasureNumberXML)-1,x=state.vfmeasures[E];(u=x==null?void 0:x.querySelector(".vf-custom-bg"))==null||u.setAttribute("fill","#71B8BD"),(m=x==null?void 0:x.querySelector(".vf-custom-bot"))==null||m.setAttribute("fill","#448F9C")}}else(g=r.querySelector(".vf-custom-bg"))==null||g.setAttribute("fill","#609FCF"),(d=r.querySelector(".vf-custom-bot"))==null||d.setAttribute("fill","#2B70A5")})});watch(()=>state.section,()=>{var i,e;if(state.section.length===2){let r=state.section[0].MeasureNumberXML,s=state.section[1].MeasureNumberXML;r>s&&(r=state.section[1].MeasureNumberXML,s=state.section[0].MeasureNumberXML);const o=r-getNeedReduceMultipleRestNum(r)-1,a=s-getNeedReduceMultipleRestNum(s)-1;if(state.vfmeasures.forEach((l,c)=>{var u,m,g,d;ca&&((g=l.querySelector(".vf-custom-bg"))==null||g.setAttribute("fill","rgba(96,159,207,0.5)"),(d=l.querySelector(".vf-custom-bot"))==null||d.setAttribute("fill","rgba(43,112,165,0.5)"))}),state.sectionFirst){const l=state.sectionFirst.MeasureNumberXML-getNeedReduceMultipleRestNum(state.sectionFirst.MeasureNumberXML)-1,c=state.vfmeasures[l];(i=c==null?void 0:c.querySelector(".vf-custom-bg"))==null||i.setAttribute("fill","#71B8BD"),(e=c==null?void 0:c.querySelector(".vf-custom-bot"))==null||e.setAttribute("fill","#448F9C")}}else{const r=state.activeMeasureIndex-getNeedReduceMultipleRestNum(state.activeMeasureIndex)-1;state.vfmeasures.forEach((s,o)=>{var a,l,c,u;o===r?((a=s.querySelector(".vf-custom-bg"))==null||a.setAttribute("fill","#132D4C"),(l=s.querySelector(".vf-custom-bot"))==null||l.setAttribute("fill","#040D1E")):((c=s.querySelector(".vf-custom-bg"))==null||c.setAttribute("fill","#609FCF"),(u=s.querySelector(".vf-custom-bot"))==null||u.setAttribute("fill","#2B70A5"))})}});const refreshMusicSvg=()=>{var i;state.loadingText="正在加载中,请稍等…",state.isSingleLine&&destroySmoothAnimation(),(i=musicScoreRef.value)==null||i.refreshMusicScore()},browserInfo=browser();dayjs.extend(duration);const getFixTime=i=>{const e=getDuration(state$1.osmd);let r=e.numerator||0,s=e.denominator||4;const o=e.beatUnit||"quarter";return state$1.repeatedBeats&&(r=r*2),60/i*formatBeatUnit(o)*(r/s)},retain=i=>Math.ceil(i*1e6)/1e6,formatLyricsEntries=i=>{var s,o;const e=((s=i.parentStaffEntry)==null?void 0:s.voiceEntries)||[],r=[];for(const a of e)if((o=a.lyricsEntries)!=null&&o.table){const l=Object.values(a.lyricsEntries.table);for(const c of l)r.push(c==null?void 0:c.value.text)}return r},createSpeedInfo=(i,e)=>{var r,s;if(i&&speedInfo[(r=i.startWord)==null?void 0:r.toLocaleLowerCase()]){const o=Math.max(i.endXmlNoteIndex,3),a=[],l=e,c=e/speedInfo[(s=i.startWord)==null?void 0:s.toLocaleLowerCase()];for(let u=0;u{let e=i;const r=i.split(":");return r.length===1?e=`00:${r[0]}:00`:r.length===2&&(e=`00:${r[0]}:${r[1]}`),`1970-01-01 00:${e}0`},getDuration=i=>{var r;if(i){const{Duration:s,TempoInBPM:o,ActiveTimeSignature:a,TempoExpressions:l}=(r=i.GraphicSheet.MeasureList[0][0])==null?void 0:r.parentSourceMeasure;if(s){let c="quarter";for(const m of l)c=m.InstantaneousTempo.beatUnit||"quarter";return{...formatDuration(a),TempoInBPM:o,beatUnit:c}}}return{...new Fraction$1,TempoInBPM:90,beatUnit:"quarter"}};function formatDuration(i,e){return i}function formatBeatUnit(i){let e=4;switch(i){case"1024th":e=1024;break;case"512th":e=512;break;case"256th":e=256;break;case"128th":e=128;break;case"64th":e=64;break;case"32nd":e=32;break;case"16th":e=16;break;case"eighth":e=8;break;case"quarter":e=4;break;case"half":e=2;break;case"whole":e=1;break;case"breve":e=.5;break;case"long":e=.25;break;case"maxima":e=.125;break}return e}function getTimeByBeatUnit(i,e,r){return r/formatBeatUnit(i)*e}const setElementNoteBefore=(i,e,r)=>{let s=0;if(e){for(let o=0;o0){let o=0;const a=Array.from(r.childNodes).filter(c=>c.nodeName==="note"),l=a[a.length-1];if(s>=a.length&&l){r.insertBefore(i,r.childNodes[Array.from(r.childNodes).indexOf(l)]);return}for(let c=0;c{if(i){const e=i.toLocaleLowerCase(),r="d\\s?\\.s\\.",s="d\\.\\s?c\\.";return e==="@"||StringUtil.StringContainsSeparatedWord(e,r+" al fine",!0)||StringUtil.StringContainsSeparatedWord(e,r+" al coda",!0)||StringUtil.StringContainsSeparatedWord(e,s+" al fine",!0)||StringUtil.StringContainsSeparatedWord(e,s+" al coda",!0)||StringUtil.StringContainsSeparatedWord(e,s)||StringUtil.StringContainsSeparatedWord(e,"da\\s?capo",!0)||StringUtil.StringContainsSeparatedWord(e,r,!0)||StringUtil.StringContainsSeparatedWord(e,"dal\\s?segno",!0)||StringUtil.StringContainsSeparatedWord(e,"al\\s?coda",!0)||StringUtil.StringContainsSeparatedWord(e,"to\\s?coda",!0)||StringUtil.StringContainsSeparatedWord(e,"a (la )?coda",!0)||StringUtil.StringContainsSeparatedWord(e,"fine",!0)||StringUtil.StringContainsSeparatedWord(e,"coda",!0)||StringUtil.StringContainsSeparatedWord(e,"segno",!0)}return!1},onlyVisible=(i,e)=>{var A,b,S,E,x,C,P,k,I;if(!i)return"";const r=state$1.examSongId+"",s=new DOMParser().parseFromString(i,"text/xml"),o=((b=(A=s.getElementsByTagName("part-list"))==null?void 0:A[0])==null?void 0:b.getElementsByTagName("score-part"))||[],a=Array.from(o).map(M=>{var T,F,D;return((D=(F=(T=M.getElementsByTagName("part-name"))==null?void 0:T[0])==null?void 0:F.textContent)==null?void 0:D.trim())||""}),l=s.getElementsByTagName("part"),c=[...(S=l[0])==null?void 0:S.getElementsByTagName("measure")],u=[...(E=l[0])==null?void 0:E.getElementsByTagName("metronome")],m=[...(x=l[0])==null?void 0:x.getElementsByTagName("words")],g=[...(C=l[0])==null?void 0:C.getElementsByTagName("coda")],d=[...(P=l[0])==null?void 0:P.getElementsByTagName("rehearsal")];((I=(k=a[0])==null?void 0:k.toLocaleUpperCase)==null?void 0:I.call(k))==="COMMON"&&(e++,a.shift());const y=o[e];if(state$1.partListNames=a,y){const M=y.getAttribute("id");Array.from(l).forEach(T=>{var F,D,N,O,B;if(T&&T.getAttribute("id")!==M)(F=T.parentNode)==null||F.removeChild(T);else if(T&&T.getAttribute("id")!=="P1"){const V={};for(let R=0;R{var U;const Q=(U=R.parentElement)==null?void 0:U.parentElement,_=Q==null?void 0:Q.parentElement,K=[...(_==null?void 0:_.childNodes)||[]],G=Q?K.indexOf(Q):-1;if(_&&G>-1){const $=c.indexOf(_),q=T.getElementsByTagName("measure")[$];setElementNoteBefore(Q,_,q)}}),m.forEach(R=>{var _;let Q=R.textContent||"";if(Q=["cresc."].includes(Q)?"":Q,(isSpecialMark(Q)||isSpeedKeyword(Q)||isGradientWords(Q)||isRepeatWord(Q)||GRADIENT_SPEED_RESET_TAG)&&Q){const K=(_=R.parentElement)==null?void 0:_.parentElement,G=K==null?void 0:K.parentElement,U=[...(G==null?void 0:G.childNodes)||[]],$=K?U.indexOf(K):-1;if(K&&G&&$>-1){const q=c.indexOf(G),W=T.getElementsByTagName("measure")[q];Array.from((W==null?void 0:W.getElementsByTagName("words"))||[]).reduce((Y,J)=>{var ce;return(ce=J.textContent)!=null&&ce.includes(Q)&&Y++,Y},0)===0&&(["12280"].includes(r)?W==null||W.insertBefore(K.cloneNode(!0),W==null?void 0:W.childNodes[$]):setElementNoteBefore(K,G,W))}}}),g.forEach(R=>{var U;const Q=(U=R.parentElement)==null?void 0:U.parentElement,_=Q==null?void 0:Q.parentElement,K=[...(_==null?void 0:_.childNodes)||[]],G=Q?K.indexOf(Q):-1;if(Q&&_&&G>-1){const $=c.indexOf(_),q=T.getElementsByTagName("measure")[$];["12280"].includes(r)?q==null||q.insertBefore(Q.cloneNode(!0),q==null?void 0:q.childNodes[G]):setElementNoteBefore(Q,_,q)}}),d.forEach(R=>{var K,G;const Q=(K=R.parentElement)==null?void 0:K.parentElement,_=Q==null?void 0:Q.parentElement;if(_){const U=c.indexOf(_);(G=T.getElementsByTagName("measure")[U])==null||G.appendChild(Q.cloneNode(!0))}})}else m.forEach((V,R)=>{var _,K,G;const Q=V.textContent||"";if(isSpeedKeyword(Q)&&Q){const U=(K=(_=V.parentElement)==null?void 0:_.parentElement)==null?void 0:K.parentElement;if(U&&U.firstElementChild&&U.firstElementChild!==V){const $=(G=V.parentElement)==null?void 0:G.parentElement,q=U.firstElementChild;U.insertBefore($,q)}}});if(T&&T.getAttribute("id")===M){const V=T.getElementsByTagName("barline"),R=(O=V[V.length-1])==null?void 0:O.parentElement;if(((B=R==null?void 0:R.lastElementChild)==null?void 0:B.tagName)!=="barline"){const Q=(R==null?void 0:R.children)||[];for(let _ of Q)if(_.tagName==="barline"){R==null||R.appendChild(_);break}}}}),Array.from(o).forEach(T=>{var F;T&&T.getAttribute("id")!==M&&((F=T.parentNode)==null||F.removeChild(T))})}return new XMLSerializer().serializeToString(appoggianceFormate(s))},appoggianceFormate=i=>{var s,o,a,l;if(!i)return i;const e=i.querySelectorAll("grace");if(!e.length)return i;const r=c=>c.querySelector("grace")?r(c==null?void 0:c.nextElementSibling):c;for(let c of e){const u=(s=c.parentElement)==null?void 0:s.querySelector("notations");if(u&&u.querySelectorAll("slur").length>1){let m=r((o=c.parentElement)==null?void 0:o.nextElementSibling);if(m&&m.querySelectorAll("slur").length>0){const g=Array.from(((a=m.querySelector("notations"))==null?void 0:a.children)||[]).map(y=>y.getAttribute("number")),d=u.querySelectorAll("slur");for(let y of d)g.includes(y.getAttribute("number"))||(l=m.querySelector("notations"))==null||l.appendChild(y)}}}return i},formatXML=(i,e)=>{var u,m,g;if(!i)return"";const r=new DOMParser().parseFromString(i,"text/xml"),s=Array.from(r.getElementsByTagName("measure")),o=Array.from(r.querySelectorAll("repeat"));compatibleXmlPitchVoice(r),getComposer(r),parseXmlToRepeat(o),state$1.isEvxml&&(analyzeEvxml(r),customizationXml(r));let a=-1,l=-1,c=-1;for(const d of s){l===-1&&d.getElementsByTagName("beats").length&&(l=parseInt(d.getElementsByTagName("beats")[0].textContent||"4")),c===-1&&d.getElementsByTagName("beat-type").length&&(c=parseInt(d.getElementsByTagName("beat-type")[0].textContent||"4")),a===-1&&d.getElementsByTagName("per-minute").length&&(a=Number((u=d.getElementsByTagName("per-minute")[0])==null?void 0:u.textContent));const y=parseInt(((m=d.getElementsByTagName("divisions")[0])==null?void 0:m.textContent)||"256");d.getElementsByTagName("note").length&&state$1.isEvxml&&(Array.from(d.getElementsByTagName("note"))||[]).forEach(S=>{var E;S.getElementsByTagName("grace").length||(!S.getElementsByTagName("duration").length||S.getElementsByTagName("duration").length&&((E=S.getElementsByTagName("duration")[0])==null?void 0:E.textContent)==0)&&d.removeChild(S)});const A=new RegExp("[\\u4E00-\\u9FFF]+","g");if(d.getElementsByTagName("words").length&&state$1.isEvxml&&(Array.from(d.getElementsByTagName("words"))||[]).forEach(S=>{var E;S!=null&&S.textContent&&A.test(S==null?void 0:S.textContent)&&((E=S==null?void 0:S.parentNode)!=null&&E.parentNode)&&d.removeChild(S.parentNode.parentNode)}),d.getElementsByTagName("note").length===0){const b=(g=d.getElementsByTagName("forward")[0])==null?void 0:g.getElementsByTagName("duration")[0];b&&(b.textContent="0"),d.innerHTML=d.innerHTML+` ${y*l} 1 whole `}}return(!a||a==-1)&&(a=100),state$1.originSpeed||(state$1.originSpeed=state$1.speed=a||100),new XMLSerializer().serializeToString(r)},formateTimes=i=>{var W,xe,ue,Y,J,ce,ge,Ee,Ie,De,ie,ae,H,ve,pe,ee,ne,me,Be,oe,Ae,Me,Le,Ce,he,Pe,ye,Ve,Ue,je,_e,Ke,tt,$e,ot,yt,ct,dt,Pt,ht,pt,Ct,Gt;const e=customData.customNoteRealValue,r=customData.customNoteCurrentTime;state$1.examSongId+"",state$1.partIndex+"";let s=browserInfo.huawei?.08:0;const o=[],a=[],l=[],{originSpeed:c}=state$1;let u=0;const m=(Je,te)=>{var We,Ze,nt,vt,qe,xt;return["906"].includes(state$1.cbsExamSongId)?((We=te.measures[0])==null?void 0:We.realKey)||Je:["782","784"].includes(state$1.cbsExamSongId)&&[14,16,30,32].includes((Ze=te.firstVerticalMeasure)==null?void 0:Ze.measureNumber)?((nt=o[o.length-1])==null?void 0:nt.realKey)||Je:["900","901","640","641","739","740","800","801","773","774","869","872","714","715"].includes(state$1.cbsExamSongId)&&(((vt=te.firstVerticalMeasure)==null?void 0:vt.measureNumber)===3||((qe=te.firstVerticalMeasure)==null?void 0:qe.measureNumber)===9)&&((xt=te.measures[0])==null?void 0:xt.realKey)||Je};if(!i.cursor)return[];const g=i.cursor.Iterator;console.time("音符跑完时间");let d=0,y=0,A=[],b=[],S=0,E=0,x=0,C="quarter",P,k,I=0,M=0,T=0,F=0,D=0,N=0,O=0,B=0;const V=[];state$1.gradualTimes&&console.log("后台设置的渐慢小节时间",state$1.gradual,state$1.gradualTimes);let R=g.currentTimeStamp.RealValue;const Q=[];let _=!1,K=0,G=0;for(;!g.EndReached;){const Je=(W=g.CurrentVoiceEntries)!=null&&W[0]?[(xe=g.CurrentVoiceEntries)==null?void 0:xe[0]]:[];let te=[],de=0;de=((ue=g.currentMeasure)==null?void 0:ue.verticalSourceStaffEntryContainers.length)||0,state$1.multitrack>0?te=[...g.CurrentVoiceEntries]:te=[...g.CurrentVoiceEntries].filter(Ze=>{var nt;return Ze&&((nt=Ze==null?void 0:Ze.ParentVoice)==null?void 0:nt.VoiceId)!=1});let ke=0,Oe=!1,We=!1;if(te.length&&!_){Oe=!0;let Ze=[...g.CurrentVoiceEntries].reduce((nt,vt)=>(nt.push(...vt.Notes),nt),[]);if(Ze=Ze.sort((nt,vt)=>{var qe,xt;return((qe=nt==null?void 0:nt.length)==null?void 0:qe.realValue)-((xt=vt==null?void 0:vt.length)==null?void 0:xt.realValue)}),ke=((J=(Y=Ze==null?void 0:Ze[0])==null?void 0:Y.length)==null?void 0:J.realValue)||0,state$1.multitrack>0&&te.length===2){const nt=((ge=(ce=Ze[0])==null?void 0:ce.length)==null?void 0:ge.realValue)||0;K=(((Ie=(Ee=Ze[Ze.length-1])==null?void 0:Ee.length)==null?void 0:Ie.realValue)||0)-nt,_=K!==0}}(De=V[V.length-1])!=null&&De.isDouble&&!te.length&&(We=!0),state$1.multitrack>0&&!Oe&&_&&(Oe=!0,ke=K,_=!1,K=0),Q.push(g.currentTimeStamp.realValue-R),R=g.currentTimeStamp.realValue;for(const Ze of Je){let nt=Ze.notes[0];if(nt.IsGraceNote&&(nt=nt.parentStaffEntry.voiceEntries.find(qe=>!qe.isGrace).notes[0]),nt.fixedKey=nt.ParentVoiceEntry.ParentVoice.Parent.SubInstruments[0].fixedKey||0,(ie=nt==null?void 0:nt.voiceEntry)!=null&&ie.isGrace){Oe=!0;let vt=[...g.currentVoiceEntries].reduce((qe,xt)=>(qe.push(...xt.notes),qe),[]);vt=vt.sort((qe,xt)=>{var Mt,Ft;return((Mt=xt==null?void 0:xt.length)==null?void 0:Mt.realValue)-((Ft=qe==null?void 0:qe.length)==null?void 0:Ft.realValue)}),ke=ke!=0?Math.min((H=(ae=vt==null?void 0:vt[0])==null?void 0:ae.length)==null?void 0:H.realValue,ke):(pe=(ve=vt==null?void 0:vt[0])==null?void 0:ve.length)==null?void 0:pe.realValue}state$1.multitrack>0&&ke>nt.length.realValue&&(ke=nt.length.realValue),nt.maxNoteNum=de,V.push({note:nt,iterator:{...g},currentTime:ke,isDouble:Oe,isMutileSubject:We,measuresTempoInBPM:(ee=nt==null?void 0:nt.sourceMeasure)==null?void 0:ee.tempoInBPM})}g.moveToNextVisibleVoiceEntry(!1),g.backJumpOccurred&&(G+=1),g.repeatIdx=G}const U=V.some(Je=>Je.measuresTempoInBPM!==V[0].measuresTempoInBPM);console.log("变速曲子",U,V);let $=[];for(let{note:Je,iterator:te,currentTime:de,isDouble:ke,isMutileSubject:Oe}of V){if(Je){if(u!=((ne=Je==null?void 0:Je.sourceMeasure)==null?void 0:ne.MeasureNumberXML)&&(y=0),y===0&&u!=((me=Je==null?void 0:Je.sourceMeasure)==null?void 0:me.MeasureNumberXML)&&(u=(Be=Je==null?void 0:Je.sourceMeasure)==null?void 0:Be.MeasureNumberXML,l.push(Je.sourceMeasure)),y===0&&state$1.isSpecialBookCategory)for(const at of(oe=Je.sourceMeasure)==null?void 0:oe.TempoExpressions)(Ae=at==null?void 0:at.InstantaneousTempo)!=null&&Ae.beatUnit&&(C=at.InstantaneousTempo.beatUnit);D==((Me=Je.sourceMeasure)==null?void 0:Me.MeasureNumberXML)&&d!==0?F++:(D=(Le=Je.sourceMeasure)==null?void 0:Le.MeasureNumberXML,F=0);let We=Je.sourceMeasure.tempoInBPM;const{metronomeNoteIndex:Ze}=te.currentMeasure;Ze!==0&&Ze>y&&(We=((Ce=o[o.length-1])==null?void 0:Ce.speed)||100);let nt=[];nt=[(Pe=(he=Je.sourceMeasure)==null?void 0:he.verticalMeasureList)==null?void 0:Pe[0]];const{realValue:vt}=te.currentTimeStamp,{RealValue:qe,Denominator:xt}=formatDuration(te.currentMeasure.activeTimeSignature,te.currentMeasure.duration);let{wholeValue:Mt,numerator:Ft,denominator:z,realValue:fe}=Je.length;e[d]&&(fe=e[d]),ke&&de>0&&de!=fe&&(fe=de),r&&Oe&&Q[d+1]>0&&fe>Q[d+1]&&(fe=Q[d+1]);let Z=E;state$1.isEvxml&&Z0){const at=state$1.gradual.find((mt,Rt)=>{var Dt;const kt=state$1.gradual[Rt+1];return mt[0].measureIndex<=Te&&((Dt=mt[1])==null?void 0:Dt.measureIndex)>=Te&&(!kt||(kt==null?void 0:kt[0].measureIndex)!==Te)}),[et,rt]=at||[];if(et&&rt){const mt=rt.measureIndex-et.measureIndex,Rt=et.closedMeasureIndex==Te&&y>=et.noteInMeasureIndex,kt=rt.closedMeasureIndex===Te&&y0)){const at=P[0]-(P[1]-P[0]),{resetXmlNoteIndex:et,endXmlNoteIndex:rt}=k,mt=rt;let Rt=(P[P.length-1]-at)/mt;if(Rt=Je.DotsXml?Rt/1.5:Rt,II&&(Se=(Ve=o[d-1])==null?void 0:Ve.speed);re=(state$1.isSpecialBookCategory?getTimeByBeatUnit(C,Se,te.currentMeasure.activeTimeSignature.Denominator):c)||1;const kt=!(II);I++,kt&&(I=0,k=void 0,P=void 0,b=[])}const Fe=fe;let He=we||Math.min(qe,fe)*formatBeatUnit(C)*(60/re);const lt=qe*xt*(60/re);["1788501975122489346","1788502467554750466"].includes(state$1.cbsExamSongId)&&(d==13&&(He=He/2),d==44&&(He=He*6),d==56&&(He=He*4)),E+=He,x+=He;let st=He+Z;const ft=Je.fixedKey||0,Qe=(je=(Ue=nt[0])==null?void 0:Ue.vfVoices["1"])==null?void 0:je.tickables[F];if(o.length&&o[o.length-1].relativeTime===Z)continue;if(d===0&&!state$1.isAppPlay){let at=0;(((Ke=(_e=Je.sourceMeasure.verticalMeasureList)==null?void 0:_e[0])==null?void 0:Ke.staffEntries)||[]).forEach(rt=>{var mt,Rt,kt,Dt,Ht,Vt;(Vt=(Ht=(Dt=(kt=(Rt=(mt=rt==null?void 0:rt.sourceStaffEntry)==null?void 0:mt.voiceEntries)==null?void 0:Rt[0])==null?void 0:kt.notes)==null?void 0:Dt[0])==null?void 0:Ht.length)!=null&&Vt.realValue&&(at+=rt.sourceStaffEntry.voiceEntries[0].notes[0].length.realValue)}),at0&&(s+=S,state$1.fixtime=s),state$1.isEvxml&&(s=state$1.evXmlBeginTime?state$1.evXmlBeginTime:s,state$1.fixtime=s),console.log("节拍器时间",s,state$1.evXmlBeginTime)}let bt=(tt=nt[0])==null?void 0:tt.stave;Je.sourceMeasure.multipleRestMeasures&&(M=Je.sourceMeasure.multipleRestMeasures,T=0),Tet===(Qe==null?void 0:Qe.attrs.id)))==null?void 0:ot.length)||0;Et=(yt=Je==null?void 0:Je.noteTimeInfo[at])==null?void 0:yt.begin,Bt=(ct=Je==null?void 0:Je.noteTimeInfo[at])==null?void 0:ct.end,Et&&(Z=Et-s)}Qe!=null&&Qe.attrs.id&&$.push(Qe==null?void 0:Qe.attrs.id);const At={isStaccato:Je.voiceEntry.isStaccato(),isRestFlag:Je.isRestFlag,noteId:Je.NoteToGraphicalNoteObjectId,measureListIndex:Je.sourceMeasure.measureListIndex,MeasureNumberXML:Je.sourceMeasure.MeasureNumberXML,_noteLength:Fe,svgElement:Qe,frequency:((dt=Je==null?void 0:Je.pitch)==null?void 0:dt.frequency)||-1,nextFrequency:((Pt=Je==null?void 0:Je.pitch)==null?void 0:Pt.nextFrequency)||-1,prevFrequency:((ht=Je==null?void 0:Je.pitch)==null?void 0:ht.prevFrequency)||-1,difftime:S,octaveOffset:(pt=nt[0])==null?void 0:pt.octaveOffset,speed:Se,beatSpeed:re,i:d,si:y,stepSpeeds:b,measureOpenIndex:l.length-1,measures:A,tempoInBPM:Je.sourceMeasure.tempoInBPM,measureLength:lt,relaMeasureLength:x,id:Qe==null?void 0:Qe.attrs.id,note:Je.halfTone+12,fixtime:s,relativeTime:retain(Z),time:state$1.isEvxml&&Et?retain(Et):retain(Z+s),endtime:state$1.isEvxml&&Bt?retain(Bt):retain(st+s),relaEndtime:retain(st),realValue:vt,halfTone:Je.halfTone,noteElement:Je,fixedKey:ft,realKey:0,duration:0,formatLyricsEntries:formatLyricsEntries(Je),stave:bt,firstVerticalMeasure:nt[0],noteLength:1,osdmContext:i,speedbeatUnit:C,multipleRestMeasures:T,totalMultipleRestMeasures:M,measureSpeed:We,maxNoteNum:Je.maxNoteNum,repeatIdx:te.repeatIdx||0,xmlNoteTime:retain(N),xmlNoteEndTime:retain(N+He),xmlMp3BeatFixTime:O,notBeatFixtime:state$1.isOpenMetronome?s-O:s,notBeatTime:state$1.isEvxml&&Et?retain(Et):retain(Z+(state$1.isOpenMetronome?s-O:s)),notBeatEndTime:state$1.isEvxml&&Bt?retain(Bt):retain(st+(state$1.isOpenMetronome?s-O:s))};if(N+=He,state$1.isEvxml&&At.repeatIdx&&At.i>0&&At.MeasureNumberXML===1&&At.noteId===0){const at=state$1.evXmlBeginArr[At.repeatIdx]||0;At.time=At.time+at,At.endtime=At.endtime+at,E=E+at,Z=Z+at}At.realKey=m(Je.halfTone-ft*12,At),At.duration=At.endtime-At.time;let Tt=((Gt=(Ct=nt[0])==null?void 0:Ct.vfVoices["1"])==null?void 0:Gt.tickables)||[];[121].includes(state$1.subjectId)&&(Tt=Je.sourceMeasure.verticalSourceStaffEntryContainers),Tt=Tt.filter(at=>{var et;return((et=at.attrs)==null?void 0:et.type)!=="GhostNote"});const Nt=state$1.isCombineRender&&Je.maxNoteNum?Je.maxNoteNum:Tt.length;At.noteLength=Nt||1,o.push(At),a.push(At.id),A.push(At),yJe.relativeTime-te.relativeTime).map((Je,te)=>Object.assign(Je,{i:te}));console.timeEnd("音符跑完时间");try{i.cursor.reset()}catch(Je){}return state$1.activeMeasureIndex=q[0].MeasureNumberXML,q},getNoteByMeasuresSlursStart=i=>{let e=i,r;if(i.noteElement.tie&&i.noteElement.tie.StartNote&&(r=i.noteElement.tie.StartNote),e&&r&&r!==e.noteElement){const s=[];for(const o of state$1.times)r===o.noteElement&&s.push(o);if(s.length)return s.find(o=>o.i===i.i-1)||s[0]}return e},getComposer=i=>{var r,s;const e=Array.from(i.querySelectorAll("creator"));for(const o of e)o&&o.getAttribute("type")==="composer"&&!state$1.musicComposer&&(state$1.musicComposer=((r=o.textContent)==null?void 0:r.trim())||""),o&&o.getAttribute("type")==="lyricist"&&!state$1.musicLyricist&&(state$1.musicLyricist=((s=o.textContent)==null?void 0:s.trim())||"")},parseXmlToRepeat=i=>{if(!i.length)return;let e=[],r=0,s=0;for(let o=0;o{let r=-1;if(state$1.repeatInfo.length){for(let s=state$1.repeatInfo.length-1;s>=0;s--){const{start:o,end:a}=state$1.repeatInfo[s];if(i<=o&&e>=a)return r=s,{repeatIdx:r,canRepeat:!0}}return{repeatIdx:r,canRepeat:!1}}else return{repeatIdx:r,canRepeat:!1}},customizationXml=i=>{var c,u;const e=Array.from(i.querySelectorAll("credit")),r=Array.from(i.querySelectorAll("creator")),s=Array.from(i.querySelectorAll("grace")),o=Array.from(i.getElementsByTagName("measure")),a=Array.from(i.getElementsByTagName("note"));let l=0;if(a&&a.length)for(const m of a)lb.getAttribute("segno")==="segno");!g&&d&&A&&m.parentNode.removeChild(m)}if(l>1&&!(i.querySelectorAll("repeat").length>0)){const g=o.last();if(g.getElementsByTagName("barline").length){const d=g.getElementsByTagName("barline")[0];d.innerHTML=d.innerHTML+''}else g.innerHTML=g.innerHTML+` light-heavy `}},analyzeEvxml=(i,e)=>{var u,m,g,d,y,A,b,S,E,x,C,P,k,I,M,T,F,D,N;const r=(g=(m=(u=i.getElementsByTagName("timegap")[0])==null?void 0:u.getElementsByTagName("values")[0])==null?void 0:m.getElementsByTagName("item")[0])==null?void 0:g.getAttribute("num"),s=(A=(y=(d=i.getElementsByTagName("timegap")[0])==null?void 0:d.getElementsByTagName("values")[0])==null?void 0:y.getElementsByTagName("item")[0])==null?void 0:A.getAttribute("den"),o=(E=(S=(b=i.getElementsByTagName("timegap")[0])==null?void 0:b.getElementsByTagName("values")[0])==null?void 0:S.getElementsByTagName("item")[1])==null?void 0:E.getAttribute("num"),a=(P=(C=(x=i.getElementsByTagName("timegap")[0])==null?void 0:x.getElementsByTagName("values")[0])==null?void 0:C.getElementsByTagName("item")[1])==null?void 0:P.getAttribute("den"),l=(k=i.getElementsByTagName("timegap"))!=null&&k.length?Array.from((F=(T=(M=(I=i.getElementsByTagName("timegap"))==null?void 0:I[0])==null?void 0:M.getElementsByTagName("values"))==null?void 0:T[0])==null?void 0:F.getElementsByTagName("item")):[],c=i.getElementsByTagName("measure")[0];if(c){const O=(N=(D=c.getElementsByTagName("times")[0])==null?void 0:D.getElementsByTagName("time")[0])==null?void 0:N.getAttribute("begin");state$1.evXmlBeginTime=O?O/1e3:r?60/state$1.originSpeed*r*4/s:0,state$1.secondEvXmlBeginTime=O?0:o?60/state$1.originSpeed*o*4/a:0;const B=i.getElementsByTagName("timegap").length>0,V=i.getElementsByTagName("times").length>0;if(l&&l.length&&!O)for(const R of l){const Q=R==null?void 0:R.getAttribute("num"),_=R==null?void 0:R.getAttribute("den"),K=Q?60/state$1.originSpeed*Q*4/_:0;state$1.evXmlBeginArr.push(K)}console.log("🚀 ~ evxml解析","有timegap:",B,"有times:",V,"timegap集合",state$1.evXmlBeginArr,"第一个timegap",state$1.evXmlBeginTime)}},compatibleXmlPitchVoice=i=>{var s,o,a;if(Array.from(i.getElementsByTagName("part-name")).filter(l=>{var c;return((c=l==null?void 0:l.textContent)==null?void 0:c.trim().toLocaleUpperCase())!=="COMMON"}).length==1){const c=((a=(o=(s=(Array.from(i.getElementsByTagName("instrument-name"))||[])[0])==null?void 0:s.textContent)==null?void 0:o.trim())==null?void 0:a.toLocaleLowerCase())||"";let u=!1;switch(state$1.musicalCodeId){case 37:case 38:u=!!(!c||c.includes("solo")||c.includes("tenor recorder"));break;case 33:u=!!(!c||c.includes("solo")||c.includes("panpipes"));break;case 34:u=!!(!c||c.includes("solo")||c.includes("ocarina"));break;case 35:u=!!(!c||c.includes("solo")||c.includes("woodwind"));break;case 39:u=!!(!c||c.includes("solo")||c.includes("whistling"));break;default:u=!!(!c||c.includes("solo"));break}window.xmlNeedAdjustVoice=u}},Notfind=defineComponent({name:"notfund",render(){return createVNode(Empty,{image:"error",description:this.$route.path+" 路径不存在"},{default:()=>[createVNode(Button$1,{type:"primary",onClick:()=>this.$router.replace("/")},{default:()=>[createTextVNode("返回首页")]})]})}});export{store_legacy as $,Swipe as A,SwipeItem as B,Popup as C,handleEndSoundCheck as D,handleViewReport as E,Fragment as F,handleStartEvaluat as G,api_videoUpdate as H,Icon$1 as I,api_proxyServiceMessage as J,connectWebsocket as K,getNoteByMeasuresSlursStart as L,useClickAway as M,NoticeBar as N,Button$1 as O,Progress as P,Slider as Q,RouterView as R,Snackbar$1 as S,TheError as T,handleSetSpeed as U,Tabs as V,Tab as W,Cell as X,Switch$1 as Y,api_openCamera as Z,api_closeCamera as _,setBehaviorId as a,api_setCache as a$,toRefs as a0,getInstrumentName as a1,Picker as a2,List$1 as a3,isVNode as a4,api_cloudDestroy as a5,postMessage$1 as a6,useRoute$1 as a7,showLoadingToast as a8,request$1$1 as a9,isRhythmicExercises as aA,subjectFingering as aB,formateTimes as aC,Metronome as aD,getStorageSpeed as aE,nextTick as aF,api_cloudLoading as aG,addMeasureScore as aH,createRouter as aI,createWebHashHistory as aJ,Notfind as aK,setStoreData as aL,createApp as aM,Vue3Lottie as aN,api_savePicture as aO,musicRenderTypeKey as aP,resetRenderMusicScore as aQ,getAudioCurrentTime as aR,handleRessetState as aS,toggleFollow as aT,handleFollowStart as aU,handleFollowEnd as aV,api_setEventTracking as aW,Tick as aX,FollowPractice as aY,handleInitTick as aZ,promisefiyPostMessage as a_,closeToast as aa,getBehaviorId as ab,getCampId as ac,onUnmounted as ad,handleChangeSection as ae,togglePlay as af,Circle as ag,metronomeData as ah,handleResetPlay as ai,Badge as aj,api_back as ak,useRouter as al,Field as am,getSecondRPM as an,customData as ao,setGlobalData as ap,api_setStatusBarVisibility as aq,onBeforeUnmount as ar,Skeleton as as,Transition as at,MusicScore as au,AudioList as av,Evaluating as aw,Fingering as ax,isSpecialShapedScreen as ay,mappingVoicePart as az,setCampId as b,getToken as b0,followData as b1,api_suspendPlay as b2,hanldeDirectSelection as b3,showDialog as b4,api_openWebView as b5,musicscoresettingKey as b6,createNamespace$1 as b7,useChildren$1 as b8,useCustomFieldValue as b9,studentQueryUserInfo as bA,Home as bB,__vitePreload as bC,sendResult as bD,addCheckPlayEnd as bE,removeResult as bF,removeCheckPlayEnd as bG,api_toggleTune as bH,startCheckDelay as bI,getEarphone as bJ,commonjsGlobal as bK,EnumMusicRenderType as bL,moveGracePosition as bM,IPlatform as bN,api_musicPracticeRecordDetail as bO,getMusicDetail as bP,index as bQ,numericProp as ba,unknownProp as bb,withInstall as bc,makeStringProp as bd,extend$2 as be,makeRequiredProp as bf,truthProp as bg,addUnit as bh,useParent$1 as bi,pick$1 as bj,mergeProps as bk,watchEffect as bl,makeArrayProp as bm,inBrowser$2 as bn,BORDER_BOTTOM as bo,defineListenerProp as bp,useZIndex as bq,useTeleport as br,useLock as bs,useRouteListener as bt,Teleport as bu,call as bv,withDirectives as bw,createNamespace as bx,vShow as by,api_getToken as bz,onMounted as c,defineComponent as d,computed as e,storeData as f,getQuery as g,createVNode as h,setUserInfo as i,getRandomKey as j,createTextVNode as k,ref as l,state$1 as m,reactive as n,onBeforeMount as o,evaluatingData as p,showToast as q,request as r,setToken as s,queryString as t,api_shareAchievements as u,browser as v,watch as w,handlePerformDetection as x,handleStartBegin as y,handleEndBegin as z};