/** * Live2D Cubism Core * (C) 2019 Live2D Inc. All rights reserved. * * This file is licensed pursuant to the license agreement below. * This file corresponds to the "Redistributable Code" in the agreement. * https://www.live2d.com/eula/live2d-proprietary-software-license-agreement_en.html */ var Live2DCubismCore;!function(Live2DCubismCore){var _scriptDir,_csm=function(){function _csm(){}return _csm.getVersion=function(){return _em.ccall("csmGetVersion","number",[],[])},_csm.getLatestMocVersion=function(){return _em.ccall("csmGetLatestMocVersion","number",[],[])},_csm.getMocVersion=function(moc,mocSize){return _em.ccall("csmGetMocVersion","number",["number","number"],[moc,mocSize])},_csm.getLogFunction=function(){return _em.ccall("csmGetLogFunction","number",[],[])},_csm.getSizeofModel=function(moc){return _em.ccall("csmGetSizeofModel","number",["number"],[moc])},_csm.reviveMocInPlace=function(memory,mocSize){return _em.ccall("csmReviveMocInPlace","number",["number","number"],[memory,mocSize])},_csm.initializeModelInPlace=function(moc,memory,modelSize){return _em.ccall("csmInitializeModelInPlace","number",["number","number","number"],[moc,memory,modelSize])},_csm.hasMocConsistency=function(memory,mocSize){return _em.ccall("csmHasMocConsistency","number",["number","number"],[memory,mocSize])},_csm.getRenderOrders=function(model){return _em.ccall("csmGetRenderOrders","number",["number"],[model])},_csm.getParameterCount=function(model){return _em.ccall("csmGetParameterCount","number",["number"],[model])},_csm.getParameterIds=function(model){return _em.ccall("csmGetParameterIds","number",["number"],[model])},_csm.getParameterMinimumValues=function(model){return _em.ccall("csmGetParameterMinimumValues","number",["number"],[model])},_csm.getParameterTypes=function(model){return _em.ccall("csmGetParameterTypes","number",["number"],[model])},_csm.getParameterMaximumValues=function(model){return _em.ccall("csmGetParameterMaximumValues","number",["number"],[model])},_csm.getParameterDefaultValues=function(model){return _em.ccall("csmGetParameterDefaultValues","number",["number"],[model])},_csm.getParameterValues=function(model){return _em.ccall("csmGetParameterValues","number",["number"],[model])},_csm.getParameterRepeats=function(model){return _em.ccall("csmGetParameterRepeats","number",["number"],[model])},_csm.getParameterKeyCounts=function(model){return _em.ccall("csmGetParameterKeyCounts","number",["number"],[model])},_csm.getParameterKeyValues=function(model){return _em.ccall("csmGetParameterKeyValues","number",["number"],[model])},_csm.getPartCount=function(model){return _em.ccall("csmGetPartCount","number",["number"],[model])},_csm.getPartIds=function(model){return _em.ccall("csmGetPartIds","number",["number"],[model])},_csm.getPartOpacities=function(model){return _em.ccall("csmGetPartOpacities","number",["number"],[model])},_csm.getPartParentPartIndices=function(model){return _em.ccall("csmGetPartParentPartIndices","number",["number"],[model])},_csm.getPartOffscreenIndices=function(model){return _em.ccall("csmGetPartOffscreenIndices","number",["number"],[model])},_csm.getDrawableCount=function(model){return _em.ccall("csmGetDrawableCount","number",["number"],[model])},_csm.getDrawableIds=function(model){return _em.ccall("csmGetDrawableIds","number",["number"],[model])},_csm.getDrawableConstantFlags=function(model){return _em.ccall("csmGetDrawableConstantFlags","number",["number"],[model])},_csm.getDrawableDynamicFlags=function(model){return _em.ccall("csmGetDrawableDynamicFlags","number",["number"],[model])},_csm.getDrawableTextureIndices=function(model){return _em.ccall("csmGetDrawableTextureIndices","number",["number"],[model])},_csm.getDrawableDrawOrders=function(model){return _em.ccall("csmGetDrawableDrawOrders","number",["number"],[model])},_csm.getDrawableOpacities=function(model){return _em.ccall("csmGetDrawableOpacities","number",["number"],[model])},_csm.getDrawableMaskCounts=function(model){return _em.ccall("csmGetDrawableMaskCounts","number",["number"],[model])},_csm.getDrawableMasks=function(model){return _em.ccall("csmGetDrawableMasks","number",["number"],[model])},_csm.getDrawableVertexCounts=function(model){return _em.ccall("csmGetDrawableVertexCounts","number",["number"],[model])},_csm.getDrawableVertexPositions=function(model){return _em.ccall("csmGetDrawableVertexPositions","number",["number"],[model])},_csm.getDrawableVertexUvs=function(model){return _em.ccall("csmGetDrawableVertexUvs","number",["number"],[model])},_csm.getDrawableIndexCounts=function(model){return _em.ccall("csmGetDrawableIndexCounts","number",["number"],[model])},_csm.getDrawableIndices=function(model){return _em.ccall("csmGetDrawableIndices","number",["number"],[model])},_csm.getDrawableMultiplyColors=function(model){return _em.ccall("csmGetDrawableMultiplyColors","number",["number"],[model])},_csm.getDrawableScreenColors=function(model){return _em.ccall("csmGetDrawableScreenColors","number",["number"],[model])},_csm.getDrawableParentPartIndices=function(model){return _em.ccall("csmGetDrawableParentPartIndices","number",["number"],[model])},_csm.getDrawableBlendModes=function(model){return _em.ccall("csmGetDrawableBlendModes","number",["number"],[model])},_csm.getOffscreenCount=function(model){return _em.ccall("csmGetOffscreenCount","number",["number"],[model])},_csm.getOffscreenBlendModes=function(model){return _em.ccall("csmGetOffscreenBlendModes","number",["number"],[model])},_csm.getOffscreenOpacities=function(model){return _em.ccall("csmGetOffscreenOpacities","number",["number"],[model])},_csm.getOffscreenOwnerIndices=function(model){return _em.ccall("csmGetOffscreenOwnerIndices","number",["number"],[model])},_csm.getOffscreenMultiplyColors=function(model){return _em.ccall("csmGetOffscreenMultiplyColors","number",["number"],[model])},_csm.getOffscreenScreenColors=function(model){return _em.ccall("csmGetOffscreenScreenColors","number",["number"],[model])},_csm.getOffscreenMaskCounts=function(model){return _em.ccall("csmGetOffscreenMaskCounts","number",["number"],[model])},_csm.getOffscreenMasks=function(model){return _em.ccall("csmGetOffscreenMasks","number",["number"],[model])},_csm.getOffscreenConstantFlags=function(model){return _em.ccall("csmGetOffscreenConstantFlags","number",["number"],[model])},_csm.mallocMoc=function(mocSize){return _em.ccall("csmMallocMoc","number",["number"],[mocSize])},_csm.mallocModelAndInitialize=function(moc){return _em.ccall("csmMallocModelAndInitialize","number",["number"],[moc])},_csm.malloc=function(size){return _em.ccall("csmMalloc","number",["number"],[size])},_csm.setLogFunction=function(handler){_em.ccall("csmSetLogFunction",null,["number"],[handler])},_csm.updateModel=function(model){_em.ccall("csmUpdateModel",null,["number"],[model])},_csm.readCanvasInfo=function(model,outSizeInPixels,outOriginInPixels,outPixelsPerUnit){_em.ccall("csmReadCanvasInfo",null,["number","number","number","number"],[model,outSizeInPixels,outOriginInPixels,outPixelsPerUnit])},_csm.resetDrawableDynamicFlags=function(model){_em.ccall("csmResetDrawableDynamicFlags",null,["number"],[model])},_csm.free=function(memory){_em.ccall("csmFree",null,["number"],[memory])},_csm.initializeAmountOfMemory=function(size){_em.ccall("csmInitializeAmountOfMemory",null,["number"],[size])},_csm}(),Version=(Live2DCubismCore.AlignofMoc=64,Live2DCubismCore.AlignofModel=16,Live2DCubismCore.MocVersion_Unknown=0,Live2DCubismCore.MocVersion_30=1,Live2DCubismCore.MocVersion_33=2,Live2DCubismCore.MocVersion_40=3,Live2DCubismCore.MocVersion_42=4,Live2DCubismCore.MocVersion_50=5,Live2DCubismCore.MocVersion_53=6,Live2DCubismCore.ParameterType_Normal=0,Live2DCubismCore.ParameterType_BlendShape=1,Live2DCubismCore.ColorBlendType_Normal=0,Live2DCubismCore.ColorBlendType_Add=3,Live2DCubismCore.ColorBlendType_AddGlow=4,Live2DCubismCore.ColorBlendType_Darken=5,Live2DCubismCore.ColorBlendType_Multiply=6,Live2DCubismCore.ColorBlendType_ColorBurn=7,Live2DCubismCore.ColorBlendType_LinearBurn=8,Live2DCubismCore.ColorBlendType_Lighten=9,Live2DCubismCore.ColorBlendType_Screen=10,Live2DCubismCore.ColorBlendType_ColorDodge=11,Live2DCubismCore.ColorBlendType_Overlay=12,Live2DCubismCore.ColorBlendType_SoftLight=13,Live2DCubismCore.ColorBlendType_HardLight=14,Live2DCubismCore.ColorBlendType_LinearLight=15,Live2DCubismCore.ColorBlendType_Hue=16,Live2DCubismCore.ColorBlendType_Color=17,Live2DCubismCore.ColorBlendType_AddCompatible=1,Live2DCubismCore.ColorBlendType_MultiplyCompatible=2,Live2DCubismCore.AlphaBlendType_Over=0,Live2DCubismCore.AlphaBlendType_Atop=1,Live2DCubismCore.AlphaBlendType_Out=2,Live2DCubismCore.AlphaBlendType_ConjointOver=3,Live2DCubismCore.AlphaBlendType_DisjointOver=4,function(){function Version(){}return Version.csmGetVersion=function(){return _csm.getVersion()},Version.csmGetLatestMocVersion=function(){return _csm.getLatestMocVersion()},Version.csmGetMocVersion=function(data,mocBytes){return data instanceof Moc?_csm.getMocVersion(data._ptr,mocBytes.byteLength):(mocBytes=_csm.mallocMoc(data.byteLength))?(new Uint8Array(_em.HEAPU8.buffer,mocBytes,data.byteLength).set(new Uint8Array(data)),data=_csm.getMocVersion(mocBytes,data.byteLength),_csm.free(mocBytes),data):0},Version}()),Version=(Live2DCubismCore.Version=Version,function(){function Logging(){}return Logging.csmSetLogFunction=function(handler){Logging.logFunction=handler;handler=_em.addFunction(Logging.wrapLogFunction,"vi");_csm.setLogFunction(handler)},Logging.csmGetLogFunction=function(){return Logging.logFunction},Logging.wrapLogFunction=function(messagePtr){messagePtr=_em.UTF8ToString(messagePtr);Logging.logFunction(messagePtr)},Logging}()),Moc=(Live2DCubismCore.Logging=Version,function(){function Moc(mocBytes){var memory=_csm.mallocMoc(mocBytes.byteLength);memory&&(new Uint8Array(_em.HEAPU8.buffer,memory,mocBytes.byteLength).set(new Uint8Array(mocBytes)),this._ptr=_csm.reviveMocInPlace(memory,mocBytes.byteLength),this._ptr||_csm.free(memory))}return Moc.prototype.hasMocConsistency=function(mocBytes){var memory=_csm.mallocMoc(mocBytes.byteLength);if(memory)return new Uint8Array(_em.HEAPU8.buffer,memory,mocBytes.byteLength).set(new Uint8Array(mocBytes)),mocBytes=_csm.hasMocConsistency(memory,mocBytes.byteLength),_csm.free(memory),mocBytes},Moc.fromArrayBuffer=function(buffer){return buffer&&(buffer=new Moc(buffer))._ptr?buffer:null},Moc.prototype._release=function(){_csm.free(this._ptr),this._ptr=0},Moc}()),Version=(Live2DCubismCore.Moc=Moc,function(){function Model(moc){this._ptr=_csm.mallocModelAndInitialize(moc._ptr),this._ptr&&(this.parameters=new Parameters(this._ptr),this.parts=new Parts(this._ptr),this.drawables=new Drawables(this._ptr),this.offscreens=new Offscreens(this._ptr),this.canvasinfo=new CanvasInfo(this._ptr),moc=_csm.getDrawableCount(this._ptr)+_csm.getOffscreenCount(this._ptr),this.renderOrders=new Int32Array(_em.HEAP32.buffer,_csm.getRenderOrders(this._ptr),moc))}return Model.fromMoc=function(moc){moc=new Model(moc);return moc._ptr?moc:null},Model.prototype.getRenderOrders=function(){return this.renderOrders},Model.prototype.update=function(){_csm.updateModel(this._ptr)},Model.prototype.release=function(){_csm.free(this._ptr),this._ptr=0},Model}()),CanvasInfo=(Live2DCubismCore.Model=Version,function(modelPtr){var _canvasSize_data,_canvasSize_dataPtr,_canvasSize_nDataBytes,_canvasOrigin_dataPtr,_canvasOrigin_nDataBytes,_canvasPPU_nDataBytes,_canvasPPU_dataPtr;modelPtr&&(_canvasSize_nDataBytes=(_canvasSize_data=new Float32Array(2)).length*_canvasSize_data.BYTES_PER_ELEMENT,_canvasSize_dataPtr=_csm.malloc(_canvasSize_nDataBytes),(_canvasSize_dataPtr=new Uint8Array(_em.HEAPU8.buffer,_canvasSize_dataPtr,_canvasSize_nDataBytes)).set(new Uint8Array(_canvasSize_data.buffer)),_canvasOrigin_nDataBytes=(_canvasSize_nDataBytes=new Float32Array(2)).length*_canvasSize_nDataBytes.BYTES_PER_ELEMENT,_canvasOrigin_dataPtr=_csm.malloc(_canvasOrigin_nDataBytes),(_canvasOrigin_dataPtr=new Uint8Array(_em.HEAPU8.buffer,_canvasOrigin_dataPtr,_canvasOrigin_nDataBytes)).set(new Uint8Array(_canvasSize_nDataBytes.buffer)),_canvasPPU_nDataBytes=(_canvasOrigin_nDataBytes=new Float32Array(1)).length*_canvasOrigin_nDataBytes.BYTES_PER_ELEMENT,_canvasPPU_dataPtr=_csm.malloc(_canvasPPU_nDataBytes),(_canvasPPU_dataPtr=new Uint8Array(_em.HEAPU8.buffer,_canvasPPU_dataPtr,_canvasPPU_nDataBytes)).set(new Uint8Array(_canvasOrigin_nDataBytes.buffer)),_csm.readCanvasInfo(modelPtr,_canvasSize_dataPtr.byteOffset,_canvasOrigin_dataPtr.byteOffset,_canvasPPU_dataPtr.byteOffset),_canvasSize_data=new Float32Array(_canvasSize_dataPtr.buffer,_canvasSize_dataPtr.byteOffset,_canvasSize_dataPtr.length),_canvasSize_nDataBytes=new Float32Array(_canvasOrigin_dataPtr.buffer,_canvasOrigin_dataPtr.byteOffset,_canvasOrigin_dataPtr.length),_canvasOrigin_nDataBytes=new Float32Array(_canvasPPU_dataPtr.buffer,_canvasPPU_dataPtr.byteOffset,_canvasPPU_dataPtr.length),this.CanvasWidth=_canvasSize_data[0],this.CanvasHeight=_canvasSize_data[1],this.CanvasOriginX=_canvasSize_nDataBytes[0],this.CanvasOriginY=_canvasSize_nDataBytes[1],this.PixelsPerUnit=_canvasOrigin_nDataBytes[0],_csm.free(_canvasSize_dataPtr.byteOffset),_csm.free(_canvasOrigin_dataPtr.byteOffset),_csm.free(_canvasPPU_dataPtr.byteOffset))}),Parameters=(Live2DCubismCore.CanvasInfo=CanvasInfo,function(modelPtr){this.count=_csm.getParameterCount(modelPtr),length=_csm.getParameterCount(modelPtr),this.ids=new Array(length);for(var length,length2,_ids=new Uint32Array(_em.HEAPU32.buffer,_csm.getParameterIds(modelPtr),length),i=0;i<_ids.length;i++)this.ids[i]=_em.UTF8ToString(_ids[i]);length=_csm.getParameterCount(modelPtr),this.minimumValues=new Float32Array(_em.HEAPF32.buffer,_csm.getParameterMinimumValues(modelPtr),length),length=_csm.getParameterCount(modelPtr),this.types=new Int32Array(_em.HEAP32.buffer,_csm.getParameterTypes(modelPtr),length),length=_csm.getParameterCount(modelPtr),this.maximumValues=new Float32Array(_em.HEAPF32.buffer,_csm.getParameterMaximumValues(modelPtr),length),length=_csm.getParameterCount(modelPtr),this.defaultValues=new Float32Array(_em.HEAPF32.buffer,_csm.getParameterDefaultValues(modelPtr),length),length=_csm.getParameterCount(modelPtr),this.values=new Float32Array(_em.HEAPF32.buffer,_csm.getParameterValues(modelPtr),length),length=_csm.getParameterCount(modelPtr),this.repeats=new Int32Array(_em.HEAP32.buffer,_csm.getParameterRepeats(modelPtr),length),length=_csm.getParameterCount(modelPtr),this.keyCounts=new Int32Array(_em.HEAP32.buffer,_csm.getParameterKeyCounts(modelPtr),length),length=_csm.getParameterCount(modelPtr),length2=new Int32Array(_em.HEAP32.buffer,_csm.getParameterKeyCounts(modelPtr),length),this.keyValues=new Array(length);for(var _keyValues=new Uint32Array(_em.HEAPU32.buffer,_csm.getParameterKeyValues(modelPtr),length),i=0;i<_keyValues.length;i++)this.keyValues[i]=new Float32Array(_em.HEAPF32.buffer,_keyValues[i],length2[i])}),Parts=(Live2DCubismCore.Parameters=Parameters,function(modelPtr){this.count=_csm.getPartCount(modelPtr),length=_csm.getPartCount(modelPtr),this.ids=new Array(length);for(var length,_ids=new Uint32Array(_em.HEAPU32.buffer,_csm.getPartIds(modelPtr),length),i=0;i<_ids.length;i++)this.ids[i]=_em.UTF8ToString(_ids[i]);length=_csm.getPartCount(modelPtr),this.opacities=new Float32Array(_em.HEAPF32.buffer,_csm.getPartOpacities(modelPtr),length),length=_csm.getPartCount(modelPtr),this.parentIndices=new Int32Array(_em.HEAP32.buffer,_csm.getPartParentPartIndices(modelPtr),length),length=_csm.getPartCount(modelPtr),this.offscreenIndices=new Int32Array(_em.HEAP32.buffer,_csm.getPartOffscreenIndices(modelPtr),length)}),Drawables=(Live2DCubismCore.Parts=Parts,function(){function Drawables(modelPtr){this._modelPtr=modelPtr;for(var length,length2=null,_ids=(this.count=_csm.getDrawableCount(modelPtr),length=_csm.getDrawableCount(modelPtr),this.ids=new Array(length),new Uint32Array(_em.HEAPU32.buffer,_csm.getDrawableIds(modelPtr),length)),i=0;i<_ids.length;i++)this.ids[i]=_em.UTF8ToString(_ids[i]);length=_csm.getDrawableCount(modelPtr),this.constantFlags=new Uint8Array(_em.HEAPU8.buffer,_csm.getDrawableConstantFlags(modelPtr),length),length=_csm.getDrawableCount(modelPtr),this.dynamicFlags=new Uint8Array(_em.HEAPU8.buffer,_csm.getDrawableDynamicFlags(modelPtr),length),length=_csm.getDrawableCount(modelPtr),this.textureIndices=new Int32Array(_em.HEAP32.buffer,_csm.getDrawableTextureIndices(modelPtr),length),length=_csm.getDrawableCount(modelPtr),this.drawOrders=new Int32Array(_em.HEAP32.buffer,_csm.getDrawableDrawOrders(modelPtr),length),length=_csm.getDrawableCount(modelPtr),this.opacities=new Float32Array(_em.HEAPF32.buffer,_csm.getDrawableOpacities(modelPtr),length),length=_csm.getDrawableCount(modelPtr),this.maskCounts=new Int32Array(_em.HEAP32.buffer,_csm.getDrawableMaskCounts(modelPtr),length),length=_csm.getDrawableCount(modelPtr),this.vertexCounts=new Int32Array(_em.HEAP32.buffer,_csm.getDrawableVertexCounts(modelPtr),length),length=_csm.getDrawableCount(modelPtr),this.indexCounts=new Int32Array(_em.HEAP32.buffer,_csm.getDrawableIndexCounts(modelPtr),length),length=_csm.getDrawableCount(modelPtr),this.multiplyColors=new Float32Array(_em.HEAPF32.buffer,_csm.getDrawableMultiplyColors(modelPtr),4*length),length=_csm.getDrawableCount(modelPtr),this.screenColors=new Float32Array(_em.HEAPF32.buffer,_csm.getDrawableScreenColors(modelPtr),4*length),length=_csm.getDrawableCount(modelPtr),this.parentPartIndices=new Int32Array(_em.HEAP32.buffer,_csm.getDrawableParentPartIndices(modelPtr),length),length=_csm.getDrawableCount(modelPtr),this.blendModes=new Int32Array(_em.HEAP32.buffer,_csm.getDrawableBlendModes(modelPtr),2*length),length=_csm.getDrawableCount(modelPtr),length2=new Int32Array(_em.HEAP32.buffer,_csm.getDrawableMaskCounts(modelPtr),length),this.masks=new Array(length);for(var _masks=new Uint32Array(_em.HEAPU32.buffer,_csm.getDrawableMasks(modelPtr),length),i=0;i<_masks.length;i++)this.masks[i]=new Int32Array(_em.HEAP32.buffer,_masks[i],length2[i]);length=_csm.getDrawableCount(modelPtr),length2=new Int32Array(_em.HEAP32.buffer,_csm.getDrawableVertexCounts(modelPtr),length),this.vertexPositions=new Array(length);for(var _vertexPositions=new Uint32Array(_em.HEAPU32.buffer,_csm.getDrawableVertexPositions(modelPtr),length),i=0;i<_vertexPositions.length;i++)this.vertexPositions[i]=new Float32Array(_em.HEAPF32.buffer,_vertexPositions[i],2*length2[i]);length=_csm.getDrawableCount(modelPtr),length2=new Int32Array(_em.HEAP32.buffer,_csm.getDrawableVertexCounts(modelPtr),length),this.vertexUvs=new Array(length);for(var _vertexUvs=new Uint32Array(_em.HEAPU32.buffer,_csm.getDrawableVertexUvs(modelPtr),length),i=0;i<_vertexUvs.length;i++)this.vertexUvs[i]=new Float32Array(_em.HEAPF32.buffer,_vertexUvs[i],2*length2[i]);length=_csm.getDrawableCount(modelPtr),length2=new Int32Array(_em.HEAP32.buffer,_csm.getDrawableIndexCounts(modelPtr),length),this.indices=new Array(length);for(var _indices=new Uint32Array(_em.HEAPU32.buffer,_csm.getDrawableIndices(modelPtr),length),i=0;i<_indices.length;i++)this.indices[i]=new Uint16Array(_em.HEAPU16.buffer,_indices[i],length2[i])}return Drawables.prototype.resetDynamicFlags=function(){_csm.resetDrawableDynamicFlags(this._modelPtr)},Drawables}()),Offscreens=(Live2DCubismCore.Drawables=Drawables,function(modelPtr){this.count=_csm.getOffscreenCount(modelPtr),length=_csm.getOffscreenCount(modelPtr),this.blendModes=new Int32Array(_em.HEAP32.buffer,_csm.getOffscreenBlendModes(modelPtr),2*length),length=_csm.getOffscreenCount(modelPtr),this.opacities=new Float32Array(_em.HEAPF32.buffer,_csm.getOffscreenOpacities(modelPtr),length),length=_csm.getOffscreenCount(modelPtr),this.ownerIndices=new Int32Array(_em.HEAP32.buffer,_csm.getOffscreenOwnerIndices(modelPtr),length),length=_csm.getOffscreenCount(modelPtr),this.multiplyColors=new Float32Array(_em.HEAPF32.buffer,_csm.getOffscreenMultiplyColors(modelPtr),4*length),length=_csm.getOffscreenCount(modelPtr),this.screenColors=new Float32Array(_em.HEAPF32.buffer,_csm.getOffscreenScreenColors(modelPtr),4*length),length=_csm.getOffscreenCount(modelPtr),this.maskCounts=new Int32Array(_em.HEAP32.buffer,_csm.getOffscreenMaskCounts(modelPtr),length),length=_csm.getOffscreenCount(modelPtr),this.constantFlags=new Uint8Array(_em.HEAPU8.buffer,_csm.getOffscreenConstantFlags(modelPtr),length),length=_csm.getOffscreenCount(modelPtr),length2=new Int32Array(_em.HEAP32.buffer,_csm.getOffscreenMaskCounts(modelPtr),length),this.masks=new Array(length);for(var length,length2,_masks=new Uint32Array(_em.HEAPU32.buffer,_csm.getOffscreenMasks(modelPtr),length),i=0;i<_masks.length;i++)this.masks[i]=new Int32Array(_em.HEAP32.buffer,_masks[i],length2[i])}),Version=(Live2DCubismCore.Offscreens=Offscreens,function(){function Utils(){}return Utils.hasBlendAdditiveBit=function(bitfield){return 1==(1&bitfield)},Utils.hasBlendMultiplicativeBit=function(bitfield){return 2==(2&bitfield)},Utils.hasIsDoubleSidedBit=function(bitfield){return 4==(4&bitfield)},Utils.hasIsInvertedMaskBit=function(bitfield){return 8==(8&bitfield)},Utils.hasIsVisibleBit=function(bitfield){return 1==(1&bitfield)},Utils.hasVisibilityDidChangeBit=function(bitfield){return 2==(2&bitfield)},Utils.hasOpacityDidChangeBit=function(bitfield){return 4==(4&bitfield)},Utils.hasDrawOrderDidChangeBit=function(bitfield){return 8==(8&bitfield)},Utils.hasRenderOrderDidChangeBit=function(bitfield){return 16==(16&bitfield)},Utils.hasVertexPositionsDidChangeBit=function(bitfield){return 32==(32&bitfield)},Utils.hasBlendColorDidChangeBit=function(bitfield){return 64==(64&bitfield)},Utils}()),Version=(Live2DCubismCore.Utils=Version,function(){function Memory(){}return Memory.initializeAmountOfMemory=function(size){16777216>2]+(Mn<<5)|0)>>2],Qn=q[a- -64>>2]+w(Xn,24)|0,Mn=(lo=q[Qn+8>>2])+-1|0,yo=(ro=q[Qn+4>>2])+-1|0,zo=vo=(Xn=q[q[a+156>>2]+(Xn<<2)>>2])+(lo<<3)|0,Ao=wo=Xn+((uo=w(ro,mo=lo+1|0))<<3)|0,Bo=xo=Xn+(lo+uo<<3)|0,Jo=q[Qn+12>>2],so=x(0|ro),to=x(0|lo),a=0;Wn=u[4+(Qn=(po=a<<3)+Nn|0)>>2],Sn=x(Wn*so),Yn=u[Qn>>2],Rn=x(Yn*to),Qn=Wn>=x(1),Sn=!(Wn=x(1)|Yn>2],Co=u[Xn+4>>2],Zn=x(bo-Co),Do=u[4+zo>>2],Eo=u[4+Ao>>2],_n=x(Do-Eo),co=x(x(Zn-_n)*x(.5)),Fo=u[xo>>2],Go=u[Xn>>2],$n=x(Fo-Go),Ho=u[vo>>2],Io=u[wo>>2],ao=x(Ho-Io),eo=x(x($n-ao)*x(.5)),_n=x(x(_n+Zn)*x(.5)),ao=x(x(ao+$n)*x(.5)),Ko=1,Zn=x(x(x(x(x(Co+Do)+Eo)+bo)*x(.25))-x(Zn*x(.5))),$n=x(x(x(x(x(Go+Ho)+Io)+Fo)*x(.25))-x($n*x(.5)))),Wnx(-2)^1|(Ynx(-2)^1)?(u[On+po>>2]=x(Wn*eo)+x(x(Yn*ao)+$n),Rn=x(Wn*co),x(x(Yn*_n)+Zn)):(Yn<=x(0)?Wn<=x(0)?(Vn=x(x(Wn+x(2))*x(.5)),Un=x(x(Yn+x(2))*x(.5)),Rn=x(co+co),no=x(Zn-Rn),Sn=x(eo+eo),oo=x($n-Sn),jo=x(Zn-x(_n+_n)),fo=x(jo-Rn),ko=x($n-x(ao+ao)),go=x(ko-Sn),ho=u[Xn+4>>2],io=u[Xn>>2]):Qn?(Rn=x(co*x(3)),Sn=x(Zn-x(_n+_n)),jo=x(Rn+Sn),fo=x(eo*x(3)),go=x($n-x(ao+ao)),ko=x(fo+go),Vn=x(x(Wn+x(-1))*x(.5)),Un=x(x(Yn+x(2))*x(.5)),ho=x(Rn+Zn),io=x(fo+$n),fo=x(co+Sn),go=x(eo+go),no=u[4+Ao>>2],oo=u[wo>>2]):(Rn=x(Zn-x(_n+_n)),Qn=yo,Tn=x(y(Sn))>2],oo=u[Qn>>2],Qn=Xn+(w(Tn,mo)<<3)|0,ho=u[Qn+4>>2],io=u[Qn>>2]):Yn>=x(1)?Wn<=x(0)?(Vn=x(x(Wn+x(2))*x(.5)),Un=x(x(Yn+x(-1))*x(.5)),Rn=x(co+co),fo=x(x(_n+Zn)-Rn),Sn=x(eo+eo),go=x(x(ao+$n)-Sn),ho=x(x(_n*x(3))+Zn),no=x(ho-Rn),io=x(x(ao*x(3))+$n),oo=x(io-Sn),jo=u[4+zo>>2],ko=u[vo>>2]):Qn?(Rn=x(co*x(3)),jo=x(Rn+x(_n+Zn)),Sn=x(eo*x(3)),ko=x(Sn+x(ao+$n)),bo=Rn,Rn=x(x(_n*x(3))+Zn),ho=x(bo+Rn),bo=Sn,Sn=x(x(ao*x(3))+$n),io=x(bo+Sn),Vn=x(x(Wn+x(-1))*x(.5)),Un=x(x(Yn+x(-1))*x(.5)),no=x(co+Rn),oo=x(eo+Sn),fo=u[4+Bo>>2],go=u[xo>>2]):(Rn=x(x(_n*x(3))+Zn),Qn=yo,Tn=x(y(Sn))>2],go=u[Qn>>2],Qn=Xn+(w(Tn,mo)+lo<<3)|0,jo=u[Qn+4>>2],ko=u[Qn>>2]):Wn<=x(0)?(Vn=x(x(Wn+x(2))*x(.5)),Qn=Mn,Tn=x(y(Sn=Rn))>2],ko=u[Qn>>2],ho=u[4+(Qn=Xn+(Tn<<3)|0)>>2],io=u[Qn>>2]):Qn?(bo=Sn=x(co*x(3)),Qn=Mn,Tn=x(y(Rn))>2],go=u[Qn>>2],no=u[4+(Qn=Xn+(Tn+uo<<3)|0)>>2],oo=u[Qn>>2]):(v[16+qo>>3]=Wn,q[qo>>2]=a,v[8+qo>>3]=Yn,Y(4,1107,qo)),x(Un+Vn)<=x(1)?(u[On+po>>2]=x(go+x(x(oo-go)*Un))+x(x(ko-go)*Vn),Rn=x(fo+x(x(no-fo)*Un)),x(x(jo-fo)*Vn)):(Rn=x(x(1)-Un),Sn=x(x(1)-Vn),u[On+po>>2]=x(io+x(x(ko-io)*Rn))+x(x(oo-io)*Sn),Rn=x(ho+x(x(jo-ho)*Rn)),x(x(no-ho)*Sn)))):(Qn=x(y(bo=Sn))>2]=x(x(x(Rn*x(Sn*u[Tn>>2]))+x(Rn*x(Un*u[Tn+8>>2])))+x(Vn*x(Sn*u[Qn>>2])))+x(Vn*x(Un*u[Qn+8>>2])),Rn=x(x(x(Rn*x(Sn*u[Tn+4>>2]))+x(Rn*x(Un*u[Tn+12>>2])))+x(Vn*x(Sn*u[Qn+4>>2]))),x(Vn*x(Un*u[Qn+12>>2]))):x(Un+Vn)<=x(1)?(Rn=x(x(x(1)-Un)-Vn),Tn=Xn+(Qn<<3)|0,Qn=Xn+(Qn+mo<<3)|0,u[On+po>>2]=x(x(Rn*u[Tn>>2])+x(Un*u[Tn+8>>2]))+x(Vn*u[Qn>>2]),Rn=x(x(Rn*u[Tn+4>>2])+x(Un*u[Tn+12>>2])),x(Vn*u[Qn+4>>2])):(Rn=x(x(Un+x(-1))+Vn),Tn=Xn+(Qn+mo<<3)|0,Sn=x(x(1)-Un),Wn=x(x(1)-Vn),Qn=Xn+(Qn<<3)|0,u[On+po>>2]=x(x(Rn*u[Tn+8>>2])+x(Sn*u[Tn>>2]))+x(Wn*u[Qn+8>>2]),Rn=x(x(Rn*u[Tn+12>>2])+x(Sn*u[Tn+4>>2])),x(Wn*u[Qn+12>>2]))),u[4+(On+po|0)>>2]=Rn+Sn,(0|Pn)!=(0|(a=a+1|0)););L=32+qo|0},n[2]=function(a,uf){a|=0,uf|=0;var vf=0,wf=0,xf=0,yf=0,zf=0,Af=x(0),Bf=0,Cf=0,Ef=(x(0),0),Ff=0,yf=q[a+324>>2],vf=q[a+320>>2],zf=q[a+312>>2];-1==(0|(wf=q[8+(xf=zf+(uf<<5)|0)>>2]))?(q[(Ff=vf)+(vf=uf<<2)>>2]=q[q[a+152>>2]+(q[xf+16>>2]<<2)>>2],q[vf+yf>>2]=1065353216):(Bf=q[xf+16>>2],Cf=q[q[a+156>>2]+(Bf<<2)>>2],n[q[24+(zf+(wf<<5)|0)>>2]](a,wf,Cf,Cf,q[16+(q[a- -64>>2]+w(Bf,24)|0)>>2]),Af=u[q[a+152>>2]+(q[xf+16>>2]<<2)>>2],xf=q[xf+8>>2]<<2,u[(wf=uf<<2)+vf>>2]=Af*u[xf+vf>>2],q[wf+yf>>2]=q[xf+yf>>2]),4<=r[q[q[a>>2]>>2]+4|0]&&(yf=uf<<2,vf=q[a+312>>2]+(uf<<5)|0,wf=q[vf+16>>2]<<2,xf=q[a+332>>2],uf=q[a+328>>2],-1==(0|(zf=q[vf+8>>2]))?(zf=q[a+160>>2],q[(vf=yf<<2)+uf>>2]=q[zf+(wf<<=2)>>2],q[(Bf=4|vf)+uf>>2]=q[(Cf=4|wf)+zf>>2],q[(Ef=8|vf)+uf>>2]=q[zf+(Ff=8|wf)>>2],q[uf+((yf|=3)<<2)>>2]=1065353216,a=q[a+164>>2],q[vf+xf>>2]=q[a+wf>>2],q[xf+Bf>>2]=q[a+Cf>>2],q[xf+Ef>>2]=q[a+Ff>>2]):(wf=(Cf=wf<<2)+q[a+160>>2]|0,u[(vf=(Bf=yf<<2)+uf|0)>>2]=u[wf>>2]*u[(zf=(Ef=zf<<4)+uf|0)>>2],u[vf+4>>2]=u[wf+4>>2]*u[zf+4>>2],u[vf+8>>2]=u[wf+8>>2]*u[zf+8>>2],q[uf+((yf|=3)<<2)>>2]=1065353216,a=Cf+q[a+164>>2]|0,Ff=u[a>>2],Af=u[(vf=xf+Ef|0)>>2],u[(uf=xf+Bf|0)>>2]=x(Ff+Af)-x(Ff*Af),Ff=u[a+4>>2],Af=u[vf+4>>2],u[uf+4>>2]=x(Ff+Af)-x(Ff*Af),Ff=u[a+8>>2],Af=u[vf+8>>2],u[uf+8>>2]=x(Ff+Af)-x(Ff*Af)),q[xf+(yf<<2)>>2]=1065353216)},n[3]=function(a,dm,lm,mm,nm){a|=0,dm|=0,lm|=0,mm|=0,nm|=0;var sm,tm,um,wm,xm,om=0,om=(x(0),x(0),x(0),x(0),x(0),x(0),x(0),x(0),(dm=q[16+(q[a+312>>2]+(dm<<5)|0)>>2])<<2),qm=function(a){var mk,pk,nk,ok,lk=x(0);L=nk=L-16|0,j(a);a:if((mk=2147483647&(ok=b[0]))>>>0<=1061752794)lk=x(1),mk>>>0<964689920||(lk=ca(+a));else if(mk>>>0<=1081824209)pk=+a,lk=1075235812<=mk>>>0?x(-ca(((0|ok)<0?3.141592653589793:-3.141592653589793)+pk)):ba((0|ok)<=-1?1.5707963267948966+pk:1.5707963267948966-pk);else if(mk>>>0<=1088565717)lk=1085271520<=mk>>>0?ca(+a+((0|ok)<0?6.283185307179586:-6.283185307179586)):ba((0|ok)<=-1?-4.71238898038469-+a:+a-4.71238898038469);else if(lk=x(a-a),!(2139095040<=mk>>>0))if((mk=3&Ca(a,8+nk|0))>>>0<=2){switch(mk-1|0){default:lk=ca(v[8+nk>>3]);break a;case 0:lk=ba(-v[8+nk>>3]);break a;case 1:}lk=x(-ca(v[8+nk>>3]))}else lk=ba(v[8+nk>>3]);return L=16+nk|0,lk}(pm=x(x(x(u[4+(q[a+172>>2]+w(dm,12)|0)>>2]+u[om+q[a+288>>2]>>2])*x(3.1415927410125732))/x(180))),rm=u[om+q[a+276>>2]>>2],vm=q[om+q[a+296>>2]>>2],pm=function(a){var Dj,ik,kk,jk=0;L=ik=L-16|0,j(a);a:if((Dj=2147483647&(kk=b[0]))>>>0<=1061752794)Dj>>>0<964689920||(a=ba(+a));else if(Dj>>>0<=1081824209)jk=+a,a=Dj>>>0<=1075235811?(0|kk)<=-1?x(-ca(jk+1.5707963267948966)):ca(jk+-1.5707963267948966):ba(-(((0|kk)<0?3.141592653589793:-3.141592653589793)+jk));else if(Dj>>>0<=1088565717)jk=+a,a=Dj>>>0<=1085271519?(0|kk)<=-1?ca(jk+4.71238898038469):x(-ca(jk+-4.71238898038469)):ba(((0|kk)<0?6.283185307179586:-6.283185307179586)+jk);else if(2139095040<=Dj>>>0)a=x(a-a);else if((Dj=3&Ca(a,8+ik|0))>>>0<=2){switch(Dj-1|0){default:a=ba(v[8+ik>>3]);break a;case 0:a=ca(v[8+ik>>3]);break a;case 1:}a=ba(-v[8+ik>>3])}else a=x(-ca(v[8+ik>>3]));return L=16+ik|0,a}(pm);if((dm=0)<(0|nm))for(qm=x(rm*qm),tm=x(vm?-1:1),wm=x(qm*tm),sm=q[om+q[a+292>>2]>>2]?x(-1):x(1),xm=x(x(rm*pm)*sm),qm=x(qm*sm),rm=x(x(rm*x(-pm))*tm),pm=u[om+q[a+284>>2]>>2],tm=u[om+q[a+280>>2]>>2];om=(a=dm<<3)+mm|0,sm=u[(a=a+lm|0)>>2],um=u[a+4>>2],u[om+4>>2]=pm+x(x(xm*sm)+x(wm*um)),u[om>>2]=tm+x(x(qm*sm)+x(rm*um)),(0|nm)!=(0|(dm=dm+1|0)););},n[4]=function(a,Qe){a|=0,Qe|=0;var af,bf,cf,df,ef,Re,Se=0,Te=0,Ue=0,Ve=x(0),We=0,Xe=0,Ye=x(0),Ze=0,_e=0,$e=0;if(x(0),x(0),x(0),x(0),L=Re=L+-64|0,Ze=q[a+324>>2],_e=q[a+320>>2],Te=q[a+312>>2],-1==(0|(We=q[8+(Ue=Te+(Qe<<5)|0)>>2])))Se=q[Ue+16>>2]<<2,q[(Te=Qe<<2)+_e>>2]=q[Se+q[a+272>>2]>>2],q[Te+Ze>>2]=q[Se+q[a+276>>2]>>2];else{Se=q[Ue+16>>2]<<2,$e=q[Se+q[a+280>>2]>>2],q[24+Re>>2]=$e,Se=q[Se+q[a+284>>2]>>2],q[28+Re>>2]=Se,q[16+Re>>2]=0,bf=1==q[12+(Xe=Te+(We<<5)|0)>>2]?x(-10):x(-.10000000149011612),u[20+Re>>2]=bf,q[60+Re>>2]=Se,q[56+Re>>2]=$e,n[q[Xe+24>>2]](a,We,56+Re|0,48+Re|0,1),Ve=x(1),Te=9;b:{for(;;){if(Se=Te,Ye=x(Ve*x(0)),u[32+Re>>2]=Ye+u[56+Re>>2],af=x(bf*Ve),u[36+Re>>2]=af+u[60+Re>>2],n[q[Xe+24>>2]](a,We,32+Re|0,40+Re|0,1),cf=x(u[44+Re>>2]-u[52+Re>>2]),u[44+Re>>2]=cf,df=x(u[40+Re>>2]-u[48+Re>>2]),u[40+Re>>2]=df,cf!=x(0)||df!=x(0)){Te=q[44+Re>>2],q[8+Re>>2]=q[40+Re>>2],q[12+Re>>2]=Te;break b}if(u[32+Re>>2]=u[56+Re>>2]-Ye,u[36+Re>>2]=u[60+Re>>2]-af,n[q[Xe+24>>2]](a,We,32+Re|0,40+Re|0,1),Ye=x(u[40+Re>>2]-u[48+Re>>2]),u[40+Re>>2]=Ye,af=x(u[44+Re>>2]-u[52+Re>>2]),(u[44+Re>>2]=af)!=x(0)||Ye!=x(0)){u[12+Re>>2]=-af,u[8+Re>>2]=-Ye;break b}if(Te=Se+-1|0,Ve=x(Ve*x(.10000000149011612)),!Se)break}Y(3,1311,0)}Ve=function(a,Qf){var Rf=x(0);if((Rf=x(Aa(u[4+a>>2],u[a>>2])-Aa(u[4+Qf>>2],u[Qf>>2])))x(3.1415927410125732))for(;(Rf=x(Rf+x(-6.2831854820251465)))>x(3.1415927410125732););return Rf}(16+Re|0,8+Re|0),n[q[Xe+24>>2]](a,q[Ue+8>>2],24+Re|0,24+Re|0,1),Te=q[Ue+16>>2]<<2,q[Te+q[a+280>>2]>>2]=q[24+Re>>2],q[Te+q[a+284>>2]>>2]=q[28+Re>>2],Se=Te+q[a+288>>2]|0,u[Se>>2]=u[Se>>2]+x(x(Ve*x(-180))/x(3.1415927410125732)),Ue=q[Ue+8>>2]<<2,u[(Se=Qe<<2)+_e>>2]=u[Te+q[a+272>>2]>>2]*u[Ue+_e>>2],Te=Te+q[a+276>>2]|0,Ve=x(u[Te>>2]*u[Ue+Ze>>2]),u[Se+Ze>>2]=Ve,u[Te>>2]=Ve}4<=r[q[q[a>>2]>>2]+4|0]&&(Se=Qe<<2,Ue=q[a+312>>2]+(Qe<<5)|0,We=q[Ue+16>>2]<<2,Te=q[a+332>>2],Qe=q[a+328>>2],-1==(0|(Xe=q[Ue+8>>2]))?(Xe=q[a+300>>2],q[(Ue=Se<<2)+Qe>>2]=q[Xe+(We<<=2)>>2],q[(Ze=4|Ue)+Qe>>2]=q[(_e=4|We)+Xe>>2],q[($e=8|Ue)+Qe>>2]=q[Xe+(ef=8|We)>>2],q[Qe+((Se|=3)<<2)>>2]=1065353216,a=q[a+304>>2],q[Te+Ue>>2]=q[a+We>>2],q[Te+Ze>>2]=q[a+_e>>2],q[Te+$e>>2]=q[a+ef>>2]):(We=(_e=We<<2)+q[a+300>>2]|0,u[(Ue=(Ze=Se<<2)+Qe|0)>>2]=u[We>>2]*u[(Xe=($e=Xe<<4)+Qe|0)>>2],u[Ue+4>>2]=u[We+4>>2]*u[Xe+4>>2],u[Ue+8>>2]=u[We+8>>2]*u[Xe+8>>2],q[Qe+((Se|=3)<<2)>>2]=1065353216,a=_e+q[a+304>>2]|0,Ve=u[a>>2],Ye=u[(Ue=Te+$e|0)>>2],u[(Qe=Te+Ze|0)>>2]=x(Ve+Ye)-x(Ve*Ye),Ve=u[a+4>>2],Ye=u[Ue+4>>2],u[Qe+4>>2]=x(Ve+Ye)-x(Ve*Ye),Ve=u[a+8>>2],Ye=u[Ue+8>>2],u[Qe+8>>2]=x(Ve+Ye)-x(Ve*Ye)),q[Te+(Se<<2)>>2]=1065353216),L=64+Re|0},n[5]=function(a,qk){return a|=0,qk|=0,x(0),x(0),0|((a=u[a>>2])<(qk=u[qk>>2])?-1:qk>2])))for(zi=q[a+12>>2],yi=q[a+20>>2];u[(vi=ui<<2)+zi>>2]=u[Xh+vi>>2]*u[vi+yi>>2],(0|(ui=ui+1|0))<(0|xi););if(!((0|(xi=q[a>>2]))<1))if(zi=q[a+4>>2],Zh)for(vi=Xh=0;;){if(q[Zh>>2]){if((0|(ui=q[(yi=Xh<<2)+q[a+16>>2]>>2]))<1)wi=x(0);else for(Ai=ui+vi|0,Bi=q[a+12>>2],wi=x(0),ui=vi;wi=x(wi+u[Bi+(ui<<2)>>2]),(0|(ui=ui+1|0))<(0|Ai););u[Yh+yi>>2]=wi}if(Zh=Zh+4|0,vi=q[zi+(Xh<<2)>>2]+vi|0,!((0|(Xh=Xh+1|0))<(0|xi)))break}else for(yi=q[a+16>>2],Xh=Zh=0;;){if((0|(ui=q[(vi=Zh<<2)+yi>>2]))<=0)wi=x(0);else for(Ai=Xh+ui|0,Bi=q[a+12>>2],wi=x(0),ui=Xh;wi=x(wi+u[Bi+(ui<<2)>>2]),(0|(ui=ui+1|0))<(0|Ai););if(u[Yh+vi>>2]=wi,Xh=q[vi+zi>>2]+Xh|0,!((0|(Zh=Zh+1|0))<(0|xi)))break}},n[7]=function(a,Xh,Yh,Zh){a|=0,Xh|=0,Yh|=0,Zh|=0;var _h=0,$h=x(0),pi=0,qi=0,ri=0,si=0,ti=0;if(1<=(0|(si=q[a+8>>2])))for(qi=q[a+12>>2],ri=q[a+20>>2];u[(pi=_h<<2)+qi>>2]=u[Xh+pi>>2]*u[pi+ri>>2],(0|(_h=_h+1|0))<(0|si););if(!((0|(_h=q[a>>2]))<1))if(si=q[a+4>>2],Zh)for(pi=Xh=0;;){if(q[Zh>>2]){if((0|(_h=q[(qi=Xh<<2)+q[a+16>>2]>>2]))<1)$h=x(0);else for(ri=_h+pi|0,ti=q[a+12>>2],$h=x(0),_h=pi;$h=x($h+u[ti+(_h<<2)>>2]),(0|(_h=_h+1|0))<(0|ri););_h=Yh+qi|0,$h=x($h+x(.0010000000474974513)),qi=x(y($h))>2]=qi,_h=q[a>>2]}if(Zh=Zh+4|0,pi=q[si+(Xh<<2)>>2]+pi|0,!((0|(Xh=Xh+1|0))<(0|_h)))break}else for(qi=q[a+16>>2],Xh=Zh=0;;){if((0|(_h=q[(pi=Zh<<2)+qi>>2]))<=0)$h=x(0);else for(ri=Xh+_h|0,ti=q[a+12>>2],$h=x(0),_h=Xh;$h=x($h+u[ti+(_h<<2)>>2]),(0|(_h=_h+1|0))<(0|ri););if(_h=Yh+pi|0,$h=x($h+x(.0010000000474974513)),ri=x(y($h))>2]=ri,Xh=q[pi+si>>2]+Xh|0,!((0|(Zh=Zh+1|0))>2]))break}},n[8]=function(a,Xh,Yh,Zh,_h,$h){a|=0,Xh|=0,Yh|=0,Zh|=0,_h|=0,$h|=0;var ni,oi,ai=0,bi=0,ci=0,di=0,ei=0,fi=0,gi=0,hi=0,ji=0,ki=0,li=x(0),mi=0,ii=q[a>>2];if(!((0|ii)<1))if(ni=_h<<2,oi=q[a+4>>2],$h)for(;;){if(q[$h>>2]&&(ci=q[(ai=di<<2)+q[a+16>>2]>>2],gi=q[Yh+ai>>2],bi=q[Zh+ai>>2],(ai=(0|(hi=w(bi,_h)))<1)||$(gi,0,w(bi,ni)),!(ai|(0|ci)<1)))for(ji=ci+fi|0,ki=q[a+20>>2],ai=fi;;){for(li=u[(bi=ai<<2)+ki>>2],mi=q[Xh+bi>>2],ei=0;u[(bi=(ci=ei<<2)+gi|0)>>2]=u[bi>>2]+x(li*u[ci+mi>>2]),(0|hi)!=(0|(ei=ei+1|0)););if(!((0|(ai=ai+1|0))<(0|ji)))break}if($h=$h+4|0,fi=q[(di<<2)+oi>>2]+fi|0,!((0|(di=di+1|0))<(0|ii)))break}else for($h=0;;){if(ci=q[(di=$h<<2)+q[a+16>>2]>>2],gi=q[Yh+di>>2],bi=q[Zh+di>>2],(ai=(0|(hi=w(bi,_h)))<1)||$(gi,0,w(bi,ni)),!(ai|(0|ci)<=0))for(ji=ci+fi|0,ki=q[a+20>>2],ai=fi;;){for(li=u[(bi=ai<<2)+ki>>2],mi=q[Xh+bi>>2],ei=0;u[(bi=(ci=ei<<2)+gi|0)>>2]=u[bi>>2]+x(li*u[ci+mi>>2]),(0|hi)!=(0|(ei=ei+1|0)););if(!((0|(ai=ai+1|0))<(0|ji)))break}if(fi=q[di+oi>>2]+fi|0,!((0|($h=$h+1|0))<(0|ii)))break}},n[9]=function(a){var Hp,Ip,Jp,Dp=0,Ep=0,Fp=0,Gp=0;if(!(q[(a|=0)+764>>2]||(0|(Dp=q[a+336>>2]))<1))for(Ip=(Ep=q[a+340>>2])+w(Dp,20)|0,Dp=q[a+428>>2],Gp=q[a+448>>2];;){if(q[Dp>>2]&&!((0|(Fp=q[Ep+16>>2]))<(a=1)))for(Fp<<=1,Jp=q[Gp>>2];u[(Hp=(a<<2)+Jp|0)>>2]=-u[Hp>>2],(0|(a=a+2|0))<(0|Fp););if(Gp=Gp+4|0,Dp=Dp+4|0,!((Ep=Ep+20|0)>>>0>>0))break}},n[10]=function(a,Cl,dm){var fm;return aa(fm=q[20+(a|=0)>>2],Cl|=0,Cl=(dm|=0)>>>0<(Cl=q[a+16>>2]-fm|0)>>>0?dm:Cl),q[a+20>>2]=Cl+q[a+20>>2],0|dm},n[11]=function(a,qk,Cl,Dl,El,Fl){a|=0,qk=+qk,Cl|=0,Dl|=0,El|=0,Fl|=0;var Sl,am,Kl,Wl,Gl=0,Hl=0,Il=0,Jl=0,Ll=0,Ml=0,Nl=0,Ol=0,Pl=0,Ql=0,Rl=0,Tl=0,Ul=0,Vl=0,Yl=0;if(q[44+(L=Kl=L-560|0)>>2]=0,h(+qk),Gl=0|b[1],am=4294967295>>0?0:1,Wl=(0|Gl)<-1||(0|Gl)<=-1&&am?(h(qk=-qk),Gl=0|b[1],b[0],Vl=1,4208):2048&El?(Vl=1,4211):(Vl=1&El)?4214:4209,2146435072==(2146435072&Gl))_(a,32,Cl,Ml=Vl+3|0,-65537&El),Z(a,Wl,Vl),Dl=Fl>>>5&1,Z(a,qk!=qk?Dl?4235:4239:Dl?4227:4231,3);else if(qk=function Ia(a,Wb){var Yb,ic,Xb=0;if(h(+a),Xb=0|b[1],Yb=0|b[0],2047!=(0|(Xb=(ic=Xb)>>>20&2047))){if(!Xb)return Xb=Wb,Wb=0==a?0:(a=Ia(0x10000000000000000*a,Wb),q[Wb>>2]+-64|0),q[Xb>>2]=Wb,a;q[Wb>>2]=Xb+-1022,f(0,0|Yb),f(1,-2146435073&ic|1071644672),a=+g()}return a}(qk,44+Kl|0),0!=(qk+=qk)&&(q[44+Kl>>2]=q[44+Kl>>2]+-1),Sl=16+Kl|0,97==(0|(am=32|Fl))){if(Rl=(Ql=32&Fl)?9+Wl|0:Wl,!(11
>>0)&&(Gl=12-Dl|0)){for(Tl=8;Tl*=16,Gl=Gl+-1|0;);qk=45==r[0|Rl]?-(Tl+(-qk-Tl)):qk+Tl-Tl}for((0|Sl)==(0|(Gl=ga((Il=(Gl=q[44+Kl>>2])>>31)^Gl+Il,0,Sl)))&&(o[15+Kl|0]=48,Gl=15+Kl|0),Ll=2|Vl,Il=q[44+Kl>>2],o[0|(Pl=Gl+-2|0)]=Fl+15,o[Gl+-1|0]=(0|Il)<0?45:43,Gl=8&El,Hl=16+Kl|0;Fl=Hl,Ol=Ql,Il=y(qk)<2147483648?~~qk:-2147483648,o[0|Hl]=Ol|r[Il+4192|0],1!=((Hl=Fl+1|0)-(16+Kl|0)|0)|(0==(qk=16*(qk-(0|Il)))?!(Gl|0<(0|Dl)):0)||(o[Fl+1|0]=46,Hl=Fl+2|0),0!=qk;);_(a,32,Cl,Ml=(Fl=!Dl|(0|Dl)<=((Hl-Kl|0)-18|0)?((Sl-(16+Kl|0)|0)-Pl|0)+Hl|0:2+((Dl+Sl|0)-Pl|0)|0)+Ll|0,El),Z(a,Rl,Ll),_(a,48,Cl,Ml,65536^El),Z(a,16+Kl|0,Dl=Hl-(16+Kl|0)|0),_(a,48,Fl-((Gl=Dl)+(Dl=Sl-Pl|0)|0)|0,0,0),Z(a,Pl,Dl)}else{for(Gl=(0|Dl)<0,0==qk?Jl=q[44+Kl>>2]:(Jl=q[44+Kl>>2]+-28|0,q[44+Kl>>2]=Jl,qk*=268435456),Nl=Gl?6:Dl,Il=Ql=(0|Jl)<0?48+Kl|0:336+Kl|0;Il=(Dl=Il)+4|0,0!=(qk=1e9*(qk-((q[Dl>>2]=Gl=qk<4294967296&0<=qk?~~qk>>>0:0)>>>0))););if((0|Jl)<1)Gl=Il,Hl=Ql;else for(Hl=Ql;;){if(Pl=(0|Jl)<29?Jl:29,!((Gl=Il+-4|0)>>>0>>0)){for(Dl=Pl,Ol=0;Yl=Ol,Ol=q[(Rl=Gl)>>2],Ll=31&Dl,Ll=32<=(63&Dl)>>>(Ml=0)?(Jl=Ol<>>32-Ll,Ol<>>0>>0?Ml+1|0:Ml,Yl=Rl,Rl=sd(Ol=td(Ll=Ol,Ml,1e9),M,1e9),q[Yl>>2]=Ll-Rl,Hl>>>0<=(Gl=Gl+-4|0)>>>0;);(Dl=Ol)&&(q[(Hl=Hl+-4|0)>>2]=Dl)}for(;Hl>>>0<(Gl=Il)>>>0&&!q[(Il=Gl+-4|0)>>2];);if(Jl=q[44+Kl>>2]-Pl|0,Il=Gl,!(0<(0|(q[44+Kl>>2]=Jl))))break}if((0|Jl)<=-1)for(Ul=1+((Nl+25|0)/9|0)|0,Pl=102==(0|am);;){if(Ol=(0|Jl)<-9?9:0-Jl|0,Gl>>>0<=Hl>>>0)Hl=q[Hl>>2]?Hl:Hl+4|0;else{for(Rl=1e9>>>Ol,Ll=-1<>2],q[Il>>2]=(Dl>>>Ol)+Jl,Jl=w(Rl,Dl&Ll),(Il=Il+4|0)>>>0>>0;);Hl=q[Hl>>2]?Hl:Hl+4|0,Jl&&(q[Gl>>2]=Jl,Gl=Gl+4|0)}if(Jl=Ol+q[44+Kl>>2]|0,Gl=(0|Ul)>2?Dl+(Ul<<2)|0:Gl,!((0|(q[44+Kl>>2]=Jl))<0))break}if(!(Gl>>>(Il=0)<=Hl>>>0||(Il=w(Ql-Hl>>2,9),(Dl=q[Hl>>2])>>>0<(Jl=10))))for(;Il=Il+1|0,(Jl=w(Jl,10))>>>0<=Dl>>>0;);if((0|(Dl=(Nl-(102==(0|am)?0:Il)|0)-(103==(0|am)&0!=(0|Nl))|0))<(w(Gl-Ql>>2,9)+-9|0)){if(Ml=(Ql+((Dl=(0|(Ll=Dl+9216|0))/9|0)<<2)|0)-4092|0,Jl=10,(0|(Dl=1+(Ll-w(Dl,9)|0)|0))<=8)for(;Jl=w(Jl,10),9!=(0|(Dl=Dl+1|0)););if(Ul=Ml+4|0,((Pl=(Rl=q[Ml>>2])-w(Jl,Ll=(Rl>>>0)/(Jl>>>0)|0)|0)||(0|Ul)!=(0|Gl))&&(Tl=Pl>>>0<(Dl=Jl>>>1)>>>0?.5:(0|Gl)==(0|Ul)&&(0|Dl)==(0|Pl)?1:1.5,qk=1&Ll?9007199254740994:9007199254740992,!Vl|45!=r[0|Wl]||(Tl=-Tl,qk=-qk),q[Ml>>2]=Dl=Rl-Pl|0,qk+Tl!=qk)){if(1e9<=(q[Ml>>2]=Dl=Dl+Jl|0)>>>0)for(;(Ml=Ml+-4|(q[Ml>>2]=0))>>>0>>0&&(q[(Hl=Hl+-4|0)>>2]=0),Dl=q[Ml>>2]+1|0,999999999<(q[Ml>>2]=Dl)>>>0;);if(Il=w(Ql-Hl>>2,9),!((Dl=q[Hl>>2])>>>0<(Jl=10)))for(;Il=Il+1|0,(Jl=w(Jl,10))>>>0<=Dl>>>0;);}Gl=(Dl=Ml+4|0)>>>0>>0?Dl:Gl}j:{for(;;){if((Pl=Gl)>>>(Rl=0)<=Hl>>>0)break j;if(q[(Gl=Pl+-4|0)>>2])break}Rl=1}if(103!=(0|am))Ll=8&El;else if(Nl=((Dl=(0|Il)<(0|(Gl=Nl||1))&-5<(0|Il))?-1^Il:-1)+Gl|0,Fl=(Dl?-1:-2)+Fl|0,!(Ll=8&El)){if(Gl=9,Rl&&(Ll=q[Pl+-4>>2])&&!((Ll>>>(Gl=0))%(Dl=10)))for(;Gl=Gl+1|0,!((Ll>>>0)%((Dl=w(Dl,10))>>>0)););Dl=w(Pl-Ql>>2,9)+-9|0,Nl=102==(32|Fl)?((Ll=0)|Nl)<(0|(Dl=0<(0|(Dl=Dl-Gl|0))?Dl:0))?Nl:Dl:((Ll=0)|Nl)<(0|(Dl=0<(0|(Dl=(Dl+Il|0)-Gl|0))?Dl:0))?Nl:Dl}if(Ml=0!=(0|(Jl=Nl|Ll)),Dl=a,Yl=Cl,Gl=0<(0|Il)?Il:0,102!=(0|(Ol=32|Fl))){if((Sl-(Gl=ga((Gl=Il>>31)+Il^Gl,0,Sl))|0)<=1)for(;o[0|(Gl=Gl+-1|0)]=48,(Sl-Gl|0)<2;);o[0|(Ul=Gl+-2|0)]=Fl,o[Gl+-1|0]=(0|Il)<0?45:43,Gl=Sl-Ul|0}if(_(Dl,32,Yl,Ml=1+(Gl+(Ml+(Nl+Vl|0)|0)|0)|0,El),Z(a,Wl,Vl),_(a,48,Cl,Ml,65536^El),102==(0|Ol)){for(Dl=16+Kl|8,Il=16+Kl|9,Hl=Fl=Ql>>>0>>0?Ql:Hl;;){if(Gl=ga(q[Hl>>2],0,Il),(0|Fl)!=(0|Hl)){if(!(Gl>>>0<=16+Kl>>>0))for(;o[0|(Gl=Gl+-1|0)]=48,16+Kl>>>0>>0;);}else(0|Gl)==(0|Il)&&(o[24+Kl|0]=48,Gl=Dl);if(Z(a,Gl,Il-Gl|0),!((Hl=Hl+4|0)>>>0<=Ql>>>0))break}Jl&&Z(a,4243,1);p:if(!((0|Nl)<1|Pl>>>0<=Hl>>>0))for(;;){if(16+Kl>>>0<(Gl=ga(q[Hl>>2],0,Il))>>>0)for(;o[0|(Gl=Gl+-1|0)]=48,16+Kl>>>0>>0;);if(Z(a,Gl,(0|Nl)<9?Nl:9),Nl=Nl+-9|0,Pl>>>0<=(Hl=Hl+4|0)>>>0)break p;if(!(0<(0|Nl)))break}_(a,48,Nl+9|0,9,0)}else{q:if(!((0|Nl)<0))for(Fl=Rl?Pl:Hl+4|0,Dl=16+Kl|8,Ql=16+Kl|9,Il=Hl;;){if((0|Ql)==(0|(Gl=ga(q[Il>>2],0,Ql)))&&(o[24+Kl|0]=48,Gl=Dl),(0|Hl)!=(0|Il)){if(!(Gl>>>0<=16+Kl>>>0))for(;o[0|(Gl=Gl+-1|0)]=48,16+Kl>>>0>>0;);}else Z(a,Gl,1),Gl=Gl+1|0,(0|Nl)<1&&!Ll||Z(a,4243,1);if(Z(a,Ol=Gl,(0|(Gl=Ql-Gl|0))<(0|Nl)?Gl:Nl),Nl=Nl-Gl|0,Fl>>>0<=(Il=Il+4|0)>>>0)break q;if(!(-1<(0|Nl)))break}_(a,48,Nl+18|0,18,0),Z(a,Ul,Sl-Ul|0)}}return _(a,32,Cl,Ml,8192^El),L=560+Kl|0,0|((0|Ml)<(0|Cl)?Cl:Ml)},n[12]=function(a,qk){a|=0;var Lk=qk|=0;qk=q[qk>>2]+15&-16,q[Lk>>2]=qk+16,Lk=a,a=function(a,qk,Kk,Lk){var Rk,Ok,Mk=0,Nk=0,Pk=0,Qk=0;return L=Ok=L-32|0,Mk=(Qk=Mk=2147483647&Lk)-1006698496|0,Nk=Mk=(Rk=Nk=Pk=Kk)>>>0<0?Mk+1|0:Mk,Mk=Qk-1140785152|0,(0|(Mk=Pk>>>0<0?Mk+1|0:Mk))==(0|Nk)&Rk>>>0>>0|Nk>>>0>>0?(Mk=Lk<<4|Kk>>>28,Kk=Kk<<4|qk>>>28,134217728==(0|(Pk=qk&=268435455))&1<=a>>>0|134217728>>0?(Mk=Mk+1073741824|0,(a=Kk+1|0)>>>0<1&&(Mk=Mk+1|0),Nk=a):(Mk=Mk-(((Nk=Kk)>>>0<0)+-1073741824|0)|0,a|134217728^Pk||((a=Nk+(1&Nk)|0)>>>0>>0&&(Mk=Mk+1|0),Nk=a))):(!Pk&2147418112==(0|Qk)?!(a|qk):2147418112==(0|Qk)&Pk>>>0<0|Qk>>>0<2147418112)?(Mk=2146435072,1140785151==((Nk=0)|Qk)&4294967295>>0|1140785151>>0||(Pk=Qk>>>16)>>>(Mk=0)<15249||(function(a,qk,Kk,Lk,Tk,Uk){var $k,al,Zk=0,_k=0;64&Uk?(qk=31&(Kk=Uk-64|0),qk=32<=(63&Kk)>>>0?(Kk=0,Tk>>>qk):(Kk=Tk>>>qk,((1<>>qk),Tk=Lk=0):Uk&&(_k=Tk,Zk=31&(al=64-Uk|0),al=32<=(63&al)>>>0?(_k=Lk<>>32-Zk|_k<>>0?(Zk=0,Kk>>>qk):(Zk=Kk>>>qk,((1<>>qk),qk|=al,Kk=Zk|_k,Zk=Lk,Lk=31&Uk,Lk=32<=(63&Uk)>>>0?(_k=0,Tk>>>Lk):(_k=Tk>>>Lk,((1<>>Lk),Tk=_k),q[a>>2]=qk,q[4+a>>2]=Kk,q[8+a>>2]=Lk,q[12+a>>2]=Tk}(Ok,a,qk,Kk,Mk=65535&Lk|65536,15361-Pk|0),function(a,qk,Kk,Lk,Tk,Uk){var Xk,Vk,Wk=0;64&Uk?(Lk=qk,qk=31&(Tk=Uk+-64|0),32<=(63&Tk)>>>0?(Tk=Lk<>>32-qk|Kk<>>0?(Wk=Vk<>>32-Lk|Tk<>>0?(Uk=0,Lk>>>=Tk):(Uk=Lk>>>Tk,Lk=((1<>>Tk),Lk|=Vk,Tk=Uk|Wk,Uk=qk,qk=31&Xk,qk=32<=(63&Xk)>>>0?(Wk=Uk<>>32-qk|Kk<>2]=qk,q[4+a>>2]=Kk,q[8+a>>2]=Lk,q[12+a>>2]=Tk}(16+Ok|0,a,qk,Kk,Mk,Pk+-15233|0),Kk=q[4+Ok>>2],a=q[8+Ok>>2],Mk=q[12+Ok>>2]<<4|a>>>28,Nk=a<<4|Kk>>>28,134217728==(0|(Kk=a=268435455&Kk))&1<=(qk=q[Ok>>2]|(0!=(q[16+Ok>>2]|q[24+Ok>>2])|0!=(q[20+Ok>>2]|q[28+Ok>>2])))>>>0|134217728>>0?((a=Nk+1|0)>>>0<1&&(Mk=Mk+1|0),Nk=a):qk|134217728^Kk||((a=Nk+(1&Nk)|0)>>>0>>0&&(Mk=Mk+1|0),Nk=a))):(Nk=Kk<<4|qk>>>28,Mk=524287&(Mk=Lk<<4|Kk>>>28)|2146959360),L=32+Ok|0,f(0,0|Nk),f(1,-2147483648&Lk|Mk),+g()}(q[qk>>2],q[qk+4>>2],q[qk+8>>2],q[qk+12>>2]),v[Lk>>3]=a},n[13]=function(a){return 0},n[14]=function(a,qk,Lk){qk|=0,Lk|=0;var zl,vl,ul=0,wl=0,xl=0,yl=0;for(L=vl=L-32|0,ul=q[28+(a|=0)>>2],q[16+vl>>2]=ul,xl=q[a+20>>2],q[28+vl>>2]=Lk,q[24+vl>>2]=qk,xl=(q[20+vl>>2]=qk=xl-ul|0)+Lk|0,yl=2,qk=16+vl|0;;){a:{if((wl=(ul=0)|K(q[a+60>>2],0|qk,0|yl,12+vl|0))&&(q[2178]=wl,ul=-1),(0|(ul=ul?q[12+vl>>2]=-1:q[12+vl>>2]))==(0|xl))qk=q[a+44>>2],q[a+28>>2]=qk,q[a+20>>2]=qk,q[a+16>>2]=qk+q[a+48>>2],a=Lk;else{if(-1<(0|ul))break a;q[a+28>>2]=0,q[a+16>>2]=0,q[a+20>>2]=0,q[a>>2]=32|q[a>>2],2!=((a=0)|yl)&&(a=Lk-q[qk+4>>2]|0)}return L=32+vl|0,0|a}wl=q[qk+4>>2],q[(qk=(zl=wl>>>0