@zoom/meetingsdk 3.0.0-rc
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +54 -0
- package/LICENSE.pdf +0 -0
- package/README.md +182 -0
- package/dist/css/bootstrap.css +5 -0
- package/dist/css/react-select.css +434 -0
- package/dist/fonts/glyphicons-halflings-regular.eot +0 -0
- package/dist/fonts/glyphicons-halflings-regular.svg +229 -0
- package/dist/fonts/glyphicons-halflings-regular.ttf +0 -0
- package/dist/fonts/glyphicons-halflings-regular.woff +0 -0
- package/dist/lib/audio/archival.mp3 +0 -0
- package/dist/lib/audio/incoming-msg-chime.mp3 +0 -0
- package/dist/lib/audio/m-entry.mp3 +0 -0
- package/dist/lib/audio/m-exit.mp3 +0 -0
- package/dist/lib/audio/m-wr.mp3 +0 -0
- package/dist/lib/audio/meeting_is_now_recorded.mp3 +0 -0
- package/dist/lib/audio/raise-hand-chime.mp3 +0 -0
- package/dist/lib/audio/recording_is_now_stopped.mp3 +0 -0
- package/dist/lib/audio/ring.mp3 +0 -0
- package/dist/lib/av/audio.encode.wasm +0 -0
- package/dist/lib/av/audio.simd.wasm +0 -0
- package/dist/lib/av/audio_simd.min.js +10 -0
- package/dist/lib/av/js_audio_process.min.js +10 -0
- package/dist/lib/av/js_audio_worklet.min.js +2 -0
- package/dist/lib/av/js_audio_worklet_process.min.js +25 -0
- package/dist/lib/av/js_audio_worklet_simd.min.js +25 -0
- package/dist/lib/av/js_media.min.js +2 -0
- package/dist/lib/av/js_sharing_audio_worklet.min.js +2 -0
- package/dist/lib/av/sharing_m.min.js +31 -0
- package/dist/lib/av/sharing_mtsimd.min.js +31 -0
- package/dist/lib/av/sharing_s.min.js +10 -0
- package/dist/lib/av/sharing_simd.min.js +10 -0
- package/dist/lib/av/vb-resource/dualModel.bin +0 -0
- package/dist/lib/av/vb-resource/tf.min.js +18 -0
- package/dist/lib/av/vb-resource/vbPreload.js +1 -0
- package/dist/lib/av/vb-resource/vbPreloadWorker.js +1 -0
- package/dist/lib/av/video.decode.wasm +0 -0
- package/dist/lib/av/video.mt.wasm +0 -0
- package/dist/lib/av/video.mtsimd.wasm +0 -0
- package/dist/lib/av/video.simd.wasm +0 -0
- package/dist/lib/av/video_m.min.js +31 -0
- package/dist/lib/av/video_mtsimd.min.js +31 -0
- package/dist/lib/av/video_s.min.js +10 -0
- package/dist/lib/av/video_share_mtsimd.min.js +31 -0
- package/dist/lib/av/video_simd.min.js +10 -0
- package/dist/lib/av/websipclient.min.js +1 -0
- package/dist/lib/image/SanFrancisco.jpg +0 -0
- package/dist/lib/image/animation-sprite.png +0 -0
- package/dist/lib/image/blur.png +0 -0
- package/dist/lib/image/earth.jpg +0 -0
- package/dist/lib/image/grass.jpg +0 -0
- package/dist/lib/image/mask-circle.png +0 -0
- package/dist/lib/image/mask-heart.png +0 -0
- package/dist/lib/image/mask-rectangle.png +0 -0
- package/dist/lib/image/notification.png +0 -0
- package/dist/lib/lang/de-DE.json +1727 -0
- package/dist/lib/lang/en-US.json +1727 -0
- package/dist/lib/lang/es-ES.json +1727 -0
- package/dist/lib/lang/fr-FR.json +1727 -0
- package/dist/lib/lang/id-ID.json +1727 -0
- package/dist/lib/lang/it-IT.json +1727 -0
- package/dist/lib/lang/jp-JP.json +1727 -0
- package/dist/lib/lang/ko-KO.json +1727 -0
- package/dist/lib/lang/nl-NL.json +1727 -0
- package/dist/lib/lang/pl-PL.json +1727 -0
- package/dist/lib/lang/pt-PT.json +1727 -0
- package/dist/lib/lang/ru-RU.json +1727 -0
- package/dist/lib/lang/tr-TR.json +1727 -0
- package/dist/lib/lang/vi-VN.json +1727 -0
- package/dist/lib/lang/zh-CN.json +1727 -0
- package/dist/lib/lang/zh-TW.json +1727 -0
- package/dist/lib/vendor/lodash.min.js +140 -0
- package/dist/lib/vendor/react-dom.min.js +239 -0
- package/dist/lib/vendor/react.min.js +32 -0
- package/dist/lib/vendor/redux-thunk.min.js +1 -0
- package/dist/lib/vendor/redux.min.js +1 -0
- package/dist/lib/webim.min.js +23 -0
- package/dist/ui/33f06.svg +647 -0
- package/dist/ui/zoomus-websdk-806.umd.min.js +1 -0
- package/dist/ui/zoomus-websdk-MobileReportProblemContent.umd.min.js +2 -0
- package/dist/ui/zoomus-websdk-ReportProblemContent.umd.min.js +2 -0
- package/dist/ui/zoomus-websdk-editor_de-DE.umd.min.js +1 -0
- package/dist/ui/zoomus-websdk-editor_es-ES.umd.min.js +1 -0
- package/dist/ui/zoomus-websdk-editor_fr-FR.umd.min.js +1 -0
- package/dist/ui/zoomus-websdk-editor_id-ID.umd.min.js +1 -0
- package/dist/ui/zoomus-websdk-editor_it-IT.umd.min.js +1 -0
- package/dist/ui/zoomus-websdk-editor_ja-JP.umd.min.js +1 -0
- package/dist/ui/zoomus-websdk-editor_ko-KR.umd.min.js +1 -0
- package/dist/ui/zoomus-websdk-editor_nl-NL.umd.min.js +1 -0
- package/dist/ui/zoomus-websdk-editor_pl-PL.umd.min.js +1 -0
- package/dist/ui/zoomus-websdk-editor_pt-PT.umd.min.js +1 -0
- package/dist/ui/zoomus-websdk-editor_ru-RU.umd.min.js +1 -0
- package/dist/ui/zoomus-websdk-editor_tr-TR.umd.min.js +1 -0
- package/dist/ui/zoomus-websdk-editor_vi-VN.umd.min.js +1 -0
- package/dist/ui/zoomus-websdk-editor_zh-CN.umd.min.js +1 -0
- package/dist/ui/zoomus-websdk-editor_zh-TW.umd.min.js +1 -0
- package/dist/ui/zoomus-websdk-icons.umd.min.js +1 -0
- package/dist/ui/zoomus-websdk-loginview.umd.min.js +1 -0
- package/dist/ui/zoomus-websdk-lottie-web.umd.min.js +1 -0
- package/dist/ui/zoomus-websdk-lottie.umd.min.js +1 -0
- package/dist/ui/zoomus-websdk-main-client.umd.min.js +2 -0
- package/dist/ui/zoomus-websdk-preview.umd.min.js +2 -0
- package/dist/ui/zoomus-websdk-zoommtgMain.umd.min.js +2 -0
- package/dist/zoom-meeting-3.0.0.min.js +2 -0
- package/dist/zoom-meeting-embedded-ES5.min.js +2 -0
- package/dist/zoomus-websdk-embedded.umd.min.js +2 -0
- package/dist/zoomus-websdk.umd.min.js +2 -0
- package/embedded.d.ts +1567 -0
- package/embedded.js +3 -0
- package/index.d.ts +2101 -0
- package/index.js +4 -0
- package/oss_attribution.txt +6432 -0
- package/package.json +53 -0
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
!function(e){var t={};function n(r){if(t[r])return t[r].exports;var a=t[r]={i:r,l:!1,exports:{}};return e[r].call(a.exports,a,a.exports,n),a.l=!0,a.exports}n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var a in e)n.d(r,a,function(t){return e[t]}.bind(null,a));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=48)}([function(e,t,n){"use strict";n.r(t),n.d(t,"Audio_Dec_WASM_OK",(function(){return r})),n.d(t,"Audio_Dec_Handle_OK",(function(){return a})),n.d(t,"Audio_Dec_WebSocket_OK",(function(){return i})),n.d(t,"Audio_Enc_WASM_OK",(function(){return o})),n.d(t,"Audio_Enc_Handle_OK",(function(){return s})),n.d(t,"Video_Dec_WASM_OK",(function(){return u})),n.d(t,"Video_Dec_Handle_OK",(function(){return c})),n.d(t,"Video_Dec_WebSocket_OK",(function(){return l})),n.d(t,"Video_Enc_WASM_OK",(function(){return f})),n.d(t,"Video_Enc_Handle_OK",(function(){return _})),n.d(t,"Sharing_Dec_WASM_OK",(function(){return d})),n.d(t,"Sharing_Dec_PICTURE",(function(){return h})),n.d(t,"AUDIO_DELAY",(function(){return E})),n.d(t,"Sharing_Dec_WebSocket_OK",(function(){return p})),n.d(t,"Sharing_Handle_OK",(function(){return b})),n.d(t,"Sharing_Data",(function(){return A})),n.d(t,"DECODE_MESSAGE",(function(){return m})),n.d(t,"Video_Capture_Tick",(function(){return v})),n.d(t,"MONITOR_MESSAGE",(function(){return y})),n.d(t,"SHARING_DECODE_MONITOR_MESSAGE",(function(){return g})),n.d(t,"WORKER_MAIN_VIDEO_ENCODE_RINGBUFFER_TICK",(function(){return T})),n.d(t,"WORKER_MAIN_AUDIO_ENCODE_RINGBUFFER_TICK",(function(){return S})),n.d(t,"WORKER_MAIN_VIDEO_DECODE_RINGBUFFER_TICK",(function(){return I})),n.d(t,"Audio_Encode_Preview_OK",(function(){return D})),n.d(t,"Video_Encode_Preview_OK",(function(){return M})),n.d(t,"QOS_MONITORING",(function(){return O})),n.d(t,"QOS_DEFAULT_POLLING_INTERVAL",(function(){return R})),n.d(t,"VIDEO_MONITOR_LOG_SECOENDS",(function(){return w})),n.d(t,"DOWNLOAD_WASM_FROM_MAIN_THREAD",(function(){return N})),n.d(t,"APP_TROUBLESHOOTING_INFO",(function(){return C})),n.d(t,"DELTA_D",(function(){return L})),n.d(t,"DELTA_C",(function(){return k})),n.d(t,"DELTA_S",(function(){return P})),n.d(t,"WCL_TROUBLESHOOTING_INFO",(function(){return U})),n.d(t,"SHARING_DATA_VIDEO_MODE",(function(){return x})),n.d(t,"MOUSE_DATA_VIDEO_MODE",(function(){return B})),n.d(t,"SHARING_DECODE_MESSAGE",(function(){return F})),n.d(t,"VIDEO_ENCODED_DATA",(function(){return H})),n.d(t,"VIDEO_DROP_RATIO_FROM_WCL",(function(){return W})),n.d(t,"VIDEO_DATA_DROP_RATIO",(function(){return V})),n.d(t,"AUDIO_ENCODED_DATA",(function(){return G})),n.d(t,"THREAD_STATE_IDLE",(function(){return j})),n.d(t,"THREAD_STATE_CREATING",(function(){return Y})),n.d(t,"THREAD_STATE_CREATED",(function(){return K})),n.d(t,"THREAD_ENCODE_BUFFER",(function(){return q})),n.d(t,"WASMPTR",(function(){return Z})),n.d(t,"AUDIO_MONITOR_LOG",(function(){return X})),n.d(t,"WhiteBoard_Video_Capture_Tick",(function(){return z})),n.d(t,"GLOBAL_TRACING_LOG",(function(){return Q})),n.d(t,"Audio_Dec_WASM_FAILED",(function(){return J})),n.d(t,"Audio_Dec_Handle_FAILED",(function(){return $})),n.d(t,"Audio_Dec_WebSocket_FAILED",(function(){return ee})),n.d(t,"Audio_Enc_WASM_FAILED",(function(){return te})),n.d(t,"Audio_Enc_Handle_FAILED",(function(){return ne})),n.d(t,"Video_Dec_WASM_FAILED",(function(){return re})),n.d(t,"Video_Dec_Handle_FAILED",(function(){return ae})),n.d(t,"Video_Dec_WebSocket_FAILED",(function(){return ie})),n.d(t,"Video_Enc_WASM_FAILED",(function(){return oe})),n.d(t,"Video_Enc_Handle_FAILED",(function(){return se})),n.d(t,"Sharing_Dec_WASM_FAILED",(function(){return ue})),n.d(t,"Audio_Mute",(function(){return ce})),n.d(t,"Sharing_Handle_FAILED",(function(){return le})),n.d(t,"Sharing_Dec_WebSocket_FAILED",(function(){return fe})),n.d(t,"AUDIO_CLIPPING",(function(){return _e})),n.d(t,"MULTIVIEW_WEBGL_CONTEXT_LOST",(function(){return de})),n.d(t,"WEBGL_CONTEXT_CREATE_FAILED",(function(){return he})),n.d(t,"MEDIA_VIDEO_REPORT_DROP_RATIO",(function(){return Ee})),n.d(t,"MEDIA_S2C_KEEPALIVE",(function(){return pe})),n.d(t,"MEDIA_AUDIO_DATA",(function(){return be})),n.d(t,"MEDIA_AUDIO_RTCP",(function(){return Ae})),n.d(t,"MEDIA_VIDEO_DATA",(function(){return me})),n.d(t,"MEDIA_VIDEO_RTCP",(function(){return ve})),n.d(t,"MEDIA_NTP_UPDATE",(function(){return ye})),n.d(t,"VIDEO_CAPTURER_RESOLUTION_360P",(function(){return ge})),n.d(t,"VIDEO_CAPTURER_RESOLUTION_720P",(function(){return Te})),n.d(t,"CURRENT_VIDEO_RESOLUTION",(function(){return Se})),n.d(t,"VIDEO_RENDER_MONITOR_LOG",(function(){return Ie})),n.d(t,"Sharing_Width_And_Height_Info",(function(){return De})),n.d(t,"SHARING_RENDER_MONITOR_LOG",(function(){return Me})),n.d(t,"SHARING_GET_IMAGE_DATA_WRONG",(function(){return Oe})),n.d(t,"AES_GCM_IV_TO_WASM",(function(){return Re})),n.d(t,"AES_GCM_IV_CALLBACK_FROM_WASM",(function(){return we})),n.d(t,"CURRENT_SSRC_TIME",(function(){return Ne})),n.d(t,"CURRENT_DECODE_VIDEO_QUALITY",(function(){return Ce})),n.d(t,"CURRENT_DECODE_VIDEO_FPS",(function(){return Le})),n.d(t,"CURRENT_CAPTURE_VIDEO_WIDTH_HEIGHT",(function(){return ke})),n.d(t,"CURRENT_DESKTOP_SHARING_WIDTH_HEIGHT",(function(){return Pe})),n.d(t,"SHARING_FIRST_DECODE_FRAME_RECEIVED",(function(){return Ue})),n.d(t,"VIDEO_CAPTURER_RESOLUTION_CHANGE",(function(){return xe})),n.d(t,"VIDEO_CAPTURE_FRAME_COUNT_STATISTIC",(function(){return Be})),n.d(t,"SHARING_CAPTURE_FRAME_COUNT_STATISTIC",(function(){return Fe})),n.d(t,"UNSUPPORTED_SHARING_FORMAT",(function(){return He})),n.d(t,"UNSUPPORTED_VIDEO_FORMAT",(function(){return We})),n.d(t,"FIRST_SHARING_FRAME_FOR_MOBILE",(function(){return Ve})),n.d(t,"VB_PTHREAD_MODEL_ALL_READY",(function(){return Ge})),n.d(t,"UPDATE_ENCRYPTION_GCM_MODEL_KEY",(function(){return je})),n.d(t,"CONNECT_WEBTRANSPORT_OK",(function(){return Ye})),n.d(t,"CONNECT_WEBTRANSPORT_CLOSE",(function(){return Ke})),n.d(t,"CURRENT_MEDIA_DATA_TRANSPORT_TYPE",(function(){return qe})),n.d(t,"CONNECT_WEBSOCKET_CLOSE",(function(){return Ze})),n.d(t,"CURRENT_ENCODED_TYPE",(function(){return Xe})),n.d(t,"WHITEBOARD_WORKER_MESSAGE",(function(){return ze})),n.d(t,"INTERPRETATION_ENABLE",(function(){return Qe})),n.d(t,"INTERPRETATION_SET_LANG",(function(){return Je})),n.d(t,"INTERPRETATION_MUTE",(function(){return $e})),n.d(t,"INTERPRETATION_SET_INTERPRETER",(function(){return et})),n.d(t,"serverHeartbeatMaxTimeoutSeconds",(function(){return tt})),n.d(t,"RQUEST_ANIMATION_MODE",(function(){return nt})),n.d(t,"SET_INTERVAL_MODE",(function(){return rt})),n.d(t,"VIDEO_INVALID",(function(){return at})),n.d(t,"VIDEO_RGBA",(function(){return it})),n.d(t,"VIDEO_I420",(function(){return ot})),n.d(t,"VIDEO_NV12",(function(){return st})),n.d(t,"VIDEO_BGRA",(function(){return ut})),n.d(t,"EVENT_ROLLBACK_BUFFER",(function(){return ct})),n.d(t,"EVENT_NEEDMORE_DATA",(function(){return lt})),n.d(t,"EVENT_CAPTURE_DATA",(function(){return ft})),n.d(t,"EVENT_CACHE_SIZE",(function(){return _t})),n.d(t,"WEBCODEC_ENCODE_OPEN_FLAG",(function(){return dt})),n.d(t,"VB_SIGNAL_TYPE_SET_BG",(function(){return ht})),n.d(t,"VB_SIGNAL_TYPE_SET_BLUR",(function(){return Et})),n.d(t,"QosSession",(function(){return pt})),n.d(t,"QosConnectType",(function(){return bt})),n.d(t,"MAX_VIDEO_CAPTURE_FPS",(function(){return At})),n.d(t,"MIN_VIDEO_CAPTURE_FPS",(function(){return mt})),n.d(t,"VIDEO_CAPTURE_FPS",(function(){return vt})),n.d(t,"VIDEO_CAPTURE_20FPS",(function(){return yt})),n.d(t,"DOWN_VIDEO_CAPTURE_FPS",(function(){return gt})),n.d(t,"LOWER_VIDEO_CAPTURE_FPS",(function(){return Tt})),n.d(t,"VIDEO_DATA_MAX_SIZE",(function(){return St})),n.d(t,"SHARING_NULL",(function(){return It})),n.d(t,"SHARING_NORMAL",(function(){return Dt})),n.d(t,"SHARING_VIDEO_MODE",(function(){return Mt})),n.d(t,"SHARING_VIDEO_MODE_CAPTURED_FPS",(function(){return Ot})),n.d(t,"SHARING_NORMAL_MODE_CAPTURED_FPS",(function(){return Rt})),n.d(t,"VIDEO_RINGBUF_PKG_NUM",(function(){return wt})),n.d(t,"NETWORK_QUALITY_CHANGE",(function(){return Nt})),n.d(t,"ADDITIONNAL_MULTITHREAD_NUMBER_ENCODE_FOR_360P",(function(){return Ct})),n.d(t,"ADDITIONNAL_MULTITHREAD_NUMBER_ENCODE_FOR_720P",(function(){return Lt})),n.d(t,"WCL_PLATFORM_TYPE",(function(){return kt})),n.d(t,"RENDER_MODE_RAF",(function(){return Pt})),n.d(t,"RENDER_MODE_INTERVAL",(function(){return Ut}));var r=1,a=2,i=3,o=4,s=5,u=7,c=8,l=9,f=10,_=11,d=12,h=13,E=14,p=15,b=16,A=17,m=18,v=20,y=21,g=3021,T=22,S=23,I=24,D=26,M=27,O="QosMonitoring",R=1e3,w=5,N=30,C=31,L=32,k=33,P=34,U=35,x=36,B=37,F=38,H=39,W=40,V=41,G=42,j=43,Y=44,K=45,q=46,Z=47,X=48,z=60,Q=61,J=-1,$=-2,ee=-3,te=-4,ne=-5,re=-7,ae=-8,ie=-9,oe=-10,se=-11,ue=-12,ce=-13,le=-14,fe=-15,_e=-23,de=-26,he=-27,Ee=100,pe=0,be=1,Ae=6,me=2,ve=7,ye=9,ge=10,Te=11,Se=50,Ie=51,De=52,Me=53,Oe=54,Re=55,we=56,Ne=57,Ce=66.5,Le=66.6,ke=67,Pe=68,Ue=69,xe=71,Be=72,Fe=73,He=75,We=76,Ve=78,Ge=95,je=102,Ye=105,Ke=106,qe=107,Ze=108,Xe=109,ze=120,Qe=0,Je=1,$e=2,et=3,tt=65,nt=0,rt=1,at=-1,it=0,ot=1,st=2,ut=3,ct=0,lt=1,ft=2,_t=3,dt=!0,ht=0,Et=1,pt={SESSION_TYPE_CONF:0,SESSION_TYPE_AUDIO:1,SESSION_TYPE_DESKSHARE:2,SESSION_TYPE_VIDEO:3,SESSION_TYPE_CHAT:4,SESSION_TYPE_TELEPHONE:5,SESSION_TYPE_ZC_PING:6,SESSION_TYPE_TOTAL_CNT:7},bt={CONNECT_TYPE_UDP:0,CONNECT_TYPE_TCP:1},At=30,mt=1,vt=24,yt=20,gt=15,Tt=10,St=8294400,It=0,Dt=1,Mt=2,Ot=15,Rt=5,wt=400,Nt="NETWORK_QUALITY_CHANGE",Ct=3,Lt=7,kt={DESKTOP:0,MOBILE:1,ANDROID:2,IPHONE:3},Pt=0,Ut=1},function(e,t,n){"use strict";n.d(t,"g",(function(){return _})),n.d(t,"e",(function(){return d})),n.d(t,"d",(function(){return h})),n.d(t,"i",(function(){return E})),n.d(t,"f",(function(){return p})),n.d(t,"h",(function(){return v})),n.d(t,"a",(function(){return g})),n.d(t,"c",(function(){return T})),n.d(t,"b",(function(){return D})),n.d(t,"j",(function(){return C}));var r=n(5),a=n.n(r),i=n(2),o=n.n(i),s=n(3),u=n.n(s),c=n(4),l=n.n(c),f=n(0);function _(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;postMessage({status:f.GLOBAL_TRACING_LOG,errorMessage:e,errorEvent:t})}function d(e){postMessage({status:f.WCL_TROUBLESHOOTING_INFO,data:e})}function h(e){postMessage({status:f.AUDIO_MONITOR_LOG,data:e})}function E(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];postMessage({status:f.MULTIVIEW_WEBGL_CONTEXT_LOST,canvasId:e,replaceCanvas:t})}function p(e){postMessage({status:f.WEBGL_CONTEXT_CREATE_FAILED,canvasId:e})}function b(e){return e.split("/").pop().split("?")[0].split("#")[0]}var A=0,m=!1;try{m=__ENABLE_LOG__}catch(e){}function v(e,t,n,r,a,i,o){var s,u,c,l;if(d("instantiateCachedURL"),a)c=i,l=o;else if(s=self.wasmSuccessEvent,u=self.wasmFailEvent,c=self.databaseName,l=self.databaseDataType,b(t).includes("audio")){var E={};E.databaseName=c,E.databaseDataType=l,E.dbVersion=e,E.url=t,postMessage({status:"AUDIO_WASM_INFO",data:E})}function p(e,t){return d("fetch_wasm"),function(e){var t=self;return new Promise((function(n,r){t.addEventListener("message",(function(e){var t=e.data;"DOWNLOAD_WASM_FROM_MAIN_THREAD_OK"===t.command&&(d("DE"),n(t.data)),"DOWNLOAD_WASM_FROM_MAIN_THREAD_FAILED"===t.command&&r(t.data)})),d("DS"),postMessage({status:f.DOWNLOAD_WASM_FROM_MAIN_THREAD,url:e})}))}(e)}function y(t){return d("fetchAndInstantiate"+t),new Promise((function(i,o){try{if(indexedDB&&!m){var s,u=void 0===IDBTransaction.READ_WRITE?"readwrite":IDBTransaction.READ_WRITE,f=indexedDB.open(c,e);f.onerror=function(e){d("request error");var r=indexedDB.deleteDatabase(c);r.onerror=function(e){d("rt error"),console.log("Error deleting database")},r.onsuccess=function(e){d("rt success"),console.log("Database deleted successfully")},i(!a&&p(t).then((function(e){d("CS");var t=WebAssembly.instantiate(e,n);return d("CE"),t})))},f.onsuccess=function(e){if(d("request success"),!(s=e.target.result).objectStoreNames.contains("file"))return a?void i(!1):void i(p(t).then((function(e){d("CS");var t=WebAssembly.instantiate(e,n);d("CE");try{s.objectStoreNames.contains("file")||indexedDB.deleteDatabase(c)}catch(e){}return t})));var o=s.transaction(["file"],u).objectStore("file").get(l);o.onsuccess=function(e){if(d("getRet success"),o.result&&!r){d("result ok");var c=e.target.result;if(a)return i(c);d("CS");var f=WebAssembly.instantiate(c,n);return d("CE"),i(f)}d("result null"),i(!a&&p(t).then((function(e){s.transaction(["file"],u).objectStore("file").put(e,l),d("CS");var t=WebAssembly.instantiate(e,n);return d("CE"),t})))},o.onerror=function(e){d("getRet error"),i(!a&&p(t).then((function(e){d("CS");var t=WebAssembly.instantiate(e,n);return d("CE"),t})))}},f.onupgradeneeded=function(e){var t;d("request upgradeneeded"),(t=e.target.result).objectStoreNames.contains("file")&&t.deleteObjectStore("file"),t.createObjectStore("file")}}else{if(d("indexedDB null"),a)return void i(!1);i(p(t).then((function(e){d("CS");var t=WebAssembly.instantiate(e,n);return d("CE"),t})))}}catch(e){if(h("error"),a)return void i(!1);i(p(t).then((function(e){d("CS");var t=WebAssembly.instantiate(e,n);return d("CE"),t})))}}))}function g(e){!function(e,t){var n=e.exports;Module.asm=n,registerTLSInit(Module.asm._emscripten_tls_init),wasmTable=Module.asm.__indirect_function_table,addOnInit(Module.asm.__wasm_call_ctors),wasmModule=t,ENVIRONMENT_IS_PTHREAD||removeRunDependency("wasm-instantiate")}(e.instance,e.module)}function T(e){var t;t=e.instance,e.module,Module.asm=t.exports,wasmMemory=Module.asm.memory,updateGlobalBufferAndViews(wasmMemory.buffer),wasmTable=Module.asm.__indirect_function_table,addOnInit(Module.asm.__wasm_call_ctors),removeRunDependency("wasm-instantiate")}return a?y(t):y(t).then((function(e){var n,r,a=b(t)||"";A=0,a.includes("video.mt")?g(e):a.includes("video")?T(e):(n=e.instance,r=n.exports,Module.asm=r,wasmTable=Module.asm.__indirect_function_table,addOnInit(Module.asm.__wasm_call_ctors),removeRunDependency("wasm-instantiate")),self.Fetch_WASM_OK=!0,postMessage({status:s})})).catch((function(r){_("Failed to instantiate WASM ".concat(t),r),r&&r instanceof WebAssembly.CompileError&&A<3?(A++,v(e,t,n,!0)):postMessage({status:u})}))}function y(){var e=this;this.promise=new Promise((function(t,n){e.reject=n,e.resolve=t}))}var g=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:10,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:15e5;o()(this,e),this.uint8Map={},this.availableIndex=[],this.capacity=t,this.bytesPerElement=n,this.avaiableIndexMap={},this.deferedList=[];for(var r=0;r<t;r++)this.uint8Map[r]=new Uint8Array(n),this.availableIndex.push(r),this.avaiableIndexMap[r]=!0}return u()(e,[{key:"increaseBufferSize",value:function(e){var t=this.bytesPerElement+e;this.bytesPerElement=t;for(var n=0;n<this.capacity;n++){var r=this.uint8Map[n],a=new Uint8Array(t);a.set(r,0),this.uint8Map[n]=a}}},{key:"getCapacity",value:function(){return this.capacity}},{key:"get",value:function(){var e=this;if(this.availableIndex.length>0){var t=this.availableIndex.shift();return this.avaiableIndexMap[t]=!1,new Promise((function(n,r){n({index:t,uint8s:e.uint8Map[t]})}))}var n=new y;return this.deferedList.push(n),n.promise}},{key:"getSync",value:function(){if(this.availableIndex.length>0){var e=this.availableIndex.shift();return this.avaiableIndexMap[e]=!1,{index:e,uint8s:this.uint8Map[e]}}return null}},{key:"recycle",value:function(e){!0!==this.avaiableIndexMap[e]&&(this.avaiableIndexMap[e]=!0,this.availableIndex.push(e),this.deferedList.length>0&&this.deferedList.shift().resolve(this.get()))}}]),e}(),T=function(){function e(t){o()(this,e),this.sharedBufferList=t}return u()(e,[{key:"storeFlexible",value:function(e,t){var n=e.byteLength-this.sharedBufferList.bytesPerElement;if(n>0){var r=Math.floor(.1*this.sharedBufferList.bytesPerElement),a=n>r?n:r;if(a+this.sharedBufferList.bytesPerElement>t)return Promise.reject("too big, more than maxBytesPerElement");this.sharedBufferList.increaseBufferSize(a)}return this.store(e)}},{key:"store",value:function(e){var t=this;return this.sharedBufferList.get().then((function(n){try{return t.obj=n,n.uint8s.set(e,0),t.yuvdata=new Uint8Array(n.uint8s.buffer,0,e.byteLength),!0}catch(e){throw e}finally{t.autoRecycle()}}))}},{key:"storeSync",value:function(e){var t=this.sharedBufferList.getSync();return null!==t&&(this.obj=t,t.uint8s.set(e,0),this.yuvdata=new Uint8Array(t.uint8s.buffer,0,e.byteLength),!0)}},{key:"autoRecycle",value:function(){var e=this;this.autoRecycleInterval=setTimeout((function(){console.log("autoRecycle",e.obj.index),e.recycle()}),5e3)}},{key:"recycle",value:function(){try{this.autoRecycleInterval&&clearInterval(this.autoRecycleInterval),this.sharedBufferList.recycle(this.obj.index)}catch(e){_("Error in YuvWrap.recycle: ".concat(e))}}}]),e}();function S(e,t){t>=e.groupSize||(e.openStatusArray[t]=!0,e.openedCount+=1,e.openedCount>1||e.params.onopen(e))}function I(e,t){t>=e.groupSize||(e.openStatusArray[t]=!1,e.openedCount>0&&(e.openedCount-=1,0==e.openedCount&&e.params.onclose(e)))}var D=function(){function e(t){o()(this,e),this.params=t,this.label=this.params.label||"",this.groupSize=t.groupSize,this.openedCount=0,this.sendIndex=0,this.transportArray=[],this.openStatusArray=[];for(var n=0;n<this.groupSize;n++)this.transportArray.push(null),this.openStatusArray.push(!1)}var t;return u()(e,[{key:"connect",value:(t=a()(l.a.mark((function e(){var t,n,r,a;return l.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:t=0;case 1:if(!(t<this.groupSize)){e.next=12;break}return n=this.params.url,t>0&&(n+="&index="+t),r={url:n,label:this.params.label,onmessage:this.params.onmessage,onopen:S,onclose:I,group:this,index:t},a=new M(r),e.next=8,a.connect();case 8:this.transportArray[t]=a;case 9:t++,e.next=1;break;case 12:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})},{key:"send",value:function(e){if(!(this.openedCount<=0))for(var t=0;t<this.groupSize;t++){this.sendIndex+=1;var n=this.sendIndex%this.groupSize;if(this.transportArray[n]&&this.openStatusArray[n]){this.transportArray[n].send(e);break}}}},{key:"forceClose",value:function(){for(var e=0;e<this.groupSize;e++)this.transportArray[e]&&this.transportArray[e].forceClose()}}]),e}(),M=function(){function e(t){o()(this,e),this.params=t,this.label=this.params.label||"",this.successfulConnectedCount=0,this.connectIndex=0,this.heartbeat=new Uint8Array([104,101,97,114,116,98,101,97,116]),this.transport=null,this.transport_ready=!1,this.isDestroyed=!1}var t,n,r,i,s;return u()(e,[{key:"connect",value:(s=a()(l.a.mark((function e(){return l.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:this.reconnect();case 1:case"end":return e.stop()}}),e,this)}))),function(){return s.apply(this,arguments)})},{key:"reconnect",value:(i=a()(l.a.mark((function e(){var t,n=this;return l.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!(this.isReconnectNow||this.isTimerExist||this.isDestroyed)){e.next=2;break}return e.abrupt("return");case 2:this.isReconnectNow=!0,this.isTimerExist=!0,t=Math.pow(2,this.connectIndex)-1,this.connectIndex+=1,setTimeout(a()(l.a.mark((function e(){var t,r;return l.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!n.isDestroyed){e.next=2;break}return e.abrupt("return");case 2:return n.isTimerExist=!1,t=n.params.url,r=new WebTransport(t),n.transport=r,r.closed.then((function(){n.transport_ready=!1,n.params.onclose&&n.params.onclose(n.params.group,n.params.index)})).catch((function(e){n.transport_ready=!1,n.params.onerror&&n.params.onerror(e),n.params.onclose(n.params.group,n.params.index),n.connectIndex<8&&n.reconnect()})),e.prev=7,n.isReconnectNow=!1,e.next=11,r.ready;case 11:if(!n.isDestroyed){e.next=14;break}return n.close(),e.abrupt("return");case 14:return n.transport_ready=!0,n.successfulConnectedCount++,r.datagrams.incomingMaxAge=1e3,r.datagrams.outgoingMaxAge=100,r.datagrams.incomingHighWaterMark=800,r.datagrams.outgoingHighWaterMark=800,n.writer=r.datagrams.writable.getWriter(),n.reader=r.datagrams.readable.getReader(),e.next=24,n.writer.ready;case 24:n.params.onopen(n.params.group,n.params.index),e.next=32;break;case 27:return e.prev=27,e.t0=e.catch(7),n.params.onerror&&n.params.onerror(e.t0),n.close(),e.abrupt("return");case 32:n.startHeartbeat(),n.read();case 34:case"end":return e.stop()}}),e,null,[[7,27]])}))),1e3*t);case 7:case"end":return e.stop()}}),e,this)}))),function(){return i.apply(this,arguments)})},{key:"send",value:function(e){this.writer.write(e)}},{key:"sendAwaitReady",value:(r=a()(l.a.mark((function e(t){return l.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.writer.ready;case 2:return e.next=4,this.writer.write(t);case 4:case"end":return e.stop()}}),e,this)}))),function(e){return r.apply(this,arguments)})},{key:"startHeartbeat",value:(n=a()(l.a.mark((function e(){return l.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=3,this.sleep(3e3);case 3:return e.next=5,this.sendAwaitReady(this.heartbeat);case 5:e.next=0;break;case 7:case"end":return e.stop()}}),e,this)}))),function(){return n.apply(this,arguments)})},{key:"sleep",value:function(e){return new Promise((function(t){return setTimeout(t,e)}))}},{key:"localTime",value:function(){var e=new Date;return"local time : "+e.getDate()+"/"+(e.getMonth()+1)+"/"+e.getFullYear()+" @ "+e.getHours()+":"+e.getMinutes()+":"+e.getSeconds()+" "}},{key:"close",value:function(){this.transport_ready=!1,this.transport&&this.transport.close()}},{key:"forceClose",value:function(){this.isDestroyed=!0,this.close()}},{key:"read",value:(t=a()(l.a.mark((function e(){var t,n,r;return l.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:t=this.reader;case 1:return e.next=4,t.read();case 4:if(n=e.sent,r=n.value,!n.done){e.next=9;break}return e.abrupt("break",12);case 9:this.params.onmessage(r),e.next=1;break;case 12:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})}]),e}(),O=function(){function e(){o()(this,e),this.ssrcInfoMap=new Map,this.timer=null}return u()(e,[{key:"updateSSRCInfo",value:function(e,t){this.ssrcInfoMap.has(e)||this.ssrcInfoMap.set(e,{timeList:[],lastTime:0,fps:0}),this._calculateFPS(e,t),this._removeZeroFPS()}},{key:"_calculateFPS",value:function(e,t){var n=this.ssrcInfoMap.get(e);if(n.timeList.push(t),n.lastTime=t,n.timeList.length>2&&n.timeList.length%5==0){var r=n.timeList[0],a=n.timeList[n.timeList.length-1];if(a-r>=1e3){var i=Math.floor(1e3/((a-r)/(n.timeList.length-1)));n.fps!==i&&(this._notifyFPS(e,i),n.fps=i),n.timeList=[]}}n.timeList.length>30&&(n.timeList=n.timeList.slice(n.timeList.length-30))}},{key:"_removeZeroFPS",value:function(){var e=this;this.ssrcInfoMap.forEach((function(t,n){var r=e.ssrcInfoMap.get(n);r&&Date.now()-r.lastTime>2e3&&(e.ssrcInfoMap.delete(n),e._notifyFPS(n,0))}))}},{key:"_notifyFPS",value:function(e,t){postMessage({status:f.CURRENT_DECODE_VIDEO_FPS,data:{ssrc:e,fps:t}})}},{key:"_checkIfNewFrameComing",value:function(){var e=this;this.timer&&(clearTimeout(this.timer),this.timer=null),this.timer=setTimeout((function(){e._removeZeroFPS(),e.timer=null}),2500)}}]),e}(),R=new Map,w=[90,180,360,720],N=new O;function C(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,r=e.r_w,a=e.r_h,i=e.rotation,o=e.ssrc,s=1==i||3==i,u=s?a:r,c=s?r:a,l=o>>10<<10,_=w.reduce((function(e,t){return Math.abs(e-c)>Math.abs(t-c)?t:e}),w[0]),d=w.findIndex((function(e){return e===_}));if(!R.get(l)||R.get(l).width!==u||R.get(l).height!==c){var h={width:u,height:c,ssrc:l,quality:d};R.set(l,h),n?n(h):postMessage({status:f.CURRENT_DECODE_VIDEO_QUALITY,data:h})}t&&N.updateSSRCInfo(l,Date.now())}},function(e,t){e.exports=function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")},e.exports.__esModule=!0,e.exports.default=e.exports},function(e,t,n){var r=n(19);function a(e,t){for(var n=0;n<t.length;n++){var a=t[n];a.enumerable=a.enumerable||!1,a.configurable=!0,"value"in a&&(a.writable=!0),Object.defineProperty(e,r(a.key),a)}}e.exports=function(e,t,n){return t&&a(e.prototype,t),n&&a(e,n),Object.defineProperty(e,"prototype",{writable:!1}),e},e.exports.__esModule=!0,e.exports.default=e.exports},function(e,t,n){var r=n(28)();e.exports=r;try{regeneratorRuntime=r}catch(e){"object"==typeof globalThis?globalThis.regeneratorRuntime=r:Function("r","regeneratorRuntime = r")(r)}},function(e,t){function n(e,t,n,r,a,i,o){try{var s=e[i](o),u=s.value}catch(e){return void n(e)}s.done?t(u):Promise.resolve(u).then(r,a)}e.exports=function(e){return function(){var t=this,r=arguments;return new Promise((function(a,i){var o=e.apply(t,r);function s(e){n(o,a,i,s,u,"next",e)}function u(e){n(o,a,i,s,u,"throw",e)}s(void 0)}))}},e.exports.__esModule=!0,e.exports.default=e.exports},function(e,t,n){"use strict";function r(){this.a=[],this.b=0,this.residue=null}r.prototype.getLength=function(){return this.a.length-this.b},r.prototype.isEmpty=function(){return 0==this.a.length},r.prototype.enqueue=function(e){this.a.push(e)},r.prototype.dequeue=function(){if(0!=this.a.length){var e=this.a[this.b];return 2*++this.b>=this.a.length&&(this.a=this.a.slice(this.b),this.b=0),e}return null},r.prototype.peek=function(){return 0<this.a.length?this.a[this.b]:void 0},r.prototype.clear=function(){this.a=[],this.b=0},t.a=r},function(e,t,n){var r=n(19);e.exports=function(e,t,n){return(t=r(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e},e.exports.__esModule=!0,e.exports.default=e.exports},function(e,t,n){"use strict";n.d(t,"b",(function(){return o})),n.d(t,"a",(function(){return s})),n.d(t,"c",(function(){return u}));var r,a=n(7),i=n.n(a),o={VIDEO_ENCODE:"0",VIDEO_DECODE:"1",AUDIO_ENCODE:"2",AUDIO_DECODE:"3",SHARING_ENCODE:"4",SHARING_DECODE:"5"},s={SET_USER_NODE_LIST:"SET_USER_NODE_LIST"},u=(r={},i()(r,o.AUDIO_ENCODE,"audio.encode"),i()(r,o.AUDIO_DECODE,"audio.decode"),i()(r,o.VIDEO_ENCODE,"video.encode"),i()(r,o.VIDEO_DECODE,"video.decode"),i()(r,o.SHARING_ENCODE,"share.encode"),i()(r,o.SHARING_DECODE,"share.decode"),r)},,function(e,t,n){"use strict";var r=n(2),a=n.n(r),i=n(3),o=n.n(i),s=n(6),u=function(){function e(){a()(this,e),this._highFrequencyLogs={}}return o()(e,[{key:"setInstance",value:function(e){this._instance=e}},{key:"getMessageFromErrorOrEvent",value:function(e,t){var n=e;return t instanceof ErrorEvent?(t.filename&&(n+=" File: ".concat(t.filename)),(t.lineno||t.colno)&&(n+=" Line: ".concat(t.lineno,":").concat(t.colno)),t.message&&(n+=" Message: ".concat(t.message)),t.stack&&(n+="\nStack: ".concat(t.stack))):t instanceof Error?(t.fileName&&(n+=" File: ".concat(t.fileName)),(t.lineNumber||t.columnNumber)&&(n+=" Line: ".concat(t.lineNumber,":").concat(t.columnNumber)),t.message&&(n+=" Message: ".concat(t.message)),t.stack&&(n+=" Stack: ".concat(t.stack)),t.name&&(n+=" Name: ".concat(t.name)),t.constraint&&(n+=" Constraint: ".concat(t.constraint))):t instanceof CloseEvent&&(t.code&&(n+=" Code: ".concat(t.code)),t.reason&&(n+=" Reason: ".concat(t.reason)),n+=" wasClean: ".concat(t.wasClean)),n}},{key:"error",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;e=this.getMessageFromErrorOrEvent(e,t),this._highFrequencyLogs[e]?this._highFrequencyLogs[e]+=1:this._highFrequencyLogs[e]=1;var n=c(this._highFrequencyLogs[e]);this._instance&&n&&this._instance.error(e)}},{key:"warn",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;e=this.getMessageFromErrorOrEvent(e,t),this._instance&&this._instance.warn(e)}},{key:"log",value:function(e){this._instance&&this._instance.log(e)}}]),e}(),c=function(e){return 0==(e&e-1)},l=new u;n.d(t,"b",(function(){return f})),n.d(t,"a",(function(){return _})),n.d(t,"c",(function(){return d}));var f=function(){function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1500,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"",i=arguments.length>3&&void 0!==arguments[3]&&arguments[3],o=arguments.length>4&&void 0!==arguments[4]?arguments[4]:0,s=arguments.length>5&&void 0!==arguments[5]?arguments[5]:t.byteLength,u=arguments.length>6?arguments[6]:void 0;a()(this,e),this.offset=o,this._BYTES_PER_ELEMENT=n,this.capacity=(s-8)/n,this.usableCapacity=this.capacity-1,this.buf=t,this.write_ptr=new Uint32Array(this.buf,o,1),this.read_ptr=new Uint32Array(this.buf,o+4,1),this.storageUint8sByteOffset=o+8,this.storageUint8s=new Uint8Array(this.buf,this.storageUint8sByteOffset,s-8),this.byteLength=s,this.label=r,this.usingOneElementBuffer=i,u&&(this.wasmMemory=u),i&&(this.oneElementBuffer=new ArrayBuffer(n)),this.repushhander=0,this.repushlogcount=0,this.monitorpace=0}return o()(e,[{key:"checkBuffer",value:function(){this.wasmMemory&&this.wasmMemory.buffer!=this.buf&&(console.log("buffer change"),this.buf=this.wasmMemory.buffer,this.storageUint8s=new Uint8Array(this.buf,this.storageUint8sByteOffset,this.byteLength-8))}},{key:"enqueue",value:function(e){return this.available_write()>0&&this.push(e),{rd:Atomics.load(this.read_ptr,0),wr:Atomics.load(this.write_ptr,0)}}},{key:"enqueueSafe",value:function(e){var t=this,n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:void 0;for(this.dataBuffer||(this.dataBuffer=new s.a);this.dataBuffer.getLength()>0&&this.available_write()>0;){var a=this.dataBuffer.dequeue();a&&this.push(a)}var i=this.dataBuffer.getLength();if(e){if(this.available_write()>0&&0==i)return this.push(e),!0;if(!n)return!1;this.dataBuffer.enqueue(e),++i}if(i>0&&!this.repushhander&&(this.repushhander=setTimeout((function(){t.repushlogcount%10==0&&console.warn("<<< retry consume cache data"),t.repushlogcount++,t.repushhander=0,t.enqueueSafe(null)}),30)),i>=1e3&&(l.error("Cached data in SAB reached critical value, will be cleared"),this.dataBuffer.clear(),r("vqslclear")),i>0&&r){var o=performance.now();(!this.monitorpace||o-this.monitorpace>2e4)&&(this.monitorpace=o,r("vqsl"+i))}return!0}},{key:"push",value:function(e){return e instanceof Array?this._pushArray(e):this._push(e)}},{key:"_pushArray",value:function(e){var t=this,n=Atomics.load(this.write_ptr,0);this.checkBuffer();var r=0;e.forEach((function(e){t.storageUint8s.set(e,n*t._BYTES_PER_ELEMENT+8+4+r),r+=e.byteLength})),new Uint32Array(this.buf,this.offset+n*this._BYTES_PER_ELEMENT+8,1)[0]=r;var a=(n+1)%this.capacity;return Atomics.store(this.write_ptr,0,a),!0}},{key:"_push",value:function(e){var t=Atomics.load(this.write_ptr,0);this.checkBuffer(),this.storageUint8s.set(e,t*this._BYTES_PER_ELEMENT+8+4,e.byteLength),new Uint32Array(this.buf,this.offset+t*this._BYTES_PER_ELEMENT+8,1)[0]=e.byteLength;var n=(t+1)%this.capacity;return Atomics.store(this.write_ptr,0,n),!0}},{key:"addReadPtr",value:function(){var e=Atomics.load(this.read_ptr,0);Atomics.store(this.read_ptr,0,(e+1)%this.capacity)}},{key:"dequeue",value:function(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0],t=Atomics.load(this.read_ptr,0);this.checkBuffer();var n,r,a,i=new Uint32Array(this.buf,this.offset+t*this._BYTES_PER_ELEMENT+8,1);if(e){n=this.oneElementBuffer?new Uint8Array(this.oneElementBuffer,0,i[0]):new Uint8Array(i[0]);var o=new Uint8Array(this.storageUint8s.buffer,t*this._BYTES_PER_ELEMENT+8+4+this.storageUint8sByteOffset,n.byteLength);n.set(o,0)}else n=this.storageUint8s.subarray(t*this._BYTES_PER_ELEMENT+8+4,t*this._BYTES_PER_ELEMENT+8+4+i[0]),r=t*this._BYTES_PER_ELEMENT+8+4+this.storageUint8sByteOffset,a=t*this._BYTES_PER_ELEMENT+8+4+i[0]+this.storageUint8sByteOffset;return e&&Atomics.store(this.read_ptr,0,(t+1)%this.capacity),e?n:{bCopyData:e,uint8s:n,begin:r,end:a}}},{key:"available_read",value:function(){var e=Atomics.load(this.read_ptr,0),t=Atomics.load(this.write_ptr,0);return this._available_read(e,t)}},{key:"available_write",value:function(){var e=Atomics.load(this.read_ptr,0),t=Atomics.load(this.write_ptr,0);return this._available_write(e,t)}},{key:"is_available_write",value:function(){var e=Atomics.load(this.read_ptr,0),t=Atomics.load(this.write_ptr,0);return this._is_available_write(e,t)}},{key:"_available_read",value:function(e,t){return(t+this.capacity-e)%this.capacity}},{key:"_available_write",value:function(e,t){return this.usableCapacity-this._available_read(e,t)}},{key:"_is_available_write",value:function(e,t){return this._available_write(e,t)>0}},{key:"_storage_capacity",value:function(){return this.capacity}}],[{key:"getStorageForCapacity",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:80,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1500,n=8+(e+1)*t;return new SharedArrayBuffer(n)}}]),e}(),_=function(){function e(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:50,o=arguments.length>4&&void 0!==arguments[4]?arguments[4]:80;if(a()(this,e),!(t instanceof f))throw new Error("RingBuffer required");this.rb=t,this.dataCallback=n,this.interval=null,this.requestID=null,this.timeout_call=r,this.tick_lasted_time=0,this.timeoutMS=i,this.maxCount=o}return o()(e,[{key:"consume",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:20,n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];this.interval||(this.bCopyData=n,this.interval=setInterval((function(){var t=performance.now();if(e.timeout_call){if(0!=e.tick_lasted_time){var n=t-e.tick_lasted_time;n>=e.timeoutMS&&e.timeout_call(n,t)}e.tick_lasted_time=t}e._dequeue()}),t),console.log("consume interval ".concat(this.interval)))}},{key:"consumeAll",value:function(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];this.bCopyData=e,this._dequeue()}},{key:"_dequeue",value:function(){var e=Math.min(this.rb.available_read(),this.maxCount);for(this.consoume_count=0;this.consoume_count<e;){this.consoume_count++;var t=this.rb.dequeue(this.bCopyData);this.dataCallback(t),this.bCopyData||this.rb.addReadPtr()}}},{key:"_consumeForAnimationFrame",value:function(){this._dequeue(),this.requestID=requestAnimationFrame(this._consumeForAnimationFrame.bind(this))}},{key:"consumeUsingRequestAnimationFrame",value:function(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];this.requestID||(this.bCopyData=e,this._consumeForAnimationFrame())}},{key:"cancelConsume",value:function(){console.log("cancelConsume interval ".concat(this.interval," requestID ").concat(this.requestID)),this.tick_lasted_time=0,clearInterval(this.interval),this.requestID&&cancelAnimationFrame(this.requestID),this.interval=null,this.requestID=null}}]),e}(),d=function(){function e(){a()(this,e),this.timeStampKey="video_timestamp",this.keysList=["video_ssrc","video_width","video_height","rendering_x","rendering_y","rendering_w","rendering_h","rotation","yuv_limited"],this.bCopyData=null,this.begin=null,this.end=null}return o()(e,[{key:"setOBJ",value:function(e){this.obj=e,this.yuvUint8s=e.data}},{key:"setBuffer",value:function(e){!1===e.bCopyData?(this.objUint8s=e.uint8s,this.bCopyData=e.bCopyData,this.begin=e.begin,this.end=e.end):(this.objUint8s=e,this.bCopyData=!0,this.begin=0,this.end=e.byteLength)}},{key:"buffer2Obj",value:function(){var e=new Uint32Array(this.objUint8s.buffer,this.begin,9),t=new DataView(this.objUint8s.buffer,this.begin+40,16),n={};this.keysList.forEach((function(t,r){n[t]=e[r]})),n[this.timeStampKey]=Number(t.getBigUint64(0,!0));var r,a=Number(t.getBigUint64(8,!0)),i=new Uint8Array(this.objUint8s.buffer,this.begin+40+8+8,a);return r=(this.bCopyData,i),n.data=r,n}},{key:"obj2buffer",value:function(){var e=this,t=new Uint8Array(56),n=this.keysList,r=new Uint32Array(t.buffer,0,9),a=new DataView(t.buffer,40,16);return n.forEach((function(t,n){r[n]=e.obj[t]})),a.setBigUint64(0,BigInt(this.obj[this.timeStampKey]),!0),a.setBigUint64(8,BigInt(this.yuvUint8s.byteLength),!0),[t,this.yuvUint8s]}}]),e}()},function(e,t,n){"use strict";n.d(t,"b",(function(){return r})),n.d(t,"d",(function(){return a})),n.d(t,"c",(function(){return i})),n.d(t,"e",(function(){return o})),n.d(t,"f",(function(){return s})),n.d(t,"a",(function(){return u})),n.d(t,"h",(function(){return c})),n.d(t,"g",(function(){return l})),n.d(t,"i",(function(){return f}));var r=3,a=6,i=24,o="SHARING_PARAM_INFO_FROM_SOCKET",s=121,u="AUDIO_QOS_DATA",c="VIDEO_QOS_DATA",l="VIDEOSHARE_QOS_DATA",f={VIDEO_ENCODE:"0",VIDEO_DECODE:"1",AUDIO_ENCODE:"2",AUDIO_DECODE:"3",SHARING_ENCODE:"4",SHARING_DECODE:"5"}},,,function(e,t){function n(t){return e.exports=n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},e.exports.__esModule=!0,e.exports.default=e.exports,n(t)}e.exports=n,e.exports.__esModule=!0,e.exports.default=e.exports},,function(e,t,n){var r=n(29);e.exports=function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&r(e,t)},e.exports.__esModule=!0,e.exports.default=e.exports},function(e,t){function n(t){return e.exports=n=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},e.exports.__esModule=!0,e.exports.default=e.exports,n(t)}e.exports=n,e.exports.__esModule=!0,e.exports.default=e.exports},,function(e,t,n){var r=n(14).default,a=n(27);e.exports=function(e){var t=a(e,"string");return"symbol"===r(t)?t:String(t)},e.exports.__esModule=!0,e.exports.default=e.exports},function(e,t,n){"use strict";n.d(t,"a",(function(){return p}));var r=n(16),a=n.n(r),i=n(21),o=n.n(i),s=n(17),u=n.n(s),c=n(2),l=n.n(c),f=n(3),_=n.n(f);n(8);function d(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=u()(e);if(t){var a=u()(this).constructor;n=Reflect.construct(r,arguments,a)}else n=r.apply(this,arguments);return o()(this,n)}}var h=function(){function e(){l()(this,e),this.port=null,this.cache=[],this.stopCache=!1}return _()(e,[{key:"readyForLog",value:function(){}},{key:"sendLog",value:function(e){}},{key:"writeLog",value:function(e){var t=this;this.readyForLog()?(this.stopCache||(this.cache.forEach((function(e){return t.sendLog(e)})),this.clearCache()),this.sendLog(e)):this.stopCache||this.cache.push(e)}},{key:"clearCache",value:function(){this.stopCache=!0,this.cache=[]}},{key:"getTime",value:function(){var e=new Date;return e.getHours()+":"+e.getMinutes()+":"+e.getSeconds()+":"+e.getMilliseconds()}},{key:"getLogData",value:function(e,t,n){if(t){var r=new Uint8Array(n?t+1:t),a=Module.HEAP8.subarray(e+0,e+t);return r.set(a,0,t),n&&(r[t]=10),r}return e.data}},{key:"writeWasmLog",value:function(e,t){this.writeLog(this.getTime()),this.writeLog(this.getLogData(e,t)),this.writeLog("\n")}}]),e}(),E=function(e){a()(n,e);var t=d(n);function n(){var e;return l()(this,n),(e=t.call(this)).port=null,e.ready=!1,e}return _()(n,[{key:"init",value:function(){var e=this,t=0,n=function n(r){"local_log_port"===r.data.command?e.port||(e.port=r.data.data):"local_log_ready"===r.data.command&&(e.ready=!0,self.removeEventListener("message",n),clearTimeout(t),e.stopCache||(e.cache.forEach((function(t){return e.sendLog(t)})),e.clearCache()))};self.addEventListener("message",n),t=setTimeout((function(){self.removeEventListener("message",n),e.clearCache()}),6e4)}},{key:"readyForLog",value:function(){return!!this.port&&this.ready}},{key:"sendLog",value:function(e){this.port.postMessage(e)}}]),n}(h);function p(){var e=!1;try{e=__ENABLE_LOG__}catch(e){}return e?new E:null}},function(e,t,n){var r=n(14).default,a=n(30);e.exports=function(e,t){if(t&&("object"===r(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return a(e)},e.exports.__esModule=!0,e.exports.default=e.exports},,,,,,function(e,t,n){var r=n(14).default;e.exports=function(e,t){if("object"!==r(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var a=n.call(e,t||"default");if("object"!==r(a))return a;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)},e.exports.__esModule=!0,e.exports.default=e.exports},function(e,t,n){var r=n(14).default;function a(){"use strict";/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */e.exports=a=function(){return t},e.exports.__esModule=!0,e.exports.default=e.exports;var t={},n=Object.prototype,i=n.hasOwnProperty,o=Object.defineProperty||function(e,t,n){e[t]=n.value},s="function"==typeof Symbol?Symbol:{},u=s.iterator||"@@iterator",c=s.asyncIterator||"@@asyncIterator",l=s.toStringTag||"@@toStringTag";function f(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{f({},"")}catch(e){f=function(e,t,n){return e[t]=n}}function _(e,t,n,r){var a=t&&t.prototype instanceof E?t:E,i=Object.create(a.prototype),s=new O(r||[]);return o(i,"_invoke",{value:S(e,n,s)}),i}function d(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}t.wrap=_;var h={};function E(){}function p(){}function b(){}var A={};f(A,u,(function(){return this}));var m=Object.getPrototypeOf,v=m&&m(m(R([])));v&&v!==n&&i.call(v,u)&&(A=v);var y=b.prototype=E.prototype=Object.create(A);function g(e){["next","throw","return"].forEach((function(t){f(e,t,(function(e){return this._invoke(t,e)}))}))}function T(e,t){var n;o(this,"_invoke",{value:function(a,o){function s(){return new t((function(n,s){!function n(a,o,s,u){var c=d(e[a],e,o);if("throw"!==c.type){var l=c.arg,f=l.value;return f&&"object"==r(f)&&i.call(f,"__await")?t.resolve(f.__await).then((function(e){n("next",e,s,u)}),(function(e){n("throw",e,s,u)})):t.resolve(f).then((function(e){l.value=e,s(l)}),(function(e){return n("throw",e,s,u)}))}u(c.arg)}(a,o,n,s)}))}return n=n?n.then(s,s):s()}})}function S(e,t,n){var r="suspendedStart";return function(a,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===a)throw i;return w()}for(n.method=a,n.arg=i;;){var o=n.delegate;if(o){var s=I(o,n);if(s){if(s===h)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);r="executing";var u=d(e,t,n);if("normal"===u.type){if(r=n.done?"completed":"suspendedYield",u.arg===h)continue;return{value:u.arg,done:n.done}}"throw"===u.type&&(r="completed",n.method="throw",n.arg=u.arg)}}}function I(e,t){var n=t.method,r=e.iterator[n];if(void 0===r)return t.delegate=null,"throw"===n&&e.iterator.return&&(t.method="return",t.arg=void 0,I(e,t),"throw"===t.method)||"return"!==n&&(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+n+"' method")),h;var a=d(r,e.iterator,t.arg);if("throw"===a.type)return t.method="throw",t.arg=a.arg,t.delegate=null,h;var i=a.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,h):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,h)}function D(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function M(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function O(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(D,this),this.reset(!0)}function R(e){if(e){var t=e[u];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,r=function t(){for(;++n<e.length;)if(i.call(e,n))return t.value=e[n],t.done=!1,t;return t.value=void 0,t.done=!0,t};return r.next=r}}return{next:w}}function w(){return{value:void 0,done:!0}}return p.prototype=b,o(y,"constructor",{value:b,configurable:!0}),o(b,"constructor",{value:p,configurable:!0}),p.displayName=f(b,l,"GeneratorFunction"),t.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===p||"GeneratorFunction"===(t.displayName||t.name))},t.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,b):(e.__proto__=b,f(e,l,"GeneratorFunction")),e.prototype=Object.create(y),e},t.awrap=function(e){return{__await:e}},g(T.prototype),f(T.prototype,c,(function(){return this})),t.AsyncIterator=T,t.async=function(e,n,r,a,i){void 0===i&&(i=Promise);var o=new T(_(e,n,r,a),i);return t.isGeneratorFunction(n)?o:o.next().then((function(e){return e.done?e.value:o.next()}))},g(y),f(y,l,"Generator"),f(y,u,(function(){return this})),f(y,"toString",(function(){return"[object Generator]"})),t.keys=function(e){var t=Object(e),n=[];for(var r in t)n.push(r);return n.reverse(),function e(){for(;n.length;){var r=n.pop();if(r in t)return e.value=r,e.done=!1,e}return e.done=!0,e}},t.values=R,O.prototype={constructor:O,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(M),!e)for(var t in this)"t"===t.charAt(0)&&i.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function n(n,r){return o.type="throw",o.arg=e,t.next=n,r&&(t.method="next",t.arg=void 0),!!r}for(var r=this.tryEntries.length-1;r>=0;--r){var a=this.tryEntries[r],o=a.completion;if("root"===a.tryLoc)return n("end");if(a.tryLoc<=this.prev){var s=i.call(a,"catchLoc"),u=i.call(a,"finallyLoc");if(s&&u){if(this.prev<a.catchLoc)return n(a.catchLoc,!0);if(this.prev<a.finallyLoc)return n(a.finallyLoc)}else if(s){if(this.prev<a.catchLoc)return n(a.catchLoc,!0)}else{if(!u)throw new Error("try statement without catch or finally");if(this.prev<a.finallyLoc)return n(a.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var r=this.tryEntries[n];if(r.tryLoc<=this.prev&&i.call(r,"finallyLoc")&&this.prev<r.finallyLoc){var a=r;break}}a&&("break"===e||"continue"===e)&&a.tryLoc<=t&&t<=a.finallyLoc&&(a=null);var o=a?a.completion:{};return o.type=e,o.arg=t,a?(this.method="next",this.next=a.finallyLoc,h):this.complete(o)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),h},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),M(n),h}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var a=r.arg;M(n)}return a}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:R(e),resultName:t,nextLoc:n},"next"===this.method&&(this.arg=void 0),h}},t}e.exports=a,e.exports.__esModule=!0,e.exports.default=e.exports},function(e,t){function n(t,r){return e.exports=n=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},e.exports.__esModule=!0,e.exports.default=e.exports,n(t,r)}e.exports=n,e.exports.__esModule=!0,e.exports.default=e.exports},function(e,t){e.exports=function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e},e.exports.__esModule=!0,e.exports.default=e.exports},,,,,,,,,,,function(e,t,n){"use strict";n.r(t);var r=n(5),a=n.n(r),i=n(2),o=n.n(i),s=n(3),u=n.n(s),c=n(4),l=n.n(c),f=n(1),_=n(0),d=n(8),h=n(10),E=n(11),p=n(20);function b(e,t,n){self.fsHandler&&self.fsHandler.handleViperPrint(e,t,n)}n.d(t,"Get_ExternalRecord",(function(){return b})),n.d(t,"Channel_Agent",(function(){return Ge})),n.d(t,"responseAudioQosData",(function(){return je})),n.d(t,"Open_Audio_WebSocket_Connect",(function(){return Ye})),n.d(t,"audio_websocket_on_open",(function(){return Xe})),n.d(t,"audio_websocket_on_message",(function(){return st})),n.d(t,"audio_data_message_from_main_thread_datachannel",(function(){return ut})),n.d(t,"audio_websocket_on_close",(function(){return ct})),n.d(t,"audio_websocket_on_error",(function(){return lt})),n.d(t,"frame_aec_callback",(function(){return ft})),n.d(t,"frame_callback_SAB",(function(){return Et})),n.d(t,"LOG_OUT_WEBRTC",(function(){return pt})),n.d(t,"update_play_time",(function(){return bt})),n.d(t,"calMilliSeconds",(function(){return At})),n.d(t,"frame_callback",(function(){return mt})),n.d(t,"wcl_trace_log",(function(){return vt})),n.d(t,"media_data_transport_type_monitor",(function(){return gt})),n.d(t,"audio_encode_frame_callback",(function(){return Tt})),n.d(t,"send_data_to_rwg",(function(){return St})),n.d(t,"sampleRateLog",(function(){return It})),n.d(t,"Get_Mixed_Audio_Interval",(function(){return Kt})),n.d(t,"Get_Mixed_Audio_Interval_SAB",(function(){return qt})),n.d(t,"Encode_Audio_Data",(function(){return Zt})),n.d(t,"Encode_Audio_Data_SAB",(function(){return Xt})),n.d(t,"send_data",(function(){return zt})),n.d(t,"LOG_OUT",(function(){return Qt})),n.d(t,"put_aec_data",(function(){return Jt})),n.d(t,"TURN_DOWN_VOLUME",(function(){return $t})),n.d(t,"Update_SSRC_Time",(function(){return en})),n.d(t,"Get_SSRC_Latest_Time",(function(){return tn})),n.d(t,"SAVE_IV",(function(){return nn})),n.d(t,"getWasmMemory",(function(){return rn})),n.d(t,"freeWasmMemory",(function(){return an})),n.d(t,"pump_rtp_data",(function(){return cn})),n.d(t,"on_mute_speech_warning_WASM",(function(){return _n})),n.d(t,"on_monitor_log_WASM",(function(){return dn})),Object.keys(_).forEach((function(e){return self[e]=_[e]})),WebAssembly.instantiateStreaming=!1,self.wasmSuccessEvent=_.Audio_Dec_WASM_OK,self.wasmFailEvent=_.Audio_Dec_WASM_FAILED,self.databaseName="AUDIO_FILE",self.databaseDataType="audio",self.instantiateCachedURL=f.h;var A,m,v,y,g,T,S,I,D,M,O,R,w,N,C,L,k=function(){function e(t,n,r){if(o()(this,e),this.STATE_READ_READY=0,this.STATE_READ_INDEX=1,this.STATE_WRITE_READY=2,this.STATE_WRITE_INDEX=3,this.STATE_DATA_COUNT=4,this.STATE_CACHE_SIZE=5,this.STATY_READY_NO=0,this.STATY_READY_YES=1,this.sabState=new Uint32Array(t),this.sabBuffer=new Float32Array(n),this.perFrameLength=r,this.bufferLen=this.sabBuffer.length,this.supportSpecialOptimization=this.bufferLen%r==0,this.bufferIndex=null,this.supportSpecialOptimization){var a=this.bufferLen/r;this.bufferIndex=[];for(var i=0;i<a;i++)this.bufferIndex.push(this.sabBuffer.subarray(i*r,i*r+r))}this.placeBuffer=new Float32Array(this.perFrameLength),this.QUANTUM_SIZE=128,this.CACHE_SIZE_MAX_VALUE=Math.floor(Math.floor(this.bufferLen/this.QUANTUM_SIZE)/2),this.CACHE_SIZE_MIN_VALUE=6,this.CACHE_SIZE_MAX_VALUE<this.CACHE_SIZE_MIN_VALUE&&(this.CACHE_SIZE_MAX_VALUE=this.CACHE_SIZE_MIN_VALUE),this.setCacheSize(this.CACHE_SIZE_MIN_VALUE),this._counter=0}return u()(e,[{key:"getCacheSize",value:function(){return Atomics.load(this.sabState,this.STATE_CACHE_SIZE)}},{key:"setCacheSize",value:function(e){e>this.CACHE_SIZE_MAX_VALUE&&(e=this.CACHE_SIZE_MAX_VALUE),e<this.CACHE_SIZE_MIN_VALUE&&(e=this.CACHE_SIZE_MIN_VALUE),Atomics.store(this.sabState,this.STATE_CACHE_SIZE,e)}},{key:"setQuantumSize",value:function(e){this.QUANTUM_SIZE=e,this.CACHE_SIZE_MAX_VALUE=Math.floor(Math.floor(this.bufferLen/this.QUANTUM_SIZE)/2),this.CACHE_SIZE_MAX_VALUE<this.CACHE_SIZE_MIN_VALUE&&(this.CACHE_SIZE_MAX_VALUE=this.CACHE_SIZE_MIN_VALUE)}},{key:"isNeedMoreData",value:function(){var e=Atomics.load(this.sabState,this.STATE_CACHE_SIZE);return Atomics.load(this.sabState,this.STATE_DATA_COUNT)<e*this.QUANTUM_SIZE}},{key:"shouldAdjustCacheBuffer",value:function(){this._counter>0&&this.setCacheSize(this.getCacheSize()+1)}},{key:"clear",value:function(){this.sabState&&(this.sabState[this.STATE_READ_READY]=0,this.sabState[this.STATE_READ_INDEX]=0,this.sabState[this.STATE_WRITE_READY]=0,this.sabState[this.STATE_WRITE_INDEX]=0,this.sabState[this.STATE_DATA_COUNT]=0),this._counter=0}},{key:"setWriteReady",value:function(){this.sabState[this.STATE_WRITE_READY]=this.STATY_READY_YES}},{key:"isReady",value:function(){return this.sabState[this.STATE_WRITE_READY]&&this.sabState[this.STATE_READ_READY]}},{key:"getDataCount",value:function(){return Atomics.load(this.sabState,this.STATE_DATA_COUNT)}},{key:"write",value:function(e){if(e.length===this.perFrameLength){var t=this.sabState[this.STATE_READ_READY];if(this.sabState[this.STATE_WRITE_READY]||(this.sabState[this.STATE_WRITE_READY]=this.STATY_READY_YES,this.sabState[this.STATE_WRITE_INDEX]=0),t)return this.supportSpecialOptimization?this.writeSpecial(e):this.writeNormal(e)}}},{key:"writeNormal",value:function(e){var t=this.sabState[this.STATE_WRITE_INDEX];if(this.bufferLen-t>=this.perFrameLength)this.sabBuffer.set(e,t);else{var n=e.subarray(0,this.bufferLen-t),r=e.subarray(n.length);this.sabBuffer.set(n,t),this.sabBuffer.set(r)}(t+=this.perFrameLength)>=this.bufferLen&&(t-=this.bufferLen),this.sabState[this.STATE_WRITE_INDEX]=t,Atomics.add(this.sabState,this.STATE_DATA_COUNT,this.perFrameLength)}},{key:"writeSpecial",value:function(e){var t=this.sabState[this.STATE_WRITE_INDEX];this.bufferIndex[t].set(e),t=(t+1)%this.bufferIndex.length,this.sabState[this.STATE_WRITE_INDEX]=t,Atomics.add(this.sabState,this.STATE_DATA_COUNT,this.perFrameLength)}},{key:"read",value:function(){var e=this.sabState[this.STATE_READ_READY],t=this.sabState[this.STATE_WRITE_READY];if(e||(this.sabState[this.STATE_READ_READY]=this.STATY_READY_YES,this.sabState[this.STATE_READ_INDEX]=0),!t)return null;var n=this.supportSpecialOptimization?this.readSpecial():this.readNormal();return null===n?this.shouldAdjustCacheBuffer():this._counter++,n}},{key:"readNormal",value:function(){var e=this.sabState[this.STATE_READ_INDEX],t=Atomics.load(this.sabState,this.STATE_DATA_COUNT);if(t<this.perFrameLength)return null;if(t>this.bufferLen){var n=Math.ceil((t-this.bufferLen)/this.perFrameLength)+1;e=(n*this.perFrameLength+e)%this.bufferLen,Atomics.sub(this.sabState,this.STATE_DATA_COUNT,n*this.perFrameLength)}var r=null;if(this.bufferLen-e>=this.perFrameLength)r=this.sabBuffer.subarray(e,e+this.perFrameLength);else{var a=this.sabBuffer.subarray(e),i=this.sabBuffer.subarray(0,this.perFrameLength-a.length);(r=this.placeBuffer).set(a),r.set(i,a.length)}return(e+=this.perFrameLength)>=this.bufferLen&&(e-=this.bufferLen),this.sabState[this.STATE_READ_INDEX]=e,Atomics.sub(this.sabState,this.STATE_DATA_COUNT,this.perFrameLength),r}},{key:"readSpecial",value:function(){var e=this.sabState[this.STATE_READ_INDEX],t=Atomics.load(this.sabState,this.STATE_DATA_COUNT);if(t<this.perFrameLength)return null;if(t>this.bufferLen){var n=Math.ceil((t-this.bufferLen)/this.perFrameLength)+1;e=(n+e)%this.bufferIndex.length,Atomics.sub(this.sabState,this.STATE_DATA_COUNT,n*this.perFrameLength)}var r=this.bufferIndex[e];return e=(e+1)%this.bufferIndex.length,this.sabState[this.STATE_READ_INDEX]=e,Atomics.sub(this.sabState,this.STATE_DATA_COUNT,this.perFrameLength),r}}]),e}(),P="undefined"!=typeof SharedArrayBuffer;function U(){this.a=[],this.b=0,this.residue=null}U.prototype.getLength=function(){return this.a.length-this.b},U.prototype.isEmpty=function(){return 0==this.a.length},U.prototype.enqueue=function(e){this.a.push(e)},U.prototype.dequeue=function(){if(0!=this.a.length){var e=this.a[this.b];return 2*++this.b>=this.a.length&&(this.a=this.a.slice(this.b),this.b=0),e}return null},U.prototype.peek=function(){return 0<this.a.length?this.a[this.b]:void 0};var x,B,F,H,W,V,G,j,Y,K,q,Z,X,z,Q,J,$,ee,te,ne=!1,re=null;self.onWasmModuleReady=function(){A=Module.cwrap("_Audio_Init","number",["number","string","string","number","number","boolean","boolean","boolean","number"]),m=Module.cwrap("_Audio_UnInit","number",["number"]),v=Module.cwrap("_Deliver_Recorded_Data","number",["number","number","number","number","number","number"]),y=Module.cwrap("_Audio_Decode","number",["number","number","array","number"]),g=Module.cwrap("_Get_Mixed_Audio","number",["number","number","number","number","number"]),Module.cwrap("_Put_Pre_Aec_Data","number",["number","array","number","number","number","number"]),Module.cwrap("_Put_Pre_Aec_Data","number",["number","number","number","number","number","number"]),T=Module.cwrap("_Get_Aec_Delay","number",["number"]),Module.cwrap("_Set_Aec_Delay","number",["number","number"]),S=Module.cwrap("_ReSet_Aec","number",["number"]),I=Module.cwrap("_Audio_Set_Data_Encryption","number",["number","number"]),D=Module.cwrap("_Add_Cooker_info","number",["number","number","number","number"]),R=Module.cwrap("_Get_Audio_Meat_Weight","number",["number"]),M=Module.cwrap("_Remove_Cooker_Info","number",["number","number"]),O=Module.cwrap("_Change_Aec_Flag","number",["number","boolean"]),w=Module.cwrap("_Change_Connect_Type","number",["number","number"]),N=Module.cwrap("_Interpretation_Configure","number",["number","number","number","number"]),C=Module.cwrap("_Request_Audio_Qos_Data","number",["number"]),L=Module._malloc(40),Module.HEAPU32.subarray(L/4,L/4+10),x=Module.cwrap("_Start_Audio_Share","number",["number","number","number"]),B=Module.cwrap("_InsertShareData","number",["number","number","number","number","number","number"]),W=Module.cwrap("_Set_Share_Volume_Level","number",["number","number","number"]),V=Module.cwrap("_Set_Speech_Volume_Level","number",["number","number","number"]),G=Module.cwrap("_Update_Monitor_Send_Audio_Info","number",["number","number","number"]),j=Module.cwrap("_Update_Monitor_Receive_Audio_Info","number",["number","number","number"]),Y=Module.cwrap("_Cc_Set_Lang","number",["number","number"]),K=Module._malloc(4),Module.HEAPU32.subarray(K/4,K/4+1),q=Module.cwrap("_Set_Audio_Encryption_Key_Directly","number",["number","number","number","number"]),Z=Module.cwrap("_Add_Roster_Info_Directly","number",["number","number","number","number"]),X=Module.cwrap("_Enable_Share_To_Bo","number",["number","boolean"]),z=Module.cwrap("_Enable_Broadcast_To_Bo","number",["number","boolean"]),Q=Module.cwrap("_Set_Audio_Pipe_To_Bo","number",["number","number"]),J=Module.cwrap("_Smooth_Send_For_Qos","number",["number"]),ee=Module.cwrap("_request_nack_t_periodically_for_qos","number",["number"]),Ce=Module.cwrap("_Enable_Pipe_OUT_RTP","number",["number","number"]),ke=Module.cwrap("_setMultiViewFlag","number",["number","boolean"]),te=Module.cwrap("_Switch_Denoise","number",["number","number","number","number"]),Ue=Module.cwrap("_Set_Codec_Mode","number",["number","number"]),He=Module.cwrap("_Heartbeat","number",["number"]),We=Module.cwrap("_MuteUnmuteState","number",["number","number"])};var ae,ie,oe,se,ue,ce,le,fe=null,_e=null,de=null,he=!1,Ee=null,pe=null,be=null,Ae=null,me=!1,ve=!1,ye=!1,ge=!1,Te=null,Se=!1,Ie=!1,De=!1,Me=!1,Oe=!0;self.isPreviewMode=!1;var Re=!1,we=null,Ne=!1,Ce=null,Le=!1,ke=null,Pe=null,Ue=null,xe=1,Be=1,Fe=1,He=null,We=null;function Ve(){return 1==Bt||F}function Ge(){function e(e){var t=null,n=_.serverHeartbeatMaxTimeoutSeconds,r=null,a=e.onmessage,i=e.onopen,o=e.onclose;e.onmessage=function(n){t=(new Date).getTime(),a.call(e,n)},e.onopen=function(a){t=(new Date).getTime(),function(){if(r)return;r=setInterval((function(){(new Date).getTime()-t>=1e3*n&&(clearInterval(r),r=null,e.socket.close())}),1e3)}(),i.call(e,a,e)},e.onclose=function(t){try{clearInterval(r)}catch(e){Object(f.g)("WebSocket closed",e)}o.call(e,t,e)}}this.socket=null,this.onopen=null,this.onmessage=null,this.onerror=null,this.onclose=null,this.websocketaddress=null,this.startwebsocketreconnecttime=null,this.reconnect=null,this.connectIndex=0,this.activeclosewebsocket=!1,this.init=function(t,n,r,a,i){this.websocketaddress=t,this.onopen=n,this.onmessage=r,this.onerror=a,this.onclose=i,e(this)},this.connect=function(e,t,n,r,a){var i=this;Object(f.e)("SB"),i.init(e,t,n,r,a),i.reconnect=function(){var e=this;if(!i.isReconnectNow&&!i.isTimerExist){i.isReconnectNow=!0,i.isTimerExist=!0;var t=Math.pow(2,i.connectIndex)-1;i.connectIndex++,setTimeout((function(){i.activeclosewebsocket||(i.isTimerExist=!1,i.startwebsocketreconnecttime=null,i.socket=new WebSocket(e.websocketaddress),i.socket.binaryType="arraybuffer",i.socket.onopen=function(e){i.isReconnectNow=!1,Object(f.e)("SE"),i.startwebsocketreconnecttime=(new Date).getTime()/1e3,i.onopen(e)},i.socket.onmessage=function(e){i.onmessage(e)},i.socket.onerror=function(e){Object(f.e)("SERR"),i.socket.close()},i.socket.onclose=function(e){Object(f.e)("SCLOSE"),i.isReconnectNow=!1,i.onclose(e),i.activeclosewebsocket||(i.connectIndex<10?i.reconnect():(postMessage({status:Audio_Dec_WebSocket_FAILED}),console.log("NetWork is Bad, Don't to reconnect the serer!")))})}),1e3*t)}},i.reconnect()},this.send=function(e){1===this.socket.readyState&&this.socket.send(e)},this.close=function(){try{this.activeclosewebsocket=!0,this.socket.close()}catch(e){console.warn("force close",e)}}}function je(e,t,n,r,a){var i={sample_rate:e,rtt:t,jitter:n,avg_loss:r,max_loss:a};postMessage({status:E.a,data:i})}function Ye(e,t,n,r,a,i){if(!isPreviewMode||i){var o=new Ge;return o.connect(e,t,n,r,a),o}}var Ke=null;function qe(e,t){return Ze.apply(this,arguments)}function Ze(){return(Ze=a()(l.a.mark((function e(t,n){return l.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!isPreviewMode||n){e.next=2;break}return e.abrupt("return");case 2:return Ke=new f.b(t),e.next=5,Ke.connect();case 5:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function Xe(){if(Re=!0,jt)for(var e;we&&(e=we.dequeue());)St(e.data,0,e.c,!0);postMessage({status:Audio_Dec_WebSocket_OK})}function ze(){var e=ye||ge;if(fe&&e!=Ie&&jt){var t=e?1:0,n=ye?1:0,r=ge?1:0;Object(f.e)("AQOS-S-"+t+"-"+n+"-"+r),w(fe,e?0:2)}Ie=e}function Qe(e){var t=e.params.url;Te=e,ge=!0,t.includes("mode=2")&&ze(),postMessage({status:_.CONNECT_WEBTRANSPORT_OK})}function Je(e){var t=e.params.url;ge=!1,Te=null,t.includes("mode=2")&&ze(),postMessage({status:_.CONNECT_WEBTRANSPORT_CLOSE})}var $e=new Map,et=[];self.seqMap=$e,self.seqList=et;var tt=function(){function e(){o()(this,e),this.channel=null,this.audioHandle=null}return u()(e,[{key:"open",value:function(e){var t=e.wsUrl;this.channel=Ye(t,this._onOpen.bind(this),this._onMessage.bind(this),this._onError.bind(this),this._onClose.bind(this))}},{key:"createHandle",value:function(e){var t=e.userId,n=e.meetingNumber,r=e.meetingId;this.audioHandle=A(t,n,r,0,0,Oe,!1,jt,1)}},{key:"enableBOPipeOutRtp",value:function(){Ce(this.audioHandle,1)}},{key:"pipeTo",value:function(e){e&&this.audioHandle?Q(this.audioHandle,e):console.warn(new Error("audio handle not ready when pipe audio to bo"))}},{key:"_onOpen",value:function(e){}},{key:"_onError",value:function(e){}},{key:"_onClose",value:function(e){}},{key:"_onMessage",value:function(e){if(e&&e.data){var t=new Uint8Array(e.data);0!==t.length&&(t[0]===_.MEDIA_S2C_KEEPALIVE?this.channel&&1===this.channel.socket.readyState&&this.channel.send(t):t[0]!==_.UPDATE_ENCRYPTION_GCM_MODEL_KEY&&this.decode(t))}}},{key:"close",value:function(){this.channel.close(),this.channel=null}},{key:"setAudioEncryptionKey",value:function(e,t){var n=rn(e);q(this.audioHandle,n,e.length,t),an(n)}},{key:"updateRosterInfo",value:function(e){var t=this,n=e.add;e.remove;n&&n.forEach((function(e){var n=e.sn,r=e.userid,a=rn(n);Z(t.audioHandle,r,a,n.length),an(a)}))}},{key:"decode",value:function(e){this.audioHandle&&e[0]!==_.MEDIA_AUDIO_DATA&&y(this.audioHandle,0,e,e.length)}},{key:"isShareToBoAudio",value:function(e){return 0===e[2]&&0===e[3]&&![_.UPDATE_ENCRYPTION_GCM_MODEL_KEY,_.MEDIA_S2C_KEEPALIVE,_.MEDIA_NTP_UPDATE].includes(e[0])}}]),e}(),nt=new tt;function rt(e,t){nt.isShareToBoAudio(e)?nt.decode(e):Se&&e[0]===_.MEDIA_AUDIO_DATA||(y(fe,0,e,e.length),gt())}function at(e){null!==fe&&rt(e)}var it,ot={updateKey:function(e){e&&(it=e),fe&&it&&rt(it)}};function st(e){var t=new Uint8Array(e.data);if(102==t[0]){if(ne)return;ne=!0,re=new Uint8Array(t)}null!==fe?rt(t):102==t[0]&&ot.updateKey(t)}function ut(e){null!==fe&&rt(new Uint8Array(e))}function ct(e){Re=!1,postMessage({status:_.CONNECT_WEBSOCKET_CLOSE})}function lt(e){}function ft(e,t,n,r){var a=new Uint8Array(2*r),i=Module.HEAP8.subarray(e+0,e+2*r);a.set(i,0,2*r),Jt({data:a,channels:n,sampleHZ:t})}var _t=null,dt=null,ht=function(e,t){this._BYTES_PER_ELEMENT=t,this.capacity=(e.byteLength-8)/t,this.usableCapacity=this.capacity-1,this.buf=e,this.write_ptr=new Uint32Array(this.buf,0,1),this.read_ptr=new Uint32Array(this.buf,4,1),this.storageUint8s=new Uint8Array(this.buf,8,e.byteLength-8),this.cache_buffer=[]};function Et(e,t,n,r,a,i,o,s){if(dt===e&&_t.length==t*o||(_t=Module.HEAPF32.subarray(e/4,e/4+t*o),dt=e),kt.write(_t),!Pe){if(0!=r){var u=new Uint8Array(r),c=Module.HEAP8.subarray(n+0,n+r);u.set(c,0,r),en(u)}if((Vt+=1)>=Gt&&(Vt=0,Ht)){var l=tn(Ht);Mt?Mt.postMessage({status:0,data:l}):postMessage({status:CURRENT_SSRC_TIME,data:l})}}}function pt(e,t,n,r){self.fsHandler&&self.fsHandler.handleFile(e,t,n,r)}function bt(e,t){if(t&&(Vt+=1)>=Gt){Vt=0;var n=new Uint8Array(t),r=Module.HEAP8.subarray(e+0,e+t);if(n.set(r),Mt)Mt.postMessage({status:Pe?1:0,data:n},[n.buffer]);else{for(var a=new Uint32Array(n.buffer),i=0,o=0,s=0;s<n.length/16;s++){var u=a[4*s];512&u?o=At(a.subarray(4*s,4*s+4)):u>>10==Ht>>10&&(i=At(a.subarray(4*s,4*s+4)))}if(!i&&!o)return;postMessage({status:CURRENT_SSRC_TIME,at:i,st:o})}}}function At(e){var t=e[1];return 4294967296*e[2]+t}function mt(e,t,n,r,a,i,o,s){if(P&&Lt)return Et(e,t,n,r,0,0,o);var u,c,l=Module.HEAP8.subarray(e+0,e+4*t*o),f=new Uint8Array(4*t*o);f.set(l,0,4*t*o),c=[(u={status:0,data:new Float32Array(f.buffer),channels:o,sampleHz:i}).data.buffer],Dt&&Dt.postMessage(u,c),Pe||bt(n,r)}function vt(e,t){fn&&fn.writeWasmLog(e,t,!0)}ht.prototype.clear=function(){this.write_ptr&&Atomics.store(this.write_ptr,0,0),this.read_ptr&&Atomics.store(this.read_ptr,0,0),this.cache_buffer=[]},ht.prototype.enqueueMergeData=function(e,t){for(;this.cache_buffer.length>0&&this.available_write()>0;){var n=this.cache_buffer.shift();this.push(n)}if(e&&t){if(this.cache_buffer.length>0){var r=new Uint8Array(e.length+t.length);r.set(e,0,e.length),r.set(t,e.length,t.length),this.cache_buffer.push(r)}else if(this.available_write()>0)this.pushMergeData(e,t);else{var a=new Uint8Array(e.length+t.length);a.set(e,0,e.length),a.set(t,e.length,t.length),this.cache_buffer.push(a)}this.cache_buffer.length>255&&(this.cache_buffer=[])}},ht.prototype.pushMergeData=function(e,t){var n=Atomics.load(this.write_ptr,0);try{this.storageUint8s.set(e,n*this._BYTES_PER_ELEMENT+4,e.byteLength),this.storageUint8s.set(t,n*this._BYTES_PER_ELEMENT+4+e.byteLength,t.byteLength),new Uint32Array(this.buf,n*this._BYTES_PER_ELEMENT+8,1)[0]=e.byteLength+t.byteLength;var r=(n+1)%this.capacity;Atomics.store(this.write_ptr,0,r)}catch(e){throw Object(f.g)("Error in Producer.pushMergeData: ".concat(n," ").concat(this.buf),e),e}},ht.prototype.enqueue=function(e){for(;this.cache_buffer.length>0&&this.available_write()>0;){var t=this.cache_buffer.shift();this.push(t)}if(e){if(this.cache_buffer.length>0){var n=new Uint8Array(e.length);n.set(e,0,e.length),this.cache_buffer.push(n)}else if(this.available_write()>0)this.push(e);else{var r=new Uint8Array(e.length);r.set(e,0,e.length),this.cache_buffer.push(r)}this.cache_buffer.length>255&&(this.cache_buffer=[])}},ht.prototype.push=function(e){var t=Atomics.load(this.write_ptr,0);try{this.storageUint8s.set(e,t*this._BYTES_PER_ELEMENT+4,e.byteLength),new Uint32Array(this.buf,t*this._BYTES_PER_ELEMENT+8,1)[0]=e.byteLength;var n=(t+1)%this.capacity;Atomics.store(this.write_ptr,0,n)}catch(e){throw Object(f.g)("Error in Producer.push: ".concat(t," ").concat(this.buf),e),e}},ht.prototype.available_write=function(){var e=Atomics.load(this.read_ptr,0),t=Atomics.load(this.write_ptr,0);return this._available_write(e,t)},ht.prototype._available_write=function(e,t){return this.usableCapacity-this._available_read(e,t)},ht.prototype._available_read=function(e,t){return(t+this.capacity-e)%this.capacity};var yt=0;function gt(){ge&&1!==yt?(yt=1,postMessage({status:_.CURRENT_MEDIA_DATA_TRANSPORT_TYPE,type:yt})):ye&&!ge&&2!==yt?(yt=2,postMessage({status:_.CURRENT_MEDIA_DATA_TRANSPORT_TYPE,type:yt})):ye||ge||3===yt||(yt=3,postMessage({status:_.CURRENT_MEDIA_DATA_TRANSPORT_TYPE,type:yt}))}function Tt(e,t,n,r){St(e,t,n,!1,r!=fe&&fe)}function St(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]&&arguments[3],a=arguments.length>4&&void 0!==arguments[4]&&arguments[4];if(jt){if(r)s=e;else if(Re)s=Module.HEAP8.subarray(e+0,e+t);else{s=new Uint8Array(t);var i=Module.HEAP8.subarray(e+0,e+t);s.set(i,0,t)}if(a&&(s[2]=128),!Re)return we||(we=new U),void we.enqueue({data:s,c:n});if(n&&(Ve()||!De)&&ge&&Te&&Te.transport_ready)return gt(),void Te.send(s);if(n&&(Ve()||!De)&&ye){if(gt(),De&&self.audioEncodeMain2WorkerRingbuffer)self.audioEncodeMain2WorkerRingbuffer.enqueue(s),self.bAudioEncodeMainThreadConsumerIntervalEnable||postMessage({status:_.WORKER_MAIN_AUDIO_ENCODE_RINGBUFFER_TICK});else{var o=new Uint8Array(t);o.set(s,0,t),self.postMessage({status:_.AUDIO_ENCODED_DATA,data:o},[o.buffer])}return}null===_e||!_e.socket||1!==_e.socket.readyState||(!Ve()||Ie)&&n&&De||(gt(),_e.send(s),s.length<12&&Object(f.g)("Audio encode data length is too short"))}else{var s=i=Module.HEAP8.subarray(e+0,e+t);if((Ve()||!De)&&ge&&Te&&Te.transport_ready)return void Te.send(s);if(null!==_e&&_e.socket&&1===_e.socket.readyState&&Ve()&&Ft>20&&0==he?(he=!0,_e.send(s),s.length<12&&Object(f.g)("Audio encode data length is too short")):null!==de&&de.socket&&1===de.socket.readyState&&Ve()&&Ft>20&&1==he&&(he=!1,de.send(s),s.length<12&&Object(f.g)("Audio encode data length is too short")),Ve()&&ye)if(self.audioEncodeMain2WorkerRingbuffer)self.audioEncodeMain2WorkerRingbuffer.enqueue(s);else{var u=new Uint8Array(t);u.set(s,0,t),self.postMessage({status:_.AUDIO_ENCODED_DATA,data:u},[u.buffer])}}}function It(){}var Dt,Mt,Ot,Rt,wt,Nt,Ct=null,Lt=null,kt=null,Pt=null,Ut=null,xt=null,Bt=-1,Ft=0,Ht=0,Wt=new Map,Vt=0,Gt=50,jt=!1,Yt=0;function Kt(){if(Yt++%3==0&&ee(fe),P&&Lt)return qt();Dt&&g(fe,Ee/100,0,Ee,Be)}function qt(){if(self.audioDecodeMain2WorkerRingbuffer)for(;self.audioDecodeMain2WorkerRingbuffer.available_read()>0;){var e=self.audioDecodeMain2WorkerRingbuffer.dequeue(!1);rt(e.uint8s),self.audioDecodeMain2WorkerRingbuffer.addReadPtr()}if(kt&&kt.isReady())for(;kt.isNeedMoreData();)g(fe,Ee/100,0,Ee,Be)}function Zt(e){if(P&&Lt)return Xt();Ot&&e&&(isPreviewMode||(Module.HEAPF32.subarray(wt/4,wt/4+Ee/100*xe).set(e),v(fe,wt,Ee/100,0,Ee,Be)))}function Xt(e){if(Pt){for(var t=null,n=0;null!==(t=Pt.read())&&n<5;)isPreviewMode||(n++,Module.HEAPF32.subarray(wt/4,wt/4+Ee/100*xe).set(t),v(fe,wt,Ee/100,0,Ee,xe));n>=5&&(Object(f.e)("AETO"),hn())}if(xt&&F)for(var r=null;null!==(r=xt.read());)Module.HEAPF32.subarray(Nt/4,Nt/4+H/100*Fe).set(r),B(fe,Nt,H,Fe,H/100,0);jt||self.bAudioEncodeMainThreadConsumerIntervalEnable||postMessage({status:_.WORKER_MAIN_AUDIO_ENCODE_RINGBUFFER_TICK})}function zt(e,t){var n=new Uint8Array(t),r=Module.HEAP8.subarray(e+0,e+t);n.set(r,0,t),_e&&1===_e.socket.readyState&&_e.send(n),jt||de&&1===de.socket.readyState&&de.send(n)}function Qt(e,t){fn&&fn.writeWasmLog(e,t)}function Jt(e){if(-1!=Bt&&2!=Bt&&Lt&&Ct&&null!=e&&!(e.data.length>960)){var t=new Uint16Array(Lt);if(Ct.lock(),t[2]<30){for(var n=3,r=t[2];r>0;)r--,n+=t[n+1],n+=2;if(e){var a=new Uint16Array(e.data.buffer);t[2]++,t[n]=e.sampleHZ,t[n+1]=a.length,n+=2,t.set(a,n)}}else console.log("too many data in sharebuffer!"),t[2]=0;Ct.unlock()}}function $t(){postMessage({status:AUDIO_CLIPPING})}function en(e){if(e){var t=e.length/16,n=0,r=0;for(n=0;n<t;n++){var a=0;for(r=16*n+0;r<16*n+4;r++)a+=e[r]*Math.pow(256,r-16*n);a>>=10;var i=0;for(r=16*n+4;r<16*n+12;r++)i+=e[r]*Math.pow(256,r-16*n-4);Wt.set(a,i)}}}function tn(e){e>>=10;var t=Wt.get(e);return t?(Wt.set(e,0),t):0}function nn(e,t){ae||(ae=setInterval((function(){fe&&R(fe)}),6e4));var n=new Uint8Array(t),r=Module.HEAP8.subarray(e+0,e+t);n.set(r,0,t),se=n,postMessage({status:_.AES_GCM_IV_CALLBACK_FROM_WASM,data:n},[n.buffer])}function rn(e){if(!e)return 0;var t=Module._malloc(e.length);return Module.HEAPU8.subarray(t,t+e.length).set(e,0,e.length),t}function an(e){e&&Module._free(e)}var on=function(){function e(){o()(this,e),this.interval=1e3,this.monitorLength=1024,this.timer=null}return u()(e,[{key:"setWorkerType",value:function(e){this.isEncode=e}},{key:"open",value:function(){var e=this;this.close(),this.monitorInfoPtr||(this.monitorInfoPtr=Module._malloc(this.monitorLength)),this.timer=setInterval((function(){var t=e.isEncode?G:j;if(t&&fe&&e.monitorInfoPtr&&void 0!==e.isEncode){var n=t(fe,e.monitorInfoPtr,e.monitorLength),r=Module.HEAPU8.subarray(e.monitorInfoPtr,e.monitorInfoPtr+n);if(n>0){var a=String.fromCharCode.apply(null,r);if(a)try{a.split("\n").forEach((function(t){t&&(!e.isEncode&&Ne||Object(f.d)(t))}))}catch(e){}}r.fill(0,0,e.monitorLength)}}),this.interval)}},{key:"close",value:function(){this.timer&&(clearInterval(this.timer),this.timer=null),this.monitorInfoPtr&&(an(this.monitorInfoPtr),this.monitorInfoPtr=null)}}]),e}(),sn=new on,un=function(){fe&&m(fe),fe=null};function cn(e,t,n,r){var a=null,i=null;e&&t&&(a=Module.HEAPU8.subarray(e,e+t)),n&&r&&(i=Module.HEAPU8.subarray(n,n+r)),Ut&&(a&&i?Le||Ut.enqueueMergeData(a,i):i&&Ut.enqueue(i))}var ln,fn=Object(p.a)();function _n(){postMessage({status:E.f})}function dn(e,t){if(!(t<=0)){var n=Module.HEAPU8.subarray(e,e+t),r=String.fromCharCode.apply(null,n);if(r)try{r.split("\n").forEach((function(e){e&&De&&Object(f.e)(e)}))}catch(e){}}}function hn(){fe&&He(fe)}self.addEventListener("message",(function(e){var t=e.data;switch(t.command){case"startMedia":try{if(Object(f.e)("startMedia"+!t.encode),isPreviewMode&&!t.isPreviewMode&&un(),isPreviewMode=!!t.isPreviewMode,isPreviewMode&&postMessage({status:Audio_Encode_Preview_OK}),t.audioEncodeChannelsNum&&(xe=t.audioEncodeChannelsNum),t.audioDecodeChannelsNum&&(Be=t.audioDecodeChannelsNum),null==fe){sn.setWorkerType(!!t.encode),Ee=t.sampleRate,P&&!t.shouldNotChangeSampleRate&&(Ee=48e3);var n,r,a=t.iv;a&&(a=new Uint8Array(a)),a?(se=a,n=a.length):n=0,r=rn(a),le=t.meetingid,ce=t.meetingnumb+"",Me=!0,jt=t.qoson,t.encode||(Object(f.e)("HB"),t.videodecodethreadnumb,t.isSupportMultiThread,fe=A(t.userid,ce,le,r,n,Oe,De,jt,1),fn&&fn.init({workerType:d.b.AUDIO_DECODE}),ot.updateKey(),t.decoderInWorklet&&(Ne=t.decoderInWorklet,Ce(fe,1)),Pe=!!t.multiView,ke(fe,Pe)),an(r),wt=Module._malloc(4*Ee/100*xe),Module.HEAPF32.subarray(wt/4,wt/4+Ee/100*xe),Date.now(),null!=fe||t.encode?(postMessage({status:Audio_Dec_Handle_OK}),t.decode&&(pe=!0),t.encode&&(De=!0,ue=!0,ie=t.userid,be=!0),t.webtransportURL&&!Ke&&qe({url:t.webtransportURL,label:"audio",onmessage:at,onopen:Qe,onclose:Je,groupSize:1}),_e||(_e=Ye(t.websocket_ip_address,Xe,st,lt,ct)),jt||(de=Ye(t.websocket_ip_address,Xe,st,lt,ct))):postMessage({status:Audio_Dec_Handle_FAILED})}else Object(f.e)("AHNN")}catch(e){console.log(e)}break;case"OPEN_MEDIA_WEBSOCKET":_e&&1===_e.socket.readyState&&(_e.close(),_e=null),_e=Ye(t.websocket_ip_address,Xe,st,lt,ct,!0);break;case"CLOSE_MEDIA_WEBSOCKET":_e&&1===_e.socket.readyState&&(_e.close(),_e=null);break;case"OPEN_MEDIA_WEBTRANSPORT":Ke&&(Ke.forceClose(),Ke=null),qe({url:t.webtransportURL,label:"audio",onmessage:at,onopen:Qe,onclose:Je,groupSize:1},!0);break;case"CLOSE_MEDIA_WEBTRANSPORT":Ke&&(Ke.forceClose(),Ke=null);break;case"EncodedAudioFrame":_e&&1===_e.socket.readyState&&_e.send(t.data);break;case"closeMedia":if(_e&&_e.close(),de&&de.close(),be&&Ft>4e3){var i=T(fe);console.log("Store Delay: "+i),i>0&&postMessage({status:AUDIO_DELAY,delay:i})}clearInterval(pe),pe=null,clearInterval(be),be=null,clearInterval(Ae),Ae=null,un(),wt&&Module._free(wt),wt=void 0,null,_e=null,de=null,Module.HEAP8.fill(0),calledRun=void 0,ABORT=!1,dependenciesFulfilled=function e(){calledRun||run(),calledRun||(dependenciesFulfilled=e)},ne=!1,re=null,oe=void 0,self.isPreviewMode=!1,se=void 0,Re=!1,we=null,Ie=!1,ge=!1,ye=!1,Te&&(Te.close(),Te=null),_t=null,dt=null,kt=null,Pt=null,Ut=null,xt=null,Lt=null,Mt&&Mt.close(),Ot&&Ot.close(),Vt=0,Yt=0,Bt=-1,Le=!1,me=!1,Wt.clear(),ve=!1,ae&&(clearInterval(ae),ae=null),Ht=0,yt=0,self.audioEncodeMain2WorkerRingbuffer=void 0,self.bAudioEncodeMainThreadConsumerIntervalEnable=void 0,Ft=0,0,null,9,0,!1,0,0,!1,0,null,0,!1,0,Ct=null,Se=!1,F=!1,sn=new on,nt=new tt;break;case"delay":0;break;case"failover":_e&&(_e.close(),_e=Ye(t.websocket_ip_address,Xe,st,lt,ct)),de&&(de.close(),de=Ye(t.websocket_ip_address,Xe,st,lt,ct));break;case"sharedBuffer":if(P){var o=t.data;(Lt=o)&&(De?(Pt=new k(Lt.inputState,Lt.inputBuffer,Ee/100*xe)).clear():(kt=new k(Lt.outputState,Lt.outputBuffer,Ee/100*Be),Ut=new ht(Lt.rtpBuffer,1200),kt.clear(),Ut.clear()),Ft=21)}break;case"modifySampleRate":if(Ee===t.sampleRate)break;wt&&Module._free(wt),wt=Module._malloc(4*t.sampleRate/100*xe),Module.HEAPF32.subarray(wt/4,wt/4+t.sampleRate/100*xe),Ee=t.sampleRate,Lt&&(De?(Pt=new k(Lt.inputState,Lt.inputBuffer,Ee/100*xe)).clear():(kt=new k(Lt.outputState,Lt.outputBuffer,Ee/100*Be)).clear());break;case"mute":t.sharing||(Bt=t.bOn,We(fe,Bt)),1!=Bt&&!t.sharing||me?2==Bt?(Dt&&!t.fakeLeave&&(Dt.close(),Dt=null),pe&&(kt&&kt.clear(),Ut&&Ut.clear(),clearInterval(pe)),be&&(Pt&&Pt.clear(),clearInterval(ae),ae=null),Ae&&(clearInterval(Ae),Ae=null),F||($&&(clearInterval($),$=0),me=!1,be&&clearInterval(be),sn.close())):0===Bt&&Pt&&Pt.clear():(me=!0,pe&&(kt&&(kt.clear(),kt.setWriteReady()),Ut&&Ut.clear()),be&&(fe&&!ue&&R(fe),ue=!1,Pt&&Pt.clear()),isPreviewMode||sn.open());break;case"audio_denoise_switch":fe&&te(fe,t.switch?1:0,3,t.isHeadSet?1:0);break;case"resetAec":fe&&S(fe),Ft=0,P&&Lt&&(Ft=21);break;case"SetAECDelay":!0,t.delay;break;case"decodeAudioPort":P||clearInterval(pe),Dt&&Dt.close(),(Dt=e.ports[0]).onmessage=function(e){var t=e.data,n=t.status,r=t.cacheSize,a=t.isSAB;switch(n){case"delay":0;break;case _.EVENT_NEEDMORE_DATA:Kt();break;case _.EVENT_CACHE_SIZE:Object(f.e)("".concat(a?"ACSS":"ACS").concat(r||""));break;case"workletMessage":console[e.data.data.level](e.data.data.message,e.data.data.data)}};break;case"encodeAudioPort":P||clearInterval(be),Ot&&Ot.close(),(Ot=e.ports[0]).onmessage=function(e){if(fe||isPreviewMode)switch(e.data.command){case _.EVENT_CAPTURE_DATA:fe&&Zt(e.data.buffer)}};break;case"shareAudioDecodeAudioPort2":P||clearInterval(be),Rt&&Rt.close(),(Rt=e.ports[0]).onmessage=function(e){if(fe||isPreviewMode)switch(e.data.command){case _.EVENT_CAPTURE_DATA:fe&&Zt(e.data.buffer)}};break;case"updateCurrentSSRC":Ht=t.SSRC;break;case"ENCRYPT":ve=t.encrypt,fe&&I(fe,ve?1:0);break;case"SOCKET_RECONNECT":self.IS_DISABLE_SOCKET_RECONNECT=!0===t.disable;break;case"UPDATE_DATACHANNEL_STATUS":ye=t.data.isDataChannelOpen,ze();break;case"PUSH_MESSAGE_FROM_MAIN_TO_WORKER":1==t.data?Kt():ut(t.data);break;case d.a.SET_USER_NODE_LIST:var s=t.data.userNodeList;s&&s.forEach((function(e){var t=parseInt(e.userid);if(e.bremove)fe&&M(fe,t);else{var n=e.sn;if(16==n.length||32==n.length){var r=rn(n);if(fe){var a=!1;De&&ie!=t||(a=!0),a&&D(fe,t,r,n.length)}De&&ie==t&&(oe=n),an(r)}}}));break;case"decodeAudioPort2":Mt&&Mt.close(),Mt=e.ports[0];break;case"startAudioEncode":if(Me&&t.ssid&&!isPreviewMode){Object(f.e)("HB"),Me=!1;var u,c,l=se;if(u=l?l.length:0,c=rn(l),fe=A(t.ssid,ce,le,c,u,Oe,De,jt,1),fn&&fn.init({workerType:d.b.AUDIO_ENCODE}),fe&&Ue&&t.audioMode&&Ue(fe,t.audioMode),fe&&jt&&w(fe,ye||ge?0:2),an(c),re&&y(fe,0,re,re.length),oe){var E=rn(oe);D(fe,ie,E,oe.length),an(E)}}if(!fe)return Object(f.e)("startAudioEncode: "+Me+", "+t.ssid+","+!isPreviewMode),void postMessage({status:Audio_Enc_Handle_FAILED});$||($=setInterval((function(){J(fe)}),10)),De&&(Ae&&clearInterval(Ae),Ae=setInterval(hn,500)),t.isSharing?(F=!0,Fe=t.sharingEncodeChannelsNum,H=t.samplerate,Nt=Module._malloc(4*H/100*Fe),Module.HEAPF32.subarray(Nt/4,Nt/4+H/100*Fe),Lt&&(xt=new k(Lt.sharingInputState,Lt.sharingInputBuffer,H/100*Fe)).clear(),x(fe,F,2==Fe)):Pt&&Pt.clear();break;case"AecFlag":Oe=t.flag,fe&&O(fe,Oe);break;case"audioDecodeSAB":var p=t.data.buffer,b=t.data.bytesPerEle;self.audioDecodeMain2WorkerRingbuffer=new h.b(p,b);break;case"audioEncodeSAB":var m=t.data.buffer,v=t.data.bytesPerEle;self.bAudioEncodeMainThreadConsumerIntervalEnable=t.data.bAudioEncodeMainThreadConsumerIntervalEnable,self.audioEncodeMain2WorkerRingbuffer=new h.b(m,v);break;case"PAUSE_OR_RESUME_AUDIO_DECODE":var g=t.data.bPause;Se=g;break;case"cc_set_lang":Module.HEAPU32.subarray(K/4,K/4+1)[0]=t.lang,Y(fe,K);break;case"interpretation_enable":Module.HEAPU32.subarray(L/4,L/4+10)[0]=t.enable?1:0,N(fe,_.INTERPRETATION_ENABLE,L,1);break;case"interpretation_set_lang":Module.HEAPU32.subarray(L/4,L/4+10)[0]=t.lang,N(fe,_.INTERPRETATION_SET_LANG,L,1);break;case"interpretation_mute_origin":Module.HEAPU32.subarray(L/4,L/4+10)[0]=t.mute?1:0,N(fe,_.INTERPRETATION_MUTE,L,1);break;case"interpretation_set_interpreter":var U=Module.HEAPU32.subarray(L/4,L/4+10),B=L;t.interpreterList.length>=10&&(Object(f.g)("Interpreter list is larger than ".concat(9)),B=Module._malloc(4*t.interpreterList.length),U=Module.HEAPU32.subarray(B/4,B/4+t.interpreterList.length));for(var G=0;G<t.interpreterList.length;G++)U[G]=t.interpreterList[G];N(fe,_.INTERPRETATION_SET_INTERPRETER,B,t.interpreterList.length),t.interpreterList.length>=10&&Module._free(B);break;case"changeAudioShare":if(!fe)return;F=t.isStart,x(fe,F,!1),F||2!=Bt||($&&(clearInterval($),$=0),me=!1,be&&clearInterval(be),xt&&xt.clear(),sn.close());break;case _.QOS_MONITORING:ln&&clearInterval(ln),t.data.enable&&(ln=setInterval((function(){C(fe)}),t.data.pollingInterval||_.QOS_DEFAULT_POLLING_INTERVAL));break;case"setShareVolumeLevel":if(!fe)return;W(t.isFromMainSession?nt.audioHandle:fe,t.userid,t.shareVolume);break;case"setSpeechVolumeLevel":if(!fe)return;V(fe,t.userid,t.volume);break;case"BUILD_MA_CHANNEL_IN_BO":nt.open({wsUrl:t.data});break;case"UPDATE_MEDIA_PARAMS":var j=t.data;if(j.isFromMainSession){var q=j.updateParams,Z=q.encryptKey,Q=q.encryptType,ee=q.userId,he=q.meetingNumber,He=q.confId;nt.createHandle({userId:ee,meetingNumber:he+"",meetingId:He}),nt.pipeTo(fe),nt.setAudioEncryptionKey(Z,Q),Ne&&nt.enableBOPipeOutRtp()}break;case"USER_NODE_LIST_IN_MAIN_SESSION":var Ve=t.data;Ve.isFromMainSession&&nt.updateRosterInfo(Ve.body);break;case"ENABLE_SHARE_TO_BO":if(!fe)return;X(fe,t.data);break;case"ENABLE_BROADCAST_TO_BO":if(!fe)return;z(fe,t.data);break;case"stop_audio_incoming":Ut&&Ut.clear(),Le=t.stopPlayAudio;break;case"audioMode":fe&&t.mode&&Ue(fe,t.mode);break;case"RIWM":createWasm(),_free=Module._free=function(){return(_free=Module._free=Module.asm.free).apply(null,arguments)},___wasm_call_ctors=Module.___wasm_call_ctors=function(){return(___wasm_call_ctors=Module.___wasm_call_ctors=Module.asm.__wasm_call_ctors).apply(null,arguments)},stackSave=Module.stackSave=function(){return(stackSave=Module.stackSave=Module.asm.stackSave).apply(null,arguments)},stackRestore=Module.stackRestore=function(){return(stackRestore=Module.stackRestore=Module.asm.stackRestore).apply(null,arguments)},stackAlloc=Module.stackAlloc=function(){return(stackAlloc=Module.stackAlloc=Module.asm.stackAlloc).apply(null,arguments)},Module.zoomf={},run()}}))},,,,,,,function(e,t,n){"use strict";n.r(t);var r=n(41);self.databaseDataType="audio",Object.keys(r).forEach((function(e){return self[e]=r[e]}))}]);
|
|
2
|
+
//# sourceMappingURL=https://d1cdksi819e9z7.cloudfront.net/sourcemap/js_audio_process.min.js-b62ec8368cb3f6411f31.map
|
|
3
|
+
self.__wasmCodeDataEndFlag = 1;
|
|
4
|
+
var Module=typeof Module!=="undefined"?Module:{};
|
|
5
|
+
Module["onRuntimeInitialized"] = function(){
|
|
6
|
+
|
|
7
|
+
self.onWasmModuleReady();
|
|
8
|
+
|
|
9
|
+
}
|
|
10
|
+
var Module=typeof Module!="undefined"?Module:{};var moduleOverrides=Object.assign({},Module);var arguments_=[];var thisProgram="./this.program";var quit_=(status,toThrow)=>{throw toThrow};var ENVIRONMENT_IS_WEB=typeof window=="object";var ENVIRONMENT_IS_WORKER=typeof importScripts=="function";var ENVIRONMENT_IS_NODE=typeof process=="object"&&typeof process.versions=="object"&&typeof process.versions.node=="string";var scriptDirectory="";function locateFile(path){if(Module["locateFile"]){return Module["locateFile"](path,scriptDirectory)}return scriptDirectory+path}var read_,readAsync,readBinary,setWindowTitle;if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){if(ENVIRONMENT_IS_WORKER){scriptDirectory=self.location.href}else if(typeof document!="undefined"&&document.currentScript){scriptDirectory=document.currentScript.src}if(scriptDirectory.indexOf("blob:")!==0){scriptDirectory=scriptDirectory.substr(0,scriptDirectory.replace(/[?#].*/,"").lastIndexOf("/")+1)}else{scriptDirectory=""}{read_=url=>{var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.send(null);return xhr.responseText};if(ENVIRONMENT_IS_WORKER){readBinary=url=>{var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.responseType="arraybuffer";xhr.send(null);return new Uint8Array(xhr.response)}}readAsync=(url,onload,onerror)=>{var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=()=>{if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response);return}onerror()};xhr.onerror=onerror;xhr.send(null)}}setWindowTitle=title=>document.title=title}else{}var out=Module["print"]||console.log.bind(console);var err=Module["printErr"]||console.warn.bind(console);Object.assign(Module,moduleOverrides);moduleOverrides=null;if(Module["arguments"])arguments_=Module["arguments"];if(Module["thisProgram"])thisProgram=Module["thisProgram"];if(Module["quit"])quit_=Module["quit"];var POINTER_SIZE=4;var wasmBinary;if(Module["wasmBinary"])wasmBinary=Module["wasmBinary"];var noExitRuntime=Module["noExitRuntime"]||true;if(typeof WebAssembly!="object"){abort("no native wasm support detected")}var wasmMemory;var ABORT=false;var EXITSTATUS;function assert(condition,text){if(!condition){abort(text)}}var UTF8Decoder=typeof TextDecoder!="undefined"?new TextDecoder("utf8"):undefined;function UTF8ArrayToString(heapOrArray,idx,maxBytesToRead){var endIdx=idx+maxBytesToRead;var endPtr=idx;while(heapOrArray[endPtr]&&!(endPtr>=endIdx))++endPtr;if(endPtr-idx>16&&heapOrArray.buffer&&UTF8Decoder){return UTF8Decoder.decode(heapOrArray.subarray(idx,endPtr))}var str="";while(idx<endPtr){var u0=heapOrArray[idx++];if(!(u0&128)){str+=String.fromCharCode(u0);continue}var u1=heapOrArray[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}var u2=heapOrArray[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u0=(u0&7)<<18|u1<<12|u2<<6|heapOrArray[idx++]&63}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}return str}function UTF8ToString(ptr,maxBytesToRead){return ptr?UTF8ArrayToString(HEAPU8,ptr,maxBytesToRead):""}function stringToUTF8Array(str,heap,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i<str.length;++i){var u=str.charCodeAt(i);if(u>=55296&&u<=57343){var u1=str.charCodeAt(++i);u=65536+((u&1023)<<10)|u1&1023}if(u<=127){if(outIdx>=endIdx)break;heap[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;heap[outIdx++]=192|u>>6;heap[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;heap[outIdx++]=224|u>>12;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}else{if(outIdx+3>=endIdx)break;heap[outIdx++]=240|u>>18;heap[outIdx++]=128|u>>12&63;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}}heap[outIdx]=0;return outIdx-startIdx}function stringToUTF8(str,outPtr,maxBytesToWrite){return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}function lengthBytesUTF8(str){var len=0;for(var i=0;i<str.length;++i){var c=str.charCodeAt(i);if(c<=127){len++}else if(c<=2047){len+=2}else if(c>=55296&&c<=57343){len+=4;++i}else{len+=3}}return len}var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferAndViews(buf){buffer=buf;Module["HEAP8"]=HEAP8=new Int8Array(buf);Module["HEAP16"]=HEAP16=new Int16Array(buf);Module["HEAP32"]=HEAP32=new Int32Array(buf);Module["HEAPU8"]=HEAPU8=new Uint8Array(buf);Module["HEAPU16"]=HEAPU16=new Uint16Array(buf);Module["HEAPU32"]=HEAPU32=new Uint32Array(buf);Module["HEAPF32"]=HEAPF32=new Float32Array(buf);Module["HEAPF64"]=HEAPF64=new Float64Array(buf)}var INITIAL_MEMORY=Module["INITIAL_MEMORY"]||20971520;if(Module["wasmMemory"]){wasmMemory=Module["wasmMemory"]}else{wasmMemory=new WebAssembly.Memory({"initial":INITIAL_MEMORY/65536,"maximum":134217728/65536})}if(wasmMemory){buffer=wasmMemory.buffer}INITIAL_MEMORY=buffer.byteLength;updateGlobalBufferAndViews(buffer);var wasmTable;var __ATPRERUN__=[];var __ATINIT__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function initRuntime(){runtimeInitialized=true;if(!Module["noFSInit"]&&!FS.init.initialized)FS.init();FS.ignorePermissions=false;TTY.init();SOCKFS.root=FS.mount(SOCKFS,{},null);PIPEFS.root=FS.mount(PIPEFS,{},null);callRuntimeCallbacks(__ATINIT__)}function postRun(){if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}function addOnInit(cb){__ATINIT__.unshift(cb)}function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;function getUniqueRunDependency(id){return id}function addRunDependency(id){runDependencies++;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}}function removeRunDependency(id){runDependencies--;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(runDependencies==0){if(runDependencyWatcher!==null){clearInterval(runDependencyWatcher);runDependencyWatcher=null}if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}}function abort(what){if(Module["onAbort"]){Module["onAbort"](what)}what="Aborted("+what+")";err(what);ABORT=true;EXITSTATUS=1;what+=". Build with -sASSERTIONS for more info.";var e=new WebAssembly.RuntimeError(what);throw e}var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return filename.startsWith(dataURIPrefix)}function isFileURI(filename){return filename.startsWith("file://")}var wasmBinaryFile;wasmBinaryFile="audio.encode.wasm";if(!isDataURI(wasmBinaryFile)){wasmBinaryFile=locateFile(wasmBinaryFile)}function getBinary(file){try{if(file==wasmBinaryFile&&wasmBinary){return new Uint8Array(wasmBinary)}if(readBinary){return readBinary(file)}throw"both async and sync fetching of the wasm failed"}catch(err){abort(err)}}function getBinaryPromise(){if(!wasmBinary&&(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER)){if(typeof fetch=="function"&&!isFileURI(wasmBinaryFile)){return fetch(wasmBinaryFile,{credentials:"same-origin"}).then(function(response){if(!response["ok"]){throw"failed to load wasm binary file at '"+wasmBinaryFile+"'"}return response["arrayBuffer"]()}).catch(function(){return getBinary(wasmBinaryFile)})}else{if(readAsync){return new Promise(function(resolve,reject){readAsync(wasmBinaryFile,function(response){resolve(new Uint8Array(response))},reject)})}}}return Promise.resolve().then(function(){return getBinary(wasmBinaryFile)})}function createWasm(){var info={"env":asmLibraryArg,"wasi_snapshot_preview1":asmLibraryArg};function receiveInstance(instance,module){var exports=instance.exports;Module["asm"]=exports;wasmTable=Module["asm"]["__indirect_function_table"];addOnInit(Module["asm"]["__wasm_call_ctors"]);removeRunDependency("wasm-instantiate")}addRunDependency("wasm-instantiate");function receiveInstantiationResult(result){receiveInstance(result["instance"])}function instantiateArrayBuffer(receiver){return instantiateCachedURL(821,wasmUrl,info);return {};getBinaryPromise().then(function(binary){return WebAssembly.instantiate(binary,info)}).then(function(instance){return instance}).then(receiver,function(reason){err("failed to asynchronously prepare wasm: "+reason);abort(reason)})}function instantiateAsync(){if(!wasmBinary&&typeof WebAssembly.instantiateStreaming=="function"&&!isDataURI(wasmBinaryFile)&&!isFileURI(wasmBinaryFile)&&typeof fetch=="function"){return fetch(wasmBinaryFile,{credentials:"same-origin"}).then(function(response){var result=WebAssembly.instantiateStreaming(response,info);return result.then(receiveInstantiationResult,function(reason){err("wasm streaming compile failed: "+reason);err("falling back to ArrayBuffer instantiation");return instantiateArrayBuffer(receiveInstantiationResult)})})}else{return instantiateArrayBuffer(receiveInstantiationResult)}}if(Module["instantiateWasm"]){try{var exports=Module["instantiateWasm"](info,receiveInstance);return exports}catch(e){err("Module.instantiateWasm callback failed with error: "+e);return false}}instantiateAsync();return{}}var tempDouble;var tempI64;var ASM_CONSTS={1096268:($0,$1)=>{send_data($0,$1)},1096291:($0,$1)=>{SAVE_IV($0,$1)},1096309:($0,$1,$2,$3)=>{audio_encode_frame_callback($0,$1,$2,$3)},1096358:($0,$1,$2)=>{Get_ExternalRecord($0,$1,$2)},1096394:()=>{on_mute_speech_warning_WASM()},1096429:($0,$1)=>{on_monitor_log_WASM($0,$1)},1096458:()=>{return Date.now()},1096481:($0,$1,$2,$3)=>{pump_rtp_data($0,$1,$2,$3)},1096516:($0,$1,$2,$3)=>{pump_rtp_data($0,$1,$2,$3)},1096551:($0,$1,$2,$3,$4,$5)=>{responseAudioQosData($0,$1,$2,$3,$4,$5)},1096600:($0,$1,$2,$3,$4)=>{sampleRateLog($0,$1,$2,$3,$4)},1096637:($0,$1,$2,$3,$4)=>{sampleRateLog($0,$1,$2,$3,$4)},1096674:($0,$1)=>{update_play_time($0,$1)},1096704:($0,$1,$2,$3,$4,$5,$6,$7)=>{frame_callback($0,$1,$2,$3,$4,$5,$6,$7)},1096756:($0,$1,$2,$3,$4,$5,$6,$7)=>{frame_callback($0,$1,$2,$3,$4,$5,$6,$7)},1096808:($0,$1)=>{get_edition($0,$1)},1096833:($0,$1)=>{SAVE_IV($0,$1)},1096851:($0,$1,$2,$3)=>{LOG_OUT_WEBRTC($0,$1,$2,$3)},1096887:($0,$1,$2,$3)=>{LOG_OUT_WEBRTC($0,$1,$2,$3)},1096923:($0,$1,$2,$3)=>{LOG_OUT_WEBRTC($0,$1,$2,$3)},1096959:($0,$1,$2,$3)=>{LOG_OUT_WEBRTC($0,$1,$2,$3)},1096995:($0,$1)=>{LOG_OUT($0,$1)},1097016:($0,$1)=>{wcl_trace_log($0,$1)}};function callRuntimeCallbacks(callbacks){while(callbacks.length>0){callbacks.shift()(Module)}}function withStackSave(f){var stack=stackSave();var ret=f();stackRestore(stack);return ret}function demangle(func){demangle.recursionGuard=(demangle.recursionGuard|0)+1;if(demangle.recursionGuard>1)return func;return withStackSave(function(){try{var s=func;if(s.startsWith("__Z"))s=s.substr(1);var len=lengthBytesUTF8(s)+1;var buf=stackAlloc(len);stringToUTF8(s,buf,len);var status=stackAlloc(4);var ret=___cxa_demangle(buf,0,0,status);if(HEAP32[status>>2]===0&&ret){return UTF8ToString(ret)}}catch(e){}finally{_free(ret);if(demangle.recursionGuard<2)--demangle.recursionGuard}return func})}function jsStackTrace(){var error=new Error;if(!error.stack){try{throw new Error}catch(e){error=e}if(!error.stack){return"(no stack trace available)"}}return error.stack.toString()}function demangleAll(text){var regex=/\b_Z[\w\d_]+/g;return text.replace(regex,function(x){var y=demangle(x);return x===y?x:y+" ["+x+"]"})}function ___assert_fail(condition,filename,line,func){abort("Assertion failed: "+UTF8ToString(condition)+", at: "+[filename?UTF8ToString(filename):"unknown filename",line,func?UTF8ToString(func):"unknown function"])}function ___cxa_allocate_exception(size){return _malloc(size+24)+24}function ExceptionInfo(excPtr){this.excPtr=excPtr;this.ptr=excPtr-24;this.set_type=function(type){HEAPU32[this.ptr+4>>2]=type};this.get_type=function(){return HEAPU32[this.ptr+4>>2]};this.set_destructor=function(destructor){HEAPU32[this.ptr+8>>2]=destructor};this.get_destructor=function(){return HEAPU32[this.ptr+8>>2]};this.set_refcount=function(refcount){HEAP32[this.ptr>>2]=refcount};this.set_caught=function(caught){caught=caught?1:0;HEAP8[this.ptr+12>>0]=caught};this.get_caught=function(){return HEAP8[this.ptr+12>>0]!=0};this.set_rethrown=function(rethrown){rethrown=rethrown?1:0;HEAP8[this.ptr+13>>0]=rethrown};this.get_rethrown=function(){return HEAP8[this.ptr+13>>0]!=0};this.init=function(type,destructor){this.set_adjusted_ptr(0);this.set_type(type);this.set_destructor(destructor);this.set_refcount(0);this.set_caught(false);this.set_rethrown(false)};this.add_ref=function(){var value=HEAP32[this.ptr>>2];HEAP32[this.ptr>>2]=value+1};this.release_ref=function(){var prev=HEAP32[this.ptr>>2];HEAP32[this.ptr>>2]=prev-1;return prev===1};this.set_adjusted_ptr=function(adjustedPtr){HEAPU32[this.ptr+16>>2]=adjustedPtr};this.get_adjusted_ptr=function(){return HEAPU32[this.ptr+16>>2]};this.get_exception_ptr=function(){var isPointer=___cxa_is_pointer_type(this.get_type());if(isPointer){return HEAPU32[this.excPtr>>2]}var adjusted=this.get_adjusted_ptr();if(adjusted!==0)return adjusted;return this.excPtr}}var exceptionLast=0;var uncaughtExceptionCount=0;function ___cxa_throw(ptr,type,destructor){var info=new ExceptionInfo(ptr);info.init(type,destructor);exceptionLast=ptr;uncaughtExceptionCount++;throw ptr}var PATH={isAbs:path=>path.charAt(0)==="/",splitPath:filename=>{var splitPathRe=/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/;return splitPathRe.exec(filename).slice(1)},normalizeArray:(parts,allowAboveRoot)=>{var up=0;for(var i=parts.length-1;i>=0;i--){var last=parts[i];if(last==="."){parts.splice(i,1)}else if(last===".."){parts.splice(i,1);up++}else if(up){parts.splice(i,1);up--}}if(allowAboveRoot){for(;up;up--){parts.unshift("..")}}return parts},normalize:path=>{var isAbsolute=PATH.isAbs(path),trailingSlash=path.substr(-1)==="/";path=PATH.normalizeArray(path.split("/").filter(p=>!!p),!isAbsolute).join("/");if(!path&&!isAbsolute){path="."}if(path&&trailingSlash){path+="/"}return(isAbsolute?"/":"")+path},dirname:path=>{var result=PATH.splitPath(path),root=result[0],dir=result[1];if(!root&&!dir){return"."}if(dir){dir=dir.substr(0,dir.length-1)}return root+dir},basename:path=>{if(path==="/")return"/";path=PATH.normalize(path);path=path.replace(/\/$/,"");var lastSlash=path.lastIndexOf("/");if(lastSlash===-1)return path;return path.substr(lastSlash+1)},join:function(){var paths=Array.prototype.slice.call(arguments);return PATH.normalize(paths.join("/"))},join2:(l,r)=>{return PATH.normalize(l+"/"+r)}};function getRandomDevice(){if(typeof crypto=="object"&&typeof crypto["getRandomValues"]=="function"){var randomBuffer=new Uint8Array(1);return()=>{crypto.getRandomValues(randomBuffer);return randomBuffer[0]}}else return()=>abort("randomDevice")}var PATH_FS={resolve:function(){var resolvedPath="",resolvedAbsolute=false;for(var i=arguments.length-1;i>=-1&&!resolvedAbsolute;i--){var path=i>=0?arguments[i]:FS.cwd();if(typeof path!="string"){throw new TypeError("Arguments to path.resolve must be strings")}else if(!path){return""}resolvedPath=path+"/"+resolvedPath;resolvedAbsolute=PATH.isAbs(path)}resolvedPath=PATH.normalizeArray(resolvedPath.split("/").filter(p=>!!p),!resolvedAbsolute).join("/");return(resolvedAbsolute?"/":"")+resolvedPath||"."},relative:(from,to)=>{from=PATH_FS.resolve(from).substr(1);to=PATH_FS.resolve(to).substr(1);function trim(arr){var start=0;for(;start<arr.length;start++){if(arr[start]!=="")break}var end=arr.length-1;for(;end>=0;end--){if(arr[end]!=="")break}if(start>end)return[];return arr.slice(start,end-start+1)}var fromParts=trim(from.split("/"));var toParts=trim(to.split("/"));var length=Math.min(fromParts.length,toParts.length);var samePartsLength=length;for(var i=0;i<length;i++){if(fromParts[i]!==toParts[i]){samePartsLength=i;break}}var outputParts=[];for(var i=samePartsLength;i<fromParts.length;i++){outputParts.push("..")}outputParts=outputParts.concat(toParts.slice(samePartsLength));return outputParts.join("/")}};function intArrayFromString(stringy,dontAddNull,length){var len=length>0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array(len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array}var TTY={ttys:[],init:function(){},shutdown:function(){},register:function(dev,ops){TTY.ttys[dev]={input:[],output:[],ops:ops};FS.registerDevice(dev,TTY.stream_ops)},stream_ops:{open:function(stream){var tty=TTY.ttys[stream.node.rdev];if(!tty){throw new FS.ErrnoError(43)}stream.tty=tty;stream.seekable=false},close:function(stream){stream.tty.ops.fsync(stream.tty)},fsync:function(stream){stream.tty.ops.fsync(stream.tty)},read:function(stream,buffer,offset,length,pos){if(!stream.tty||!stream.tty.ops.get_char){throw new FS.ErrnoError(60)}var bytesRead=0;for(var i=0;i<length;i++){var result;try{result=stream.tty.ops.get_char(stream.tty)}catch(e){throw new FS.ErrnoError(29)}if(result===undefined&&bytesRead===0){throw new FS.ErrnoError(6)}if(result===null||result===undefined)break;bytesRead++;buffer[offset+i]=result}if(bytesRead){stream.node.timestamp=Date.now()}return bytesRead},write:function(stream,buffer,offset,length,pos){if(!stream.tty||!stream.tty.ops.put_char){throw new FS.ErrnoError(60)}try{for(var i=0;i<length;i++){stream.tty.ops.put_char(stream.tty,buffer[offset+i])}}catch(e){throw new FS.ErrnoError(29)}if(length){stream.node.timestamp=Date.now()}return i}},default_tty_ops:{get_char:function(tty){if(!tty.input.length){var result=null;if(typeof window!="undefined"&&typeof window.prompt=="function"){result=window.prompt("Input: ");if(result!==null){result+="\n"}}else if(typeof readline=="function"){result=readline();if(result!==null){result+="\n"}}if(!result){return null}tty.input=intArrayFromString(result,true)}return tty.input.shift()},put_char:function(tty,val){if(val===null||val===10){out(UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}},fsync:function(tty){if(tty.output&&tty.output.length>0){out(UTF8ArrayToString(tty.output,0));tty.output=[]}}},default_tty1_ops:{put_char:function(tty,val){if(val===null||val===10){err(UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}},fsync:function(tty){if(tty.output&&tty.output.length>0){err(UTF8ArrayToString(tty.output,0));tty.output=[]}}}};function mmapAlloc(size){abort()}var MEMFS={ops_table:null,mount:function(mount){return MEMFS.createNode(null,"/",16384|511,0)},createNode:function(parent,name,mode,dev){if(FS.isBlkdev(mode)||FS.isFIFO(mode)){throw new FS.ErrnoError(63)}if(!MEMFS.ops_table){MEMFS.ops_table={dir:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,lookup:MEMFS.node_ops.lookup,mknod:MEMFS.node_ops.mknod,rename:MEMFS.node_ops.rename,unlink:MEMFS.node_ops.unlink,rmdir:MEMFS.node_ops.rmdir,readdir:MEMFS.node_ops.readdir,symlink:MEMFS.node_ops.symlink},stream:{llseek:MEMFS.stream_ops.llseek}},file:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:{llseek:MEMFS.stream_ops.llseek,read:MEMFS.stream_ops.read,write:MEMFS.stream_ops.write,allocate:MEMFS.stream_ops.allocate,mmap:MEMFS.stream_ops.mmap,msync:MEMFS.stream_ops.msync}},link:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,readlink:MEMFS.node_ops.readlink},stream:{}},chrdev:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:FS.chrdev_stream_ops}}}var node=FS.createNode(parent,name,mode,dev);if(FS.isDir(node.mode)){node.node_ops=MEMFS.ops_table.dir.node;node.stream_ops=MEMFS.ops_table.dir.stream;node.contents={}}else if(FS.isFile(node.mode)){node.node_ops=MEMFS.ops_table.file.node;node.stream_ops=MEMFS.ops_table.file.stream;node.usedBytes=0;node.contents=null}else if(FS.isLink(node.mode)){node.node_ops=MEMFS.ops_table.link.node;node.stream_ops=MEMFS.ops_table.link.stream}else if(FS.isChrdev(node.mode)){node.node_ops=MEMFS.ops_table.chrdev.node;node.stream_ops=MEMFS.ops_table.chrdev.stream}node.timestamp=Date.now();if(parent){parent.contents[name]=node;parent.timestamp=node.timestamp}return node},getFileDataAsTypedArray:function(node){if(!node.contents)return new Uint8Array(0);if(node.contents.subarray)return node.contents.subarray(0,node.usedBytes);return new Uint8Array(node.contents)},expandFileStorage:function(node,newCapacity){var prevCapacity=node.contents?node.contents.length:0;if(prevCapacity>=newCapacity)return;var CAPACITY_DOUBLING_MAX=1024*1024;newCapacity=Math.max(newCapacity,prevCapacity*(prevCapacity<CAPACITY_DOUBLING_MAX?2:1.125)>>>0);if(prevCapacity!=0)newCapacity=Math.max(newCapacity,256);var oldContents=node.contents;node.contents=new Uint8Array(newCapacity);if(node.usedBytes>0)node.contents.set(oldContents.subarray(0,node.usedBytes),0)},resizeFileStorage:function(node,newSize){if(node.usedBytes==newSize)return;if(newSize==0){node.contents=null;node.usedBytes=0}else{var oldContents=node.contents;node.contents=new Uint8Array(newSize);if(oldContents){node.contents.set(oldContents.subarray(0,Math.min(newSize,node.usedBytes)))}node.usedBytes=newSize}},node_ops:{getattr:function(node){var attr={};attr.dev=FS.isChrdev(node.mode)?node.id:1;attr.ino=node.id;attr.mode=node.mode;attr.nlink=1;attr.uid=0;attr.gid=0;attr.rdev=node.rdev;if(FS.isDir(node.mode)){attr.size=4096}else if(FS.isFile(node.mode)){attr.size=node.usedBytes}else if(FS.isLink(node.mode)){attr.size=node.link.length}else{attr.size=0}attr.atime=new Date(node.timestamp);attr.mtime=new Date(node.timestamp);attr.ctime=new Date(node.timestamp);attr.blksize=4096;attr.blocks=Math.ceil(attr.size/attr.blksize);return attr},setattr:function(node,attr){if(attr.mode!==undefined){node.mode=attr.mode}if(attr.timestamp!==undefined){node.timestamp=attr.timestamp}if(attr.size!==undefined){MEMFS.resizeFileStorage(node,attr.size)}},lookup:function(parent,name){throw FS.genericErrors[44]},mknod:function(parent,name,mode,dev){return MEMFS.createNode(parent,name,mode,dev)},rename:function(old_node,new_dir,new_name){if(FS.isDir(old_node.mode)){var new_node;try{new_node=FS.lookupNode(new_dir,new_name)}catch(e){}if(new_node){for(var i in new_node.contents){throw new FS.ErrnoError(55)}}}delete old_node.parent.contents[old_node.name];old_node.parent.timestamp=Date.now();old_node.name=new_name;new_dir.contents[new_name]=old_node;new_dir.timestamp=old_node.parent.timestamp;old_node.parent=new_dir},unlink:function(parent,name){delete parent.contents[name];parent.timestamp=Date.now()},rmdir:function(parent,name){var node=FS.lookupNode(parent,name);for(var i in node.contents){throw new FS.ErrnoError(55)}delete parent.contents[name];parent.timestamp=Date.now()},readdir:function(node){var entries=[".",".."];for(var key in node.contents){if(!node.contents.hasOwnProperty(key)){continue}entries.push(key)}return entries},symlink:function(parent,newname,oldpath){var node=MEMFS.createNode(parent,newname,511|40960,0);node.link=oldpath;return node},readlink:function(node){if(!FS.isLink(node.mode)){throw new FS.ErrnoError(28)}return node.link}},stream_ops:{read:function(stream,buffer,offset,length,position){var contents=stream.node.contents;if(position>=stream.node.usedBytes)return 0;var size=Math.min(stream.node.usedBytes-position,length);if(size>8&&contents.subarray){buffer.set(contents.subarray(position,position+size),offset)}else{for(var i=0;i<size;i++)buffer[offset+i]=contents[position+i]}return size},write:function(stream,buffer,offset,length,position,canOwn){if(buffer.buffer===HEAP8.buffer){canOwn=false}if(!length)return 0;var node=stream.node;node.timestamp=Date.now();if(buffer.subarray&&(!node.contents||node.contents.subarray)){if(canOwn){node.contents=buffer.subarray(offset,offset+length);node.usedBytes=length;return length}else if(node.usedBytes===0&&position===0){node.contents=buffer.slice(offset,offset+length);node.usedBytes=length;return length}else if(position+length<=node.usedBytes){node.contents.set(buffer.subarray(offset,offset+length),position);return length}}MEMFS.expandFileStorage(node,position+length);if(node.contents.subarray&&buffer.subarray){node.contents.set(buffer.subarray(offset,offset+length),position)}else{for(var i=0;i<length;i++){node.contents[position+i]=buffer[offset+i]}}node.usedBytes=Math.max(node.usedBytes,position+length);return length},llseek:function(stream,offset,whence){var position=offset;if(whence===1){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){position+=stream.node.usedBytes}}if(position<0){throw new FS.ErrnoError(28)}return position},allocate:function(stream,offset,length){MEMFS.expandFileStorage(stream.node,offset+length);stream.node.usedBytes=Math.max(stream.node.usedBytes,offset+length)},mmap:function(stream,length,position,prot,flags){if(!FS.isFile(stream.node.mode)){throw new FS.ErrnoError(43)}var ptr;var allocated;var contents=stream.node.contents;if(!(flags&2)&&contents.buffer===buffer){allocated=false;ptr=contents.byteOffset}else{if(position>0||position+length<contents.length){if(contents.subarray){contents=contents.subarray(position,position+length)}else{contents=Array.prototype.slice.call(contents,position,position+length)}}allocated=true;ptr=mmapAlloc(length);if(!ptr){throw new FS.ErrnoError(48)}HEAP8.set(contents,ptr)}return{ptr:ptr,allocated:allocated}},msync:function(stream,buffer,offset,length,mmapFlags){MEMFS.stream_ops.write(stream,buffer,0,length,offset,false);return 0}}};function asyncLoad(url,onload,onerror,noRunDep){var dep=!noRunDep?getUniqueRunDependency("al "+url):"";readAsync(url,arrayBuffer=>{assert(arrayBuffer,'Loading data file "'+url+'" failed (no arrayBuffer).');onload(new Uint8Array(arrayBuffer));if(dep)removeRunDependency(dep)},event=>{if(onerror){onerror()}else{throw'Loading data file "'+url+'" failed.'}});if(dep)addRunDependency(dep)}var FS={root:null,mounts:[],devices:{},streams:[],nextInode:1,nameTable:null,currentPath:"/",initialized:false,ignorePermissions:true,ErrnoError:null,genericErrors:{},filesystems:null,syncFSRequests:0,lookupPath:(path,opts={})=>{path=PATH_FS.resolve(path);if(!path)return{path:"",node:null};var defaults={follow_mount:true,recurse_count:0};opts=Object.assign(defaults,opts);if(opts.recurse_count>8){throw new FS.ErrnoError(32)}var parts=path.split("/").filter(p=>!!p);var current=FS.root;var current_path="/";for(var i=0;i<parts.length;i++){var islast=i===parts.length-1;if(islast&&opts.parent){break}current=FS.lookupNode(current,parts[i]);current_path=PATH.join2(current_path,parts[i]);if(FS.isMountpoint(current)){if(!islast||islast&&opts.follow_mount){current=current.mounted.root}}if(!islast||opts.follow){var count=0;while(FS.isLink(current.mode)){var link=FS.readlink(current_path);current_path=PATH_FS.resolve(PATH.dirname(current_path),link);var lookup=FS.lookupPath(current_path,{recurse_count:opts.recurse_count+1});current=lookup.node;if(count++>40){throw new FS.ErrnoError(32)}}}}return{path:current_path,node:current}},getPath:node=>{var path;while(true){if(FS.isRoot(node)){var mount=node.mount.mountpoint;if(!path)return mount;return mount[mount.length-1]!=="/"?mount+"/"+path:mount+path}path=path?node.name+"/"+path:node.name;node=node.parent}},hashName:(parentid,name)=>{var hash=0;for(var i=0;i<name.length;i++){hash=(hash<<5)-hash+name.charCodeAt(i)|0}return(parentid+hash>>>0)%FS.nameTable.length},hashAddNode:node=>{var hash=FS.hashName(node.parent.id,node.name);node.name_next=FS.nameTable[hash];FS.nameTable[hash]=node},hashRemoveNode:node=>{var hash=FS.hashName(node.parent.id,node.name);if(FS.nameTable[hash]===node){FS.nameTable[hash]=node.name_next}else{var current=FS.nameTable[hash];while(current){if(current.name_next===node){current.name_next=node.name_next;break}current=current.name_next}}},lookupNode:(parent,name)=>{var errCode=FS.mayLookup(parent);if(errCode){throw new FS.ErrnoError(errCode,parent)}var hash=FS.hashName(parent.id,name);for(var node=FS.nameTable[hash];node;node=node.name_next){var nodeName=node.name;if(node.parent.id===parent.id&&nodeName===name){return node}}return FS.lookup(parent,name)},createNode:(parent,name,mode,rdev)=>{var node=new FS.FSNode(parent,name,mode,rdev);FS.hashAddNode(node);return node},destroyNode:node=>{FS.hashRemoveNode(node)},isRoot:node=>{return node===node.parent},isMountpoint:node=>{return!!node.mounted},isFile:mode=>{return(mode&61440)===32768},isDir:mode=>{return(mode&61440)===16384},isLink:mode=>{return(mode&61440)===40960},isChrdev:mode=>{return(mode&61440)===8192},isBlkdev:mode=>{return(mode&61440)===24576},isFIFO:mode=>{return(mode&61440)===4096},isSocket:mode=>{return(mode&49152)===49152},flagModes:{"r":0,"r+":2,"w":577,"w+":578,"a":1089,"a+":1090},modeStringToFlags:str=>{var flags=FS.flagModes[str];if(typeof flags=="undefined"){throw new Error("Unknown file open mode: "+str)}return flags},flagsToPermissionString:flag=>{var perms=["r","w","rw"][flag&3];if(flag&512){perms+="w"}return perms},nodePermissions:(node,perms)=>{if(FS.ignorePermissions){return 0}if(perms.includes("r")&&!(node.mode&292)){return 2}else if(perms.includes("w")&&!(node.mode&146)){return 2}else if(perms.includes("x")&&!(node.mode&73)){return 2}return 0},mayLookup:dir=>{var errCode=FS.nodePermissions(dir,"x");if(errCode)return errCode;if(!dir.node_ops.lookup)return 2;return 0},mayCreate:(dir,name)=>{try{var node=FS.lookupNode(dir,name);return 20}catch(e){}return FS.nodePermissions(dir,"wx")},mayDelete:(dir,name,isdir)=>{var node;try{node=FS.lookupNode(dir,name)}catch(e){return e.errno}var errCode=FS.nodePermissions(dir,"wx");if(errCode){return errCode}if(isdir){if(!FS.isDir(node.mode)){return 54}if(FS.isRoot(node)||FS.getPath(node)===FS.cwd()){return 10}}else{if(FS.isDir(node.mode)){return 31}}return 0},mayOpen:(node,flags)=>{if(!node){return 44}if(FS.isLink(node.mode)){return 32}else if(FS.isDir(node.mode)){if(FS.flagsToPermissionString(flags)!=="r"||flags&512){return 31}}return FS.nodePermissions(node,FS.flagsToPermissionString(flags))},MAX_OPEN_FDS:4096,nextfd:(fd_start=0,fd_end=FS.MAX_OPEN_FDS)=>{for(var fd=fd_start;fd<=fd_end;fd++){if(!FS.streams[fd]){return fd}}throw new FS.ErrnoError(33)},getStream:fd=>FS.streams[fd],createStream:(stream,fd_start,fd_end)=>{if(!FS.FSStream){FS.FSStream=function(){this.shared={}};FS.FSStream.prototype={};Object.defineProperties(FS.FSStream.prototype,{object:{get:function(){return this.node},set:function(val){this.node=val}},isRead:{get:function(){return(this.flags&2097155)!==1}},isWrite:{get:function(){return(this.flags&2097155)!==0}},isAppend:{get:function(){return this.flags&1024}},flags:{get:function(){return this.shared.flags},set:function(val){this.shared.flags=val}},position:{get:function(){return this.shared.position},set:function(val){this.shared.position=val}}})}stream=Object.assign(new FS.FSStream,stream);var fd=FS.nextfd(fd_start,fd_end);stream.fd=fd;FS.streams[fd]=stream;return stream},closeStream:fd=>{FS.streams[fd]=null},chrdev_stream_ops:{open:stream=>{var device=FS.getDevice(stream.node.rdev);stream.stream_ops=device.stream_ops;if(stream.stream_ops.open){stream.stream_ops.open(stream)}},llseek:()=>{throw new FS.ErrnoError(70)}},major:dev=>dev>>8,minor:dev=>dev&255,makedev:(ma,mi)=>ma<<8|mi,registerDevice:(dev,ops)=>{FS.devices[dev]={stream_ops:ops}},getDevice:dev=>FS.devices[dev],getMounts:mount=>{var mounts=[];var check=[mount];while(check.length){var m=check.pop();mounts.push(m);check.push.apply(check,m.mounts)}return mounts},syncfs:(populate,callback)=>{if(typeof populate=="function"){callback=populate;populate=false}FS.syncFSRequests++;if(FS.syncFSRequests>1){err("warning: "+FS.syncFSRequests+" FS.syncfs operations in flight at once, probably just doing extra work")}var mounts=FS.getMounts(FS.root.mount);var completed=0;function doCallback(errCode){FS.syncFSRequests--;return callback(errCode)}function done(errCode){if(errCode){if(!done.errored){done.errored=true;return doCallback(errCode)}return}if(++completed>=mounts.length){doCallback(null)}}mounts.forEach(mount=>{if(!mount.type.syncfs){return done(null)}mount.type.syncfs(mount,populate,done)})},mount:(type,opts,mountpoint)=>{var root=mountpoint==="/";var pseudo=!mountpoint;var node;if(root&&FS.root){throw new FS.ErrnoError(10)}else if(!root&&!pseudo){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});mountpoint=lookup.path;node=lookup.node;if(FS.isMountpoint(node)){throw new FS.ErrnoError(10)}if(!FS.isDir(node.mode)){throw new FS.ErrnoError(54)}}var mount={type:type,opts:opts,mountpoint:mountpoint,mounts:[]};var mountRoot=type.mount(mount);mountRoot.mount=mount;mount.root=mountRoot;if(root){FS.root=mountRoot}else if(node){node.mounted=mount;if(node.mount){node.mount.mounts.push(mount)}}return mountRoot},unmount:mountpoint=>{var lookup=FS.lookupPath(mountpoint,{follow_mount:false});if(!FS.isMountpoint(lookup.node)){throw new FS.ErrnoError(28)}var node=lookup.node;var mount=node.mounted;var mounts=FS.getMounts(mount);Object.keys(FS.nameTable).forEach(hash=>{var current=FS.nameTable[hash];while(current){var next=current.name_next;if(mounts.includes(current.mount)){FS.destroyNode(current)}current=next}});node.mounted=null;var idx=node.mount.mounts.indexOf(mount);node.mount.mounts.splice(idx,1)},lookup:(parent,name)=>{return parent.node_ops.lookup(parent,name)},mknod:(path,mode,dev)=>{var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);if(!name||name==="."||name===".."){throw new FS.ErrnoError(28)}var errCode=FS.mayCreate(parent,name);if(errCode){throw new FS.ErrnoError(errCode)}if(!parent.node_ops.mknod){throw new FS.ErrnoError(63)}return parent.node_ops.mknod(parent,name,mode,dev)},create:(path,mode)=>{mode=mode!==undefined?mode:438;mode&=4095;mode|=32768;return FS.mknod(path,mode,0)},mkdir:(path,mode)=>{mode=mode!==undefined?mode:511;mode&=511|512;mode|=16384;return FS.mknod(path,mode,0)},mkdirTree:(path,mode)=>{var dirs=path.split("/");var d="";for(var i=0;i<dirs.length;++i){if(!dirs[i])continue;d+="/"+dirs[i];try{FS.mkdir(d,mode)}catch(e){if(e.errno!=20)throw e}}},mkdev:(path,mode,dev)=>{if(typeof dev=="undefined"){dev=mode;mode=438}mode|=8192;return FS.mknod(path,mode,dev)},symlink:(oldpath,newpath)=>{if(!PATH_FS.resolve(oldpath)){throw new FS.ErrnoError(44)}var lookup=FS.lookupPath(newpath,{parent:true});var parent=lookup.node;if(!parent){throw new FS.ErrnoError(44)}var newname=PATH.basename(newpath);var errCode=FS.mayCreate(parent,newname);if(errCode){throw new FS.ErrnoError(errCode)}if(!parent.node_ops.symlink){throw new FS.ErrnoError(63)}return parent.node_ops.symlink(parent,newname,oldpath)},rename:(old_path,new_path)=>{var old_dirname=PATH.dirname(old_path);var new_dirname=PATH.dirname(new_path);var old_name=PATH.basename(old_path);var new_name=PATH.basename(new_path);var lookup,old_dir,new_dir;lookup=FS.lookupPath(old_path,{parent:true});old_dir=lookup.node;lookup=FS.lookupPath(new_path,{parent:true});new_dir=lookup.node;if(!old_dir||!new_dir)throw new FS.ErrnoError(44);if(old_dir.mount!==new_dir.mount){throw new FS.ErrnoError(75)}var old_node=FS.lookupNode(old_dir,old_name);var relative=PATH_FS.relative(old_path,new_dirname);if(relative.charAt(0)!=="."){throw new FS.ErrnoError(28)}relative=PATH_FS.relative(new_path,old_dirname);if(relative.charAt(0)!=="."){throw new FS.ErrnoError(55)}var new_node;try{new_node=FS.lookupNode(new_dir,new_name)}catch(e){}if(old_node===new_node){return}var isdir=FS.isDir(old_node.mode);var errCode=FS.mayDelete(old_dir,old_name,isdir);if(errCode){throw new FS.ErrnoError(errCode)}errCode=new_node?FS.mayDelete(new_dir,new_name,isdir):FS.mayCreate(new_dir,new_name);if(errCode){throw new FS.ErrnoError(errCode)}if(!old_dir.node_ops.rename){throw new FS.ErrnoError(63)}if(FS.isMountpoint(old_node)||new_node&&FS.isMountpoint(new_node)){throw new FS.ErrnoError(10)}if(new_dir!==old_dir){errCode=FS.nodePermissions(old_dir,"w");if(errCode){throw new FS.ErrnoError(errCode)}}FS.hashRemoveNode(old_node);try{old_dir.node_ops.rename(old_node,new_dir,new_name)}catch(e){throw e}finally{FS.hashAddNode(old_node)}},rmdir:path=>{var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);var node=FS.lookupNode(parent,name);var errCode=FS.mayDelete(parent,name,true);if(errCode){throw new FS.ErrnoError(errCode)}if(!parent.node_ops.rmdir){throw new FS.ErrnoError(63)}if(FS.isMountpoint(node)){throw new FS.ErrnoError(10)}parent.node_ops.rmdir(parent,name);FS.destroyNode(node)},readdir:path=>{var lookup=FS.lookupPath(path,{follow:true});var node=lookup.node;if(!node.node_ops.readdir){throw new FS.ErrnoError(54)}return node.node_ops.readdir(node)},unlink:path=>{var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;if(!parent){throw new FS.ErrnoError(44)}var name=PATH.basename(path);var node=FS.lookupNode(parent,name);var errCode=FS.mayDelete(parent,name,false);if(errCode){throw new FS.ErrnoError(errCode)}if(!parent.node_ops.unlink){throw new FS.ErrnoError(63)}if(FS.isMountpoint(node)){throw new FS.ErrnoError(10)}parent.node_ops.unlink(parent,name);FS.destroyNode(node)},readlink:path=>{var lookup=FS.lookupPath(path);var link=lookup.node;if(!link){throw new FS.ErrnoError(44)}if(!link.node_ops.readlink){throw new FS.ErrnoError(28)}return PATH_FS.resolve(FS.getPath(link.parent),link.node_ops.readlink(link))},stat:(path,dontFollow)=>{var lookup=FS.lookupPath(path,{follow:!dontFollow});var node=lookup.node;if(!node){throw new FS.ErrnoError(44)}if(!node.node_ops.getattr){throw new FS.ErrnoError(63)}return node.node_ops.getattr(node)},lstat:path=>{return FS.stat(path,true)},chmod:(path,mode,dontFollow)=>{var node;if(typeof path=="string"){var lookup=FS.lookupPath(path,{follow:!dontFollow});node=lookup.node}else{node=path}if(!node.node_ops.setattr){throw new FS.ErrnoError(63)}node.node_ops.setattr(node,{mode:mode&4095|node.mode&~4095,timestamp:Date.now()})},lchmod:(path,mode)=>{FS.chmod(path,mode,true)},fchmod:(fd,mode)=>{var stream=FS.getStream(fd);if(!stream){throw new FS.ErrnoError(8)}FS.chmod(stream.node,mode)},chown:(path,uid,gid,dontFollow)=>{var node;if(typeof path=="string"){var lookup=FS.lookupPath(path,{follow:!dontFollow});node=lookup.node}else{node=path}if(!node.node_ops.setattr){throw new FS.ErrnoError(63)}node.node_ops.setattr(node,{timestamp:Date.now()})},lchown:(path,uid,gid)=>{FS.chown(path,uid,gid,true)},fchown:(fd,uid,gid)=>{var stream=FS.getStream(fd);if(!stream){throw new FS.ErrnoError(8)}FS.chown(stream.node,uid,gid)},truncate:(path,len)=>{if(len<0){throw new FS.ErrnoError(28)}var node;if(typeof path=="string"){var lookup=FS.lookupPath(path,{follow:true});node=lookup.node}else{node=path}if(!node.node_ops.setattr){throw new FS.ErrnoError(63)}if(FS.isDir(node.mode)){throw new FS.ErrnoError(31)}if(!FS.isFile(node.mode)){throw new FS.ErrnoError(28)}var errCode=FS.nodePermissions(node,"w");if(errCode){throw new FS.ErrnoError(errCode)}node.node_ops.setattr(node,{size:len,timestamp:Date.now()})},ftruncate:(fd,len)=>{var stream=FS.getStream(fd);if(!stream){throw new FS.ErrnoError(8)}if((stream.flags&2097155)===0){throw new FS.ErrnoError(28)}FS.truncate(stream.node,len)},utime:(path,atime,mtime)=>{var lookup=FS.lookupPath(path,{follow:true});var node=lookup.node;node.node_ops.setattr(node,{timestamp:Math.max(atime,mtime)})},open:(path,flags,mode)=>{if(path===""){throw new FS.ErrnoError(44)}flags=typeof flags=="string"?FS.modeStringToFlags(flags):flags;mode=typeof mode=="undefined"?438:mode;if(flags&64){mode=mode&4095|32768}else{mode=0}var node;if(typeof path=="object"){node=path}else{path=PATH.normalize(path);try{var lookup=FS.lookupPath(path,{follow:!(flags&131072)});node=lookup.node}catch(e){}}var created=false;if(flags&64){if(node){if(flags&128){throw new FS.ErrnoError(20)}}else{node=FS.mknod(path,mode,0);created=true}}if(!node){throw new FS.ErrnoError(44)}if(FS.isChrdev(node.mode)){flags&=~512}if(flags&65536&&!FS.isDir(node.mode)){throw new FS.ErrnoError(54)}if(!created){var errCode=FS.mayOpen(node,flags);if(errCode){throw new FS.ErrnoError(errCode)}}if(flags&512&&!created){FS.truncate(node,0)}flags&=~(128|512|131072);var stream=FS.createStream({node:node,path:FS.getPath(node),flags:flags,seekable:true,position:0,stream_ops:node.stream_ops,ungotten:[],error:false});if(stream.stream_ops.open){stream.stream_ops.open(stream)}if(Module["logReadFiles"]&&!(flags&1)){if(!FS.readFiles)FS.readFiles={};if(!(path in FS.readFiles)){FS.readFiles[path]=1}}return stream},close:stream=>{if(FS.isClosed(stream)){throw new FS.ErrnoError(8)}if(stream.getdents)stream.getdents=null;try{if(stream.stream_ops.close){stream.stream_ops.close(stream)}}catch(e){throw e}finally{FS.closeStream(stream.fd)}stream.fd=null},isClosed:stream=>{return stream.fd===null},llseek:(stream,offset,whence)=>{if(FS.isClosed(stream)){throw new FS.ErrnoError(8)}if(!stream.seekable||!stream.stream_ops.llseek){throw new FS.ErrnoError(70)}if(whence!=0&&whence!=1&&whence!=2){throw new FS.ErrnoError(28)}stream.position=stream.stream_ops.llseek(stream,offset,whence);stream.ungotten=[];return stream.position},read:(stream,buffer,offset,length,position)=>{if(length<0||position<0){throw new FS.ErrnoError(28)}if(FS.isClosed(stream)){throw new FS.ErrnoError(8)}if((stream.flags&2097155)===1){throw new FS.ErrnoError(8)}if(FS.isDir(stream.node.mode)){throw new FS.ErrnoError(31)}if(!stream.stream_ops.read){throw new FS.ErrnoError(28)}var seeking=typeof position!="undefined";if(!seeking){position=stream.position}else if(!stream.seekable){throw new FS.ErrnoError(70)}var bytesRead=stream.stream_ops.read(stream,buffer,offset,length,position);if(!seeking)stream.position+=bytesRead;return bytesRead},write:(stream,buffer,offset,length,position,canOwn)=>{if(length<0||position<0){throw new FS.ErrnoError(28)}if(FS.isClosed(stream)){throw new FS.ErrnoError(8)}if((stream.flags&2097155)===0){throw new FS.ErrnoError(8)}if(FS.isDir(stream.node.mode)){throw new FS.ErrnoError(31)}if(!stream.stream_ops.write){throw new FS.ErrnoError(28)}if(stream.seekable&&stream.flags&1024){FS.llseek(stream,0,2)}var seeking=typeof position!="undefined";if(!seeking){position=stream.position}else if(!stream.seekable){throw new FS.ErrnoError(70)}var bytesWritten=stream.stream_ops.write(stream,buffer,offset,length,position,canOwn);if(!seeking)stream.position+=bytesWritten;return bytesWritten},allocate:(stream,offset,length)=>{if(FS.isClosed(stream)){throw new FS.ErrnoError(8)}if(offset<0||length<=0){throw new FS.ErrnoError(28)}if((stream.flags&2097155)===0){throw new FS.ErrnoError(8)}if(!FS.isFile(stream.node.mode)&&!FS.isDir(stream.node.mode)){throw new FS.ErrnoError(43)}if(!stream.stream_ops.allocate){throw new FS.ErrnoError(138)}stream.stream_ops.allocate(stream,offset,length)},mmap:(stream,length,position,prot,flags)=>{if((prot&2)!==0&&(flags&2)===0&&(stream.flags&2097155)!==2){throw new FS.ErrnoError(2)}if((stream.flags&2097155)===1){throw new FS.ErrnoError(2)}if(!stream.stream_ops.mmap){throw new FS.ErrnoError(43)}return stream.stream_ops.mmap(stream,length,position,prot,flags)},msync:(stream,buffer,offset,length,mmapFlags)=>{if(!stream.stream_ops.msync){return 0}return stream.stream_ops.msync(stream,buffer,offset,length,mmapFlags)},munmap:stream=>0,ioctl:(stream,cmd,arg)=>{if(!stream.stream_ops.ioctl){throw new FS.ErrnoError(59)}return stream.stream_ops.ioctl(stream,cmd,arg)},readFile:(path,opts={})=>{opts.flags=opts.flags||0;opts.encoding=opts.encoding||"binary";if(opts.encoding!=="utf8"&&opts.encoding!=="binary"){throw new Error('Invalid encoding type "'+opts.encoding+'"')}var ret;var stream=FS.open(path,opts.flags);var stat=FS.stat(path);var length=stat.size;var buf=new Uint8Array(length);FS.read(stream,buf,0,length,0);if(opts.encoding==="utf8"){ret=UTF8ArrayToString(buf,0)}else if(opts.encoding==="binary"){ret=buf}FS.close(stream);return ret},writeFile:(path,data,opts={})=>{opts.flags=opts.flags||577;var stream=FS.open(path,opts.flags,opts.mode);if(typeof data=="string"){var buf=new Uint8Array(lengthBytesUTF8(data)+1);var actualNumBytes=stringToUTF8Array(data,buf,0,buf.length);FS.write(stream,buf,0,actualNumBytes,undefined,opts.canOwn)}else if(ArrayBuffer.isView(data)){FS.write(stream,data,0,data.byteLength,undefined,opts.canOwn)}else{throw new Error("Unsupported data type")}FS.close(stream)},cwd:()=>FS.currentPath,chdir:path=>{var lookup=FS.lookupPath(path,{follow:true});if(lookup.node===null){throw new FS.ErrnoError(44)}if(!FS.isDir(lookup.node.mode)){throw new FS.ErrnoError(54)}var errCode=FS.nodePermissions(lookup.node,"x");if(errCode){throw new FS.ErrnoError(errCode)}FS.currentPath=lookup.path},createDefaultDirectories:()=>{FS.mkdir("/tmp");FS.mkdir("/home");FS.mkdir("/home/web_user")},createDefaultDevices:()=>{FS.mkdir("/dev");FS.registerDevice(FS.makedev(1,3),{read:()=>0,write:(stream,buffer,offset,length,pos)=>length});FS.mkdev("/dev/null",FS.makedev(1,3));TTY.register(FS.makedev(5,0),TTY.default_tty_ops);TTY.register(FS.makedev(6,0),TTY.default_tty1_ops);FS.mkdev("/dev/tty",FS.makedev(5,0));FS.mkdev("/dev/tty1",FS.makedev(6,0));var random_device=getRandomDevice();FS.createDevice("/dev","random",random_device);FS.createDevice("/dev","urandom",random_device);FS.mkdir("/dev/shm");FS.mkdir("/dev/shm/tmp")},createSpecialDirectories:()=>{FS.mkdir("/proc");var proc_self=FS.mkdir("/proc/self");FS.mkdir("/proc/self/fd");FS.mount({mount:()=>{var node=FS.createNode(proc_self,"fd",16384|511,73);node.node_ops={lookup:(parent,name)=>{var fd=+name;var stream=FS.getStream(fd);if(!stream)throw new FS.ErrnoError(8);var ret={parent:null,mount:{mountpoint:"fake"},node_ops:{readlink:()=>stream.path}};ret.parent=ret;return ret}};return node}},{},"/proc/self/fd")},createStandardStreams:()=>{if(Module["stdin"]){FS.createDevice("/dev","stdin",Module["stdin"])}else{FS.symlink("/dev/tty","/dev/stdin")}if(Module["stdout"]){FS.createDevice("/dev","stdout",null,Module["stdout"])}else{FS.symlink("/dev/tty","/dev/stdout")}if(Module["stderr"]){FS.createDevice("/dev","stderr",null,Module["stderr"])}else{FS.symlink("/dev/tty1","/dev/stderr")}var stdin=FS.open("/dev/stdin",0);var stdout=FS.open("/dev/stdout",1);var stderr=FS.open("/dev/stderr",1)},ensureErrnoError:()=>{if(FS.ErrnoError)return;FS.ErrnoError=function ErrnoError(errno,node){this.node=node;this.setErrno=function(errno){this.errno=errno};this.setErrno(errno);this.message="FS error"};FS.ErrnoError.prototype=new Error;FS.ErrnoError.prototype.constructor=FS.ErrnoError;[44].forEach(code=>{FS.genericErrors[code]=new FS.ErrnoError(code);FS.genericErrors[code].stack="<generic error, no stack>"})},staticInit:()=>{FS.ensureErrnoError();FS.nameTable=new Array(4096);FS.mount(MEMFS,{},"/");FS.createDefaultDirectories();FS.createDefaultDevices();FS.createSpecialDirectories();FS.filesystems={"MEMFS":MEMFS}},init:(input,output,error)=>{FS.init.initialized=true;FS.ensureErrnoError();Module["stdin"]=input||Module["stdin"];Module["stdout"]=output||Module["stdout"];Module["stderr"]=error||Module["stderr"];FS.createStandardStreams()},quit:()=>{FS.init.initialized=false;for(var i=0;i<FS.streams.length;i++){var stream=FS.streams[i];if(!stream){continue}FS.close(stream)}},getMode:(canRead,canWrite)=>{var mode=0;if(canRead)mode|=292|73;if(canWrite)mode|=146;return mode},findObject:(path,dontResolveLastLink)=>{var ret=FS.analyzePath(path,dontResolveLastLink);if(!ret.exists){return null}return ret.object},analyzePath:(path,dontResolveLastLink)=>{try{var lookup=FS.lookupPath(path,{follow:!dontResolveLastLink});path=lookup.path}catch(e){}var ret={isRoot:false,exists:false,error:0,name:null,path:null,object:null,parentExists:false,parentPath:null,parentObject:null};try{var lookup=FS.lookupPath(path,{parent:true});ret.parentExists=true;ret.parentPath=lookup.path;ret.parentObject=lookup.node;ret.name=PATH.basename(path);lookup=FS.lookupPath(path,{follow:!dontResolveLastLink});ret.exists=true;ret.path=lookup.path;ret.object=lookup.node;ret.name=lookup.node.name;ret.isRoot=lookup.path==="/"}catch(e){ret.error=e.errno}return ret},createPath:(parent,path,canRead,canWrite)=>{parent=typeof parent=="string"?parent:FS.getPath(parent);var parts=path.split("/").reverse();while(parts.length){var part=parts.pop();if(!part)continue;var current=PATH.join2(parent,part);try{FS.mkdir(current)}catch(e){}parent=current}return current},createFile:(parent,name,properties,canRead,canWrite)=>{var path=PATH.join2(typeof parent=="string"?parent:FS.getPath(parent),name);var mode=FS.getMode(canRead,canWrite);return FS.create(path,mode)},createDataFile:(parent,name,data,canRead,canWrite,canOwn)=>{var path=name;if(parent){parent=typeof parent=="string"?parent:FS.getPath(parent);path=name?PATH.join2(parent,name):parent}var mode=FS.getMode(canRead,canWrite);var node=FS.create(path,mode);if(data){if(typeof data=="string"){var arr=new Array(data.length);for(var i=0,len=data.length;i<len;++i)arr[i]=data.charCodeAt(i);data=arr}FS.chmod(node,mode|146);var stream=FS.open(node,577);FS.write(stream,data,0,data.length,0,canOwn);FS.close(stream);FS.chmod(node,mode)}return node},createDevice:(parent,name,input,output)=>{var path=PATH.join2(typeof parent=="string"?parent:FS.getPath(parent),name);var mode=FS.getMode(!!input,!!output);if(!FS.createDevice.major)FS.createDevice.major=64;var dev=FS.makedev(FS.createDevice.major++,0);FS.registerDevice(dev,{open:stream=>{stream.seekable=false},close:stream=>{if(output&&output.buffer&&output.buffer.length){output(10)}},read:(stream,buffer,offset,length,pos)=>{var bytesRead=0;for(var i=0;i<length;i++){var result;try{result=input()}catch(e){throw new FS.ErrnoError(29)}if(result===undefined&&bytesRead===0){throw new FS.ErrnoError(6)}if(result===null||result===undefined)break;bytesRead++;buffer[offset+i]=result}if(bytesRead){stream.node.timestamp=Date.now()}return bytesRead},write:(stream,buffer,offset,length,pos)=>{for(var i=0;i<length;i++){try{output(buffer[offset+i])}catch(e){throw new FS.ErrnoError(29)}}if(length){stream.node.timestamp=Date.now()}return i}});return FS.mkdev(path,mode,dev)},forceLoadFile:obj=>{if(obj.isDevice||obj.isFolder||obj.link||obj.contents)return true;if(typeof XMLHttpRequest!="undefined"){throw new Error("Lazy loading should have been performed (contents set) in createLazyFile, but it was not. Lazy loading only works in web workers. Use --embed-file or --preload-file in emcc on the main thread.")}else if(read_){try{obj.contents=intArrayFromString(read_(obj.url),true);obj.usedBytes=obj.contents.length}catch(e){throw new FS.ErrnoError(29)}}else{throw new Error("Cannot load without read() or XMLHttpRequest.")}},createLazyFile:(parent,name,url,canRead,canWrite)=>{function LazyUint8Array(){this.lengthKnown=false;this.chunks=[]}LazyUint8Array.prototype.get=function LazyUint8Array_get(idx){if(idx>this.length-1||idx<0){return undefined}var chunkOffset=idx%this.chunkSize;var chunkNum=idx/this.chunkSize|0;return this.getter(chunkNum)[chunkOffset]};LazyUint8Array.prototype.setDataGetter=function LazyUint8Array_setDataGetter(getter){this.getter=getter};LazyUint8Array.prototype.cacheLength=function LazyUint8Array_cacheLength(){var xhr=new XMLHttpRequest;xhr.open("HEAD",url,false);xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);var datalength=Number(xhr.getResponseHeader("Content-length"));var header;var hasByteServing=(header=xhr.getResponseHeader("Accept-Ranges"))&&header==="bytes";var usesGzip=(header=xhr.getResponseHeader("Content-Encoding"))&&header==="gzip";var chunkSize=1024*1024;if(!hasByteServing)chunkSize=datalength;var doXHR=(from,to)=>{if(from>to)throw new Error("invalid range ("+from+", "+to+") or no bytes requested!");if(to>datalength-1)throw new Error("only "+datalength+" bytes available! programmer error!");var xhr=new XMLHttpRequest;xhr.open("GET",url,false);if(datalength!==chunkSize)xhr.setRequestHeader("Range","bytes="+from+"-"+to);xhr.responseType="arraybuffer";if(xhr.overrideMimeType){xhr.overrideMimeType("text/plain; charset=x-user-defined")}xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);if(xhr.response!==undefined){return new Uint8Array(xhr.response||[])}return intArrayFromString(xhr.responseText||"",true)};var lazyArray=this;lazyArray.setDataGetter(chunkNum=>{var start=chunkNum*chunkSize;var end=(chunkNum+1)*chunkSize-1;end=Math.min(end,datalength-1);if(typeof lazyArray.chunks[chunkNum]=="undefined"){lazyArray.chunks[chunkNum]=doXHR(start,end)}if(typeof lazyArray.chunks[chunkNum]=="undefined")throw new Error("doXHR failed!");return lazyArray.chunks[chunkNum]});if(usesGzip||!datalength){chunkSize=datalength=1;datalength=this.getter(0).length;chunkSize=datalength;out("LazyFiles on gzip forces download of the whole file when length is accessed")}this._length=datalength;this._chunkSize=chunkSize;this.lengthKnown=true};if(typeof XMLHttpRequest!="undefined"){if(!ENVIRONMENT_IS_WORKER)throw"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";var lazyArray=new LazyUint8Array;Object.defineProperties(lazyArray,{length:{get:function(){if(!this.lengthKnown){this.cacheLength()}return this._length}},chunkSize:{get:function(){if(!this.lengthKnown){this.cacheLength()}return this._chunkSize}}});var properties={isDevice:false,contents:lazyArray}}else{var properties={isDevice:false,url:url}}var node=FS.createFile(parent,name,properties,canRead,canWrite);if(properties.contents){node.contents=properties.contents}else if(properties.url){node.contents=null;node.url=properties.url}Object.defineProperties(node,{usedBytes:{get:function(){return this.contents.length}}});var stream_ops={};var keys=Object.keys(node.stream_ops);keys.forEach(key=>{var fn=node.stream_ops[key];stream_ops[key]=function forceLoadLazyFile(){FS.forceLoadFile(node);return fn.apply(null,arguments)}});function writeChunks(stream,buffer,offset,length,position){var contents=stream.node.contents;if(position>=contents.length)return 0;var size=Math.min(contents.length-position,length);if(contents.slice){for(var i=0;i<size;i++){buffer[offset+i]=contents[position+i]}}else{for(var i=0;i<size;i++){buffer[offset+i]=contents.get(position+i)}}return size}stream_ops.read=(stream,buffer,offset,length,position)=>{FS.forceLoadFile(node);return writeChunks(stream,buffer,offset,length,position)};stream_ops.mmap=(stream,length,position,prot,flags)=>{FS.forceLoadFile(node);var ptr=mmapAlloc(length);if(!ptr){throw new FS.ErrnoError(48)}writeChunks(stream,HEAP8,ptr,length,position);return{ptr:ptr,allocated:true}};node.stream_ops=stream_ops;return node},createPreloadedFile:(parent,name,url,canRead,canWrite,onload,onerror,dontCreateFile,canOwn,preFinish)=>{var fullname=name?PATH_FS.resolve(PATH.join2(parent,name)):parent;var dep=getUniqueRunDependency("cp "+fullname);function processData(byteArray){function finish(byteArray){if(preFinish)preFinish();if(!dontCreateFile){FS.createDataFile(parent,name,byteArray,canRead,canWrite,canOwn)}if(onload)onload();removeRunDependency(dep)}if(Browser.handledByPreloadPlugin(byteArray,fullname,finish,()=>{if(onerror)onerror();removeRunDependency(dep)})){return}finish(byteArray)}addRunDependency(dep);if(typeof url=="string"){asyncLoad(url,byteArray=>processData(byteArray),onerror)}else{processData(url)}},indexedDB:()=>{return window.indexedDB||window.mozIndexedDB||window.webkitIndexedDB||window.msIndexedDB},DB_NAME:()=>{return"EM_FS_"+window.location.pathname},DB_VERSION:20,DB_STORE_NAME:"FILE_DATA",saveFilesToDB:(paths,onload,onerror)=>{onload=onload||(()=>{});onerror=onerror||(()=>{});var indexedDB=FS.indexedDB();try{var openRequest=indexedDB.open(FS.DB_NAME(),FS.DB_VERSION)}catch(e){return onerror(e)}openRequest.onupgradeneeded=()=>{out("creating db");var db=openRequest.result;db.createObjectStore(FS.DB_STORE_NAME)};openRequest.onsuccess=()=>{var db=openRequest.result;var transaction=db.transaction([FS.DB_STORE_NAME],"readwrite");var files=transaction.objectStore(FS.DB_STORE_NAME);var ok=0,fail=0,total=paths.length;function finish(){if(fail==0)onload();else onerror()}paths.forEach(path=>{var putRequest=files.put(FS.analyzePath(path).object.contents,path);putRequest.onsuccess=()=>{ok++;if(ok+fail==total)finish()};putRequest.onerror=()=>{fail++;if(ok+fail==total)finish()}});transaction.onerror=onerror};openRequest.onerror=onerror},loadFilesFromDB:(paths,onload,onerror)=>{onload=onload||(()=>{});onerror=onerror||(()=>{});var indexedDB=FS.indexedDB();try{var openRequest=indexedDB.open(FS.DB_NAME(),FS.DB_VERSION)}catch(e){return onerror(e)}openRequest.onupgradeneeded=onerror;openRequest.onsuccess=()=>{var db=openRequest.result;try{var transaction=db.transaction([FS.DB_STORE_NAME],"readonly")}catch(e){onerror(e);return}var files=transaction.objectStore(FS.DB_STORE_NAME);var ok=0,fail=0,total=paths.length;function finish(){if(fail==0)onload();else onerror()}paths.forEach(path=>{var getRequest=files.get(path);getRequest.onsuccess=()=>{if(FS.analyzePath(path).exists){FS.unlink(path)}FS.createDataFile(PATH.dirname(path),PATH.basename(path),getRequest.result,true,true,true);ok++;if(ok+fail==total)finish()};getRequest.onerror=()=>{fail++;if(ok+fail==total)finish()}});transaction.onerror=onerror};openRequest.onerror=onerror}};var SYSCALLS={DEFAULT_POLLMASK:5,calculateAt:function(dirfd,path,allowEmpty){if(PATH.isAbs(path)){return path}var dir;if(dirfd===-100){dir=FS.cwd()}else{var dirstream=SYSCALLS.getStreamFromFD(dirfd);dir=dirstream.path}if(path.length==0){if(!allowEmpty){throw new FS.ErrnoError(44)}return dir}return PATH.join2(dir,path)},doStat:function(func,path,buf){try{var stat=func(path)}catch(e){if(e&&e.node&&PATH.normalize(path)!==PATH.normalize(FS.getPath(e.node))){return-54}throw e}HEAP32[buf>>2]=stat.dev;HEAP32[buf+8>>2]=stat.ino;HEAP32[buf+12>>2]=stat.mode;HEAPU32[buf+16>>2]=stat.nlink;HEAP32[buf+20>>2]=stat.uid;HEAP32[buf+24>>2]=stat.gid;HEAP32[buf+28>>2]=stat.rdev;tempI64=[stat.size>>>0,(tempDouble=stat.size,+Math.abs(tempDouble)>=1?tempDouble>0?(Math.min(+Math.floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[buf+40>>2]=tempI64[0],HEAP32[buf+44>>2]=tempI64[1];HEAP32[buf+48>>2]=4096;HEAP32[buf+52>>2]=stat.blocks;tempI64=[Math.floor(stat.atime.getTime()/1e3)>>>0,(tempDouble=Math.floor(stat.atime.getTime()/1e3),+Math.abs(tempDouble)>=1?tempDouble>0?(Math.min(+Math.floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[buf+56>>2]=tempI64[0],HEAP32[buf+60>>2]=tempI64[1];HEAPU32[buf+64>>2]=0;tempI64=[Math.floor(stat.mtime.getTime()/1e3)>>>0,(tempDouble=Math.floor(stat.mtime.getTime()/1e3),+Math.abs(tempDouble)>=1?tempDouble>0?(Math.min(+Math.floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[buf+72>>2]=tempI64[0],HEAP32[buf+76>>2]=tempI64[1];HEAPU32[buf+80>>2]=0;tempI64=[Math.floor(stat.ctime.getTime()/1e3)>>>0,(tempDouble=Math.floor(stat.ctime.getTime()/1e3),+Math.abs(tempDouble)>=1?tempDouble>0?(Math.min(+Math.floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[buf+88>>2]=tempI64[0],HEAP32[buf+92>>2]=tempI64[1];HEAPU32[buf+96>>2]=0;tempI64=[stat.ino>>>0,(tempDouble=stat.ino,+Math.abs(tempDouble)>=1?tempDouble>0?(Math.min(+Math.floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[buf+104>>2]=tempI64[0],HEAP32[buf+108>>2]=tempI64[1];return 0},doMsync:function(addr,stream,len,flags,offset){if(!FS.isFile(stream.node.mode)){throw new FS.ErrnoError(43)}if(flags&2){return 0}var buffer=HEAPU8.slice(addr,addr+len);FS.msync(stream,buffer,offset,len,flags)},varargs:undefined,get:function(){SYSCALLS.varargs+=4;var ret=HEAP32[SYSCALLS.varargs-4>>2];return ret},getStr:function(ptr){var ret=UTF8ToString(ptr);return ret},getStreamFromFD:function(fd){var stream=FS.getStream(fd);if(!stream)throw new FS.ErrnoError(8);return stream}};function ___syscall__newselect(nfds,readfds,writefds,exceptfds,timeout){try{var total=0;var srcReadLow=readfds?HEAP32[readfds>>2]:0,srcReadHigh=readfds?HEAP32[readfds+4>>2]:0;var srcWriteLow=writefds?HEAP32[writefds>>2]:0,srcWriteHigh=writefds?HEAP32[writefds+4>>2]:0;var srcExceptLow=exceptfds?HEAP32[exceptfds>>2]:0,srcExceptHigh=exceptfds?HEAP32[exceptfds+4>>2]:0;var dstReadLow=0,dstReadHigh=0;var dstWriteLow=0,dstWriteHigh=0;var dstExceptLow=0,dstExceptHigh=0;var allLow=(readfds?HEAP32[readfds>>2]:0)|(writefds?HEAP32[writefds>>2]:0)|(exceptfds?HEAP32[exceptfds>>2]:0);var allHigh=(readfds?HEAP32[readfds+4>>2]:0)|(writefds?HEAP32[writefds+4>>2]:0)|(exceptfds?HEAP32[exceptfds+4>>2]:0);var check=function(fd,low,high,val){return fd<32?low&val:high&val};for(var fd=0;fd<nfds;fd++){var mask=1<<fd%32;if(!check(fd,allLow,allHigh,mask)){continue}var stream=SYSCALLS.getStreamFromFD(fd);var flags=SYSCALLS.DEFAULT_POLLMASK;if(stream.stream_ops.poll){flags=stream.stream_ops.poll(stream)}if(flags&1&&check(fd,srcReadLow,srcReadHigh,mask)){fd<32?dstReadLow=dstReadLow|mask:dstReadHigh=dstReadHigh|mask;total++}if(flags&4&&check(fd,srcWriteLow,srcWriteHigh,mask)){fd<32?dstWriteLow=dstWriteLow|mask:dstWriteHigh=dstWriteHigh|mask;total++}if(flags&2&&check(fd,srcExceptLow,srcExceptHigh,mask)){fd<32?dstExceptLow=dstExceptLow|mask:dstExceptHigh=dstExceptHigh|mask;total++}}if(readfds){HEAP32[readfds>>2]=dstReadLow;HEAP32[readfds+4>>2]=dstReadHigh}if(writefds){HEAP32[writefds>>2]=dstWriteLow;HEAP32[writefds+4>>2]=dstWriteHigh}if(exceptfds){HEAP32[exceptfds>>2]=dstExceptLow;HEAP32[exceptfds+4>>2]=dstExceptHigh}return total}catch(e){if(typeof FS=="undefined"||!(e instanceof FS.ErrnoError))throw e;return-e.errno}}var SOCKFS={mount:function(mount){Module["websocket"]=Module["websocket"]&&"object"===typeof Module["websocket"]?Module["websocket"]:{};Module["websocket"]._callbacks={};Module["websocket"]["on"]=function(event,callback){if("function"===typeof callback){this._callbacks[event]=callback}return this};Module["websocket"].emit=function(event,param){if("function"===typeof this._callbacks[event]){this._callbacks[event].call(this,param)}};return FS.createNode(null,"/",16384|511,0)},createSocket:function(family,type,protocol){type&=~526336;var streaming=type==1;if(streaming&&protocol&&protocol!=6){throw new FS.ErrnoError(66)}var sock={family:family,type:type,protocol:protocol,server:null,error:null,peers:{},pending:[],recv_queue:[],sock_ops:SOCKFS.websocket_sock_ops};var name=SOCKFS.nextname();var node=FS.createNode(SOCKFS.root,name,49152,0);node.sock=sock;var stream=FS.createStream({path:name,node:node,flags:2,seekable:false,stream_ops:SOCKFS.stream_ops});sock.stream=stream;return sock},getSocket:function(fd){var stream=FS.getStream(fd);if(!stream||!FS.isSocket(stream.node.mode)){return null}return stream.node.sock},stream_ops:{poll:function(stream){var sock=stream.node.sock;return sock.sock_ops.poll(sock)},ioctl:function(stream,request,varargs){var sock=stream.node.sock;return sock.sock_ops.ioctl(sock,request,varargs)},read:function(stream,buffer,offset,length,position){var sock=stream.node.sock;var msg=sock.sock_ops.recvmsg(sock,length);if(!msg){return 0}buffer.set(msg.buffer,offset);return msg.buffer.length},write:function(stream,buffer,offset,length,position){var sock=stream.node.sock;return sock.sock_ops.sendmsg(sock,buffer,offset,length)},close:function(stream){var sock=stream.node.sock;sock.sock_ops.close(sock)}},nextname:function(){if(!SOCKFS.nextname.current){SOCKFS.nextname.current=0}return"socket["+SOCKFS.nextname.current+++"]"},websocket_sock_ops:{createPeer:function(sock,addr,port){var ws;if(typeof addr=="object"){ws=addr;addr=null;port=null}if(ws){if(ws._socket){addr=ws._socket.remoteAddress;port=ws._socket.remotePort}else{var result=/ws[s]?:\/\/([^:]+):(\d+)/.exec(ws.url);if(!result){throw new Error("WebSocket URL must be in the format ws(s)://address:port")}addr=result[1];port=parseInt(result[2],10)}}else{try{var runtimeConfig=Module["websocket"]&&"object"===typeof Module["websocket"];var url="ws:#".replace("#","//");if(runtimeConfig){if("string"===typeof Module["websocket"]["url"]){url=Module["websocket"]["url"]}}if(url==="ws://"||url==="wss://"){var parts=addr.split("/");url=url+parts[0]+":"+port+"/"+parts.slice(1).join("/")}var subProtocols="binary";if(runtimeConfig){if("string"===typeof Module["websocket"]["subprotocol"]){subProtocols=Module["websocket"]["subprotocol"]}}var opts=undefined;if(subProtocols!=="null"){subProtocols=subProtocols.replace(/^ +| +$/g,"").split(/ *, */);opts=subProtocols}if(runtimeConfig&&null===Module["websocket"]["subprotocol"]){subProtocols="null";opts=undefined}var WebSocketConstructor;{WebSocketConstructor=WebSocket}ws=new WebSocketConstructor(url,opts);ws.binaryType="arraybuffer"}catch(e){throw new FS.ErrnoError(23)}}var peer={addr:addr,port:port,socket:ws,dgram_send_queue:[]};SOCKFS.websocket_sock_ops.addPeer(sock,peer);SOCKFS.websocket_sock_ops.handlePeerEvents(sock,peer);if(sock.type===2&&typeof sock.sport!="undefined"){peer.dgram_send_queue.push(new Uint8Array([255,255,255,255,"p".charCodeAt(0),"o".charCodeAt(0),"r".charCodeAt(0),"t".charCodeAt(0),(sock.sport&65280)>>8,sock.sport&255]))}return peer},getPeer:function(sock,addr,port){return sock.peers[addr+":"+port]},addPeer:function(sock,peer){sock.peers[peer.addr+":"+peer.port]=peer},removePeer:function(sock,peer){delete sock.peers[peer.addr+":"+peer.port]},handlePeerEvents:function(sock,peer){var first=true;var handleOpen=function(){Module["websocket"].emit("open",sock.stream.fd);try{var queued=peer.dgram_send_queue.shift();while(queued){peer.socket.send(queued);queued=peer.dgram_send_queue.shift()}}catch(e){peer.socket.close()}};function handleMessage(data){if(typeof data=="string"){var encoder=new TextEncoder;data=encoder.encode(data)}else{assert(data.byteLength!==undefined);if(data.byteLength==0){return}data=new Uint8Array(data)}var wasfirst=first;first=false;if(wasfirst&&data.length===10&&data[0]===255&&data[1]===255&&data[2]===255&&data[3]===255&&data[4]==="p".charCodeAt(0)&&data[5]==="o".charCodeAt(0)&&data[6]==="r".charCodeAt(0)&&data[7]==="t".charCodeAt(0)){var newport=data[8]<<8|data[9];SOCKFS.websocket_sock_ops.removePeer(sock,peer);peer.port=newport;SOCKFS.websocket_sock_ops.addPeer(sock,peer);return}sock.recv_queue.push({addr:peer.addr,port:peer.port,data:data});Module["websocket"].emit("message",sock.stream.fd)}if(ENVIRONMENT_IS_NODE){peer.socket.on("open",handleOpen);peer.socket.on("message",function(data,isBinary){if(!isBinary){return}handleMessage(new Uint8Array(data).buffer)});peer.socket.on("close",function(){Module["websocket"].emit("close",sock.stream.fd)});peer.socket.on("error",function(error){sock.error=14;Module["websocket"].emit("error",[sock.stream.fd,sock.error,"ECONNREFUSED: Connection refused"])})}else{peer.socket.onopen=handleOpen;peer.socket.onclose=function(){Module["websocket"].emit("close",sock.stream.fd)};peer.socket.onmessage=function peer_socket_onmessage(event){handleMessage(event.data)};peer.socket.onerror=function(error){sock.error=14;Module["websocket"].emit("error",[sock.stream.fd,sock.error,"ECONNREFUSED: Connection refused"])}}},poll:function(sock){if(sock.type===1&&sock.server){return sock.pending.length?64|1:0}var mask=0;var dest=sock.type===1?SOCKFS.websocket_sock_ops.getPeer(sock,sock.daddr,sock.dport):null;if(sock.recv_queue.length||!dest||dest&&dest.socket.readyState===dest.socket.CLOSING||dest&&dest.socket.readyState===dest.socket.CLOSED){mask|=64|1}if(!dest||dest&&dest.socket.readyState===dest.socket.OPEN){mask|=4}if(dest&&dest.socket.readyState===dest.socket.CLOSING||dest&&dest.socket.readyState===dest.socket.CLOSED){mask|=16}return mask},ioctl:function(sock,request,arg){switch(request){case 21531:var bytes=0;if(sock.recv_queue.length){bytes=sock.recv_queue[0].data.length}HEAP32[arg>>2]=bytes;return 0;default:return 28}},close:function(sock){if(sock.server){try{sock.server.close()}catch(e){}sock.server=null}var peers=Object.keys(sock.peers);for(var i=0;i<peers.length;i++){var peer=sock.peers[peers[i]];try{peer.socket.close()}catch(e){}SOCKFS.websocket_sock_ops.removePeer(sock,peer)}return 0},bind:function(sock,addr,port){if(typeof sock.saddr!="undefined"||typeof sock.sport!="undefined"){throw new FS.ErrnoError(28)}sock.saddr=addr;sock.sport=port;if(sock.type===2){if(sock.server){sock.server.close();sock.server=null}try{sock.sock_ops.listen(sock,0)}catch(e){if(!(e instanceof FS.ErrnoError))throw e;if(e.errno!==138)throw e}}},connect:function(sock,addr,port){if(sock.server){throw new FS.ErrnoError(138)}if(typeof sock.daddr!="undefined"&&typeof sock.dport!="undefined"){var dest=SOCKFS.websocket_sock_ops.getPeer(sock,sock.daddr,sock.dport);if(dest){if(dest.socket.readyState===dest.socket.CONNECTING){throw new FS.ErrnoError(7)}else{throw new FS.ErrnoError(30)}}}var peer=SOCKFS.websocket_sock_ops.createPeer(sock,addr,port);sock.daddr=peer.addr;sock.dport=peer.port;throw new FS.ErrnoError(26)},listen:function(sock,backlog){if(!ENVIRONMENT_IS_NODE){throw new FS.ErrnoError(138)}},accept:function(listensock){if(!listensock.server||!listensock.pending.length){throw new FS.ErrnoError(28)}var newsock=listensock.pending.shift();newsock.stream.flags=listensock.stream.flags;return newsock},getname:function(sock,peer){var addr,port;if(peer){if(sock.daddr===undefined||sock.dport===undefined){throw new FS.ErrnoError(53)}addr=sock.daddr;port=sock.dport}else{addr=sock.saddr||0;port=sock.sport||0}return{addr:addr,port:port}},sendmsg:function(sock,buffer,offset,length,addr,port){if(sock.type===2){if(addr===undefined||port===undefined){addr=sock.daddr;port=sock.dport}if(addr===undefined||port===undefined){throw new FS.ErrnoError(17)}}else{addr=sock.daddr;port=sock.dport}var dest=SOCKFS.websocket_sock_ops.getPeer(sock,addr,port);if(sock.type===1){if(!dest||dest.socket.readyState===dest.socket.CLOSING||dest.socket.readyState===dest.socket.CLOSED){throw new FS.ErrnoError(53)}else if(dest.socket.readyState===dest.socket.CONNECTING){throw new FS.ErrnoError(6)}}if(ArrayBuffer.isView(buffer)){offset+=buffer.byteOffset;buffer=buffer.buffer}var data;data=buffer.slice(offset,offset+length);if(sock.type===2){if(!dest||dest.socket.readyState!==dest.socket.OPEN){if(!dest||dest.socket.readyState===dest.socket.CLOSING||dest.socket.readyState===dest.socket.CLOSED){dest=SOCKFS.websocket_sock_ops.createPeer(sock,addr,port)}dest.dgram_send_queue.push(data);return length}}try{dest.socket.send(data);return length}catch(e){throw new FS.ErrnoError(28)}},recvmsg:function(sock,length){if(sock.type===1&&sock.server){throw new FS.ErrnoError(53)}var queued=sock.recv_queue.shift();if(!queued){if(sock.type===1){var dest=SOCKFS.websocket_sock_ops.getPeer(sock,sock.daddr,sock.dport);if(!dest){throw new FS.ErrnoError(53)}if(dest.socket.readyState===dest.socket.CLOSING||dest.socket.readyState===dest.socket.CLOSED){return null}throw new FS.ErrnoError(6)}throw new FS.ErrnoError(6)}var queuedLength=queued.data.byteLength||queued.data.length;var queuedOffset=queued.data.byteOffset||0;var queuedBuffer=queued.data.buffer||queued.data;var bytesRead=Math.min(length,queuedLength);var res={buffer:new Uint8Array(queuedBuffer,queuedOffset,bytesRead),addr:queued.addr,port:queued.port};if(sock.type===1&&bytesRead<queuedLength){var bytesRemaining=queuedLength-bytesRead;queued.data=new Uint8Array(queuedBuffer,queuedOffset+bytesRead,bytesRemaining);sock.recv_queue.unshift(queued)}return res}}};function getSocketFromFD(fd){var socket=SOCKFS.getSocket(fd);if(!socket)throw new FS.ErrnoError(8);return socket}function setErrNo(value){HEAP32[___errno_location()>>2]=value;return value}function inetNtop4(addr){return(addr&255)+"."+(addr>>8&255)+"."+(addr>>16&255)+"."+(addr>>24&255)}function inetNtop6(ints){var str="";var word=0;var longest=0;var lastzero=0;var zstart=0;var len=0;var i=0;var parts=[ints[0]&65535,ints[0]>>16,ints[1]&65535,ints[1]>>16,ints[2]&65535,ints[2]>>16,ints[3]&65535,ints[3]>>16];var hasipv4=true;var v4part="";for(i=0;i<5;i++){if(parts[i]!==0){hasipv4=false;break}}if(hasipv4){v4part=inetNtop4(parts[6]|parts[7]<<16);if(parts[5]===-1){str="::ffff:";str+=v4part;return str}if(parts[5]===0){str="::";if(v4part==="0.0.0.0")v4part="";if(v4part==="0.0.0.1")v4part="1";str+=v4part;return str}}for(word=0;word<8;word++){if(parts[word]===0){if(word-lastzero>1){len=0}lastzero=word;len++}if(len>longest){longest=len;zstart=word-longest+1}}for(word=0;word<8;word++){if(longest>1){if(parts[word]===0&&word>=zstart&&word<zstart+longest){if(word===zstart){str+=":";if(zstart===0)str+=":"}continue}}str+=Number(_ntohs(parts[word]&65535)).toString(16);str+=word<7?":":""}return str}function readSockaddr(sa,salen){var family=HEAP16[sa>>1];var port=_ntohs(HEAPU16[sa+2>>1]);var addr;switch(family){case 2:if(salen!==16){return{errno:28}}addr=HEAP32[sa+4>>2];addr=inetNtop4(addr);break;case 10:if(salen!==28){return{errno:28}}addr=[HEAP32[sa+8>>2],HEAP32[sa+12>>2],HEAP32[sa+16>>2],HEAP32[sa+20>>2]];addr=inetNtop6(addr);break;default:return{errno:5}}return{family:family,addr:addr,port:port}}function inetPton4(str){var b=str.split(".");for(var i=0;i<4;i++){var tmp=Number(b[i]);if(isNaN(tmp))return null;b[i]=tmp}return(b[0]|b[1]<<8|b[2]<<16|b[3]<<24)>>>0}function jstoi_q(str){return parseInt(str)}function inetPton6(str){var words;var w,offset,z;var valid6regx=/^((?=.*::)(?!.*::.+::)(::)?([\dA-F]{1,4}:(:|\b)|){5}|([\dA-F]{1,4}:){6})((([\dA-F]{1,4}((?!\3)::|:\b|$))|(?!\2\3)){2}|(((2[0-4]|1\d|[1-9])?\d|25[0-5])\.?\b){4})$/i;var parts=[];if(!valid6regx.test(str)){return null}if(str==="::"){return[0,0,0,0,0,0,0,0]}if(str.startsWith("::")){str=str.replace("::","Z:")}else{str=str.replace("::",":Z:")}if(str.indexOf(".")>0){str=str.replace(new RegExp("[.]","g"),":");words=str.split(":");words[words.length-4]=jstoi_q(words[words.length-4])+jstoi_q(words[words.length-3])*256;words[words.length-3]=jstoi_q(words[words.length-2])+jstoi_q(words[words.length-1])*256;words=words.slice(0,words.length-2)}else{words=str.split(":")}offset=0;z=0;for(w=0;w<words.length;w++){if(typeof words[w]=="string"){if(words[w]==="Z"){for(z=0;z<8-words.length+1;z++){parts[w+z]=0}offset=z-1}else{parts[w+offset]=_htons(parseInt(words[w],16))}}else{parts[w+offset]=words[w]}}return[parts[1]<<16|parts[0],parts[3]<<16|parts[2],parts[5]<<16|parts[4],parts[7]<<16|parts[6]]}var DNS={address_map:{id:1,addrs:{},names:{}},lookup_name:function(name){var res=inetPton4(name);if(res!==null){return name}res=inetPton6(name);if(res!==null){return name}var addr;if(DNS.address_map.addrs[name]){addr=DNS.address_map.addrs[name]}else{var id=DNS.address_map.id++;assert(id<65535,"exceeded max address mappings of 65535");addr="172.29."+(id&255)+"."+(id&65280);DNS.address_map.names[addr]=name;DNS.address_map.addrs[name]=addr}return addr},lookup_addr:function(addr){if(DNS.address_map.names[addr]){return DNS.address_map.names[addr]}return null}};function getSocketAddress(addrp,addrlen,allowNull){if(allowNull&&addrp===0)return null;var info=readSockaddr(addrp,addrlen);if(info.errno)throw new FS.ErrnoError(info.errno);info.addr=DNS.lookup_addr(info.addr)||info.addr;return info}function ___syscall_connect(fd,addr,addrlen){try{var sock=getSocketFromFD(fd);var info=getSocketAddress(addr,addrlen);sock.sock_ops.connect(sock,info.addr,info.port);return 0}catch(e){if(typeof FS=="undefined"||!(e instanceof FS.ErrnoError))throw e;return-e.errno}}function ___syscall_fcntl64(fd,cmd,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(fd);switch(cmd){case 0:{var arg=SYSCALLS.get();if(arg<0){return-28}var newStream;newStream=FS.createStream(stream,arg);return newStream.fd}case 1:case 2:return 0;case 3:return stream.flags;case 4:{var arg=SYSCALLS.get();stream.flags|=arg;return 0}case 5:{var arg=SYSCALLS.get();var offset=0;HEAP16[arg+offset>>1]=2;return 0}case 6:case 7:return 0;case 16:case 8:return-28;case 9:setErrNo(28);return-1;default:{return-28}}}catch(e){if(typeof FS=="undefined"||!(e instanceof FS.ErrnoError))throw e;return-e.errno}}function ___syscall_fstat64(fd,buf){try{var stream=SYSCALLS.getStreamFromFD(fd);return SYSCALLS.doStat(FS.stat,stream.path,buf)}catch(e){if(typeof FS=="undefined"||!(e instanceof FS.ErrnoError))throw e;return-e.errno}}function ___syscall_getcwd(buf,size){try{if(size===0)return-28;var cwd=FS.cwd();var cwdLengthInBytes=lengthBytesUTF8(cwd)+1;if(size<cwdLengthInBytes)return-68;stringToUTF8(cwd,buf,size);return cwdLengthInBytes}catch(e){if(typeof FS=="undefined"||!(e instanceof FS.ErrnoError))throw e;return-e.errno}}function ___syscall_ioctl(fd,op,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(fd);switch(op){case 21509:case 21505:{if(!stream.tty)return-59;return 0}case 21510:case 21511:case 21512:case 21506:case 21507:case 21508:{if(!stream.tty)return-59;return 0}case 21519:{if(!stream.tty)return-59;var argp=SYSCALLS.get();HEAP32[argp>>2]=0;return 0}case 21520:{if(!stream.tty)return-59;return-28}case 21531:{var argp=SYSCALLS.get();return FS.ioctl(stream,op,argp)}case 21523:{if(!stream.tty)return-59;return 0}case 21524:{if(!stream.tty)return-59;return 0}default:return-28}}catch(e){if(typeof FS=="undefined"||!(e instanceof FS.ErrnoError))throw e;return-e.errno}}function ___syscall_lstat64(path,buf){try{path=SYSCALLS.getStr(path);return SYSCALLS.doStat(FS.lstat,path,buf)}catch(e){if(typeof FS=="undefined"||!(e instanceof FS.ErrnoError))throw e;return-e.errno}}function ___syscall_mkdirat(dirfd,path,mode){try{path=SYSCALLS.getStr(path);path=SYSCALLS.calculateAt(dirfd,path);path=PATH.normalize(path);if(path[path.length-1]==="/")path=path.substr(0,path.length-1);FS.mkdir(path,mode,0);return 0}catch(e){if(typeof FS=="undefined"||!(e instanceof FS.ErrnoError))throw e;return-e.errno}}function ___syscall_newfstatat(dirfd,path,buf,flags){try{path=SYSCALLS.getStr(path);var nofollow=flags&256;var allowEmpty=flags&4096;flags=flags&~6400;path=SYSCALLS.calculateAt(dirfd,path,allowEmpty);return SYSCALLS.doStat(nofollow?FS.lstat:FS.stat,path,buf)}catch(e){if(typeof FS=="undefined"||!(e instanceof FS.ErrnoError))throw e;return-e.errno}}function ___syscall_openat(dirfd,path,flags,varargs){SYSCALLS.varargs=varargs;try{path=SYSCALLS.getStr(path);path=SYSCALLS.calculateAt(dirfd,path);var mode=varargs?SYSCALLS.get():0;return FS.open(path,flags,mode).fd}catch(e){if(typeof FS=="undefined"||!(e instanceof FS.ErrnoError))throw e;return-e.errno}}var PIPEFS={BUCKET_BUFFER_SIZE:8192,mount:function(mount){return FS.createNode(null,"/",16384|511,0)},createPipe:function(){var pipe={buckets:[],refcnt:2};pipe.buckets.push({buffer:new Uint8Array(PIPEFS.BUCKET_BUFFER_SIZE),offset:0,roffset:0});var rName=PIPEFS.nextname();var wName=PIPEFS.nextname();var rNode=FS.createNode(PIPEFS.root,rName,4096,0);var wNode=FS.createNode(PIPEFS.root,wName,4096,0);rNode.pipe=pipe;wNode.pipe=pipe;var readableStream=FS.createStream({path:rName,node:rNode,flags:0,seekable:false,stream_ops:PIPEFS.stream_ops});rNode.stream=readableStream;var writableStream=FS.createStream({path:wName,node:wNode,flags:1,seekable:false,stream_ops:PIPEFS.stream_ops});wNode.stream=writableStream;return{readable_fd:readableStream.fd,writable_fd:writableStream.fd}},stream_ops:{poll:function(stream){var pipe=stream.node.pipe;if((stream.flags&2097155)===1){return 256|4}if(pipe.buckets.length>0){for(var i=0;i<pipe.buckets.length;i++){var bucket=pipe.buckets[i];if(bucket.offset-bucket.roffset>0){return 64|1}}}return 0},ioctl:function(stream,request,varargs){return 28},fsync:function(stream){return 28},read:function(stream,buffer,offset,length,position){var pipe=stream.node.pipe;var currentLength=0;for(var i=0;i<pipe.buckets.length;i++){var bucket=pipe.buckets[i];currentLength+=bucket.offset-bucket.roffset}assert(buffer instanceof ArrayBuffer||ArrayBuffer.isView(buffer));var data=buffer.subarray(offset,offset+length);if(length<=0){return 0}if(currentLength==0){throw new FS.ErrnoError(6)}var toRead=Math.min(currentLength,length);var totalRead=toRead;var toRemove=0;for(var i=0;i<pipe.buckets.length;i++){var currBucket=pipe.buckets[i];var bucketSize=currBucket.offset-currBucket.roffset;if(toRead<=bucketSize){var tmpSlice=currBucket.buffer.subarray(currBucket.roffset,currBucket.offset);if(toRead<bucketSize){tmpSlice=tmpSlice.subarray(0,toRead);currBucket.roffset+=toRead}else{toRemove++}data.set(tmpSlice);break}else{var tmpSlice=currBucket.buffer.subarray(currBucket.roffset,currBucket.offset);data.set(tmpSlice);data=data.subarray(tmpSlice.byteLength);toRead-=tmpSlice.byteLength;toRemove++}}if(toRemove&&toRemove==pipe.buckets.length){toRemove--;pipe.buckets[toRemove].offset=0;pipe.buckets[toRemove].roffset=0}pipe.buckets.splice(0,toRemove);return totalRead},write:function(stream,buffer,offset,length,position){var pipe=stream.node.pipe;assert(buffer instanceof ArrayBuffer||ArrayBuffer.isView(buffer));var data=buffer.subarray(offset,offset+length);var dataLen=data.byteLength;if(dataLen<=0){return 0}var currBucket=null;if(pipe.buckets.length==0){currBucket={buffer:new Uint8Array(PIPEFS.BUCKET_BUFFER_SIZE),offset:0,roffset:0};pipe.buckets.push(currBucket)}else{currBucket=pipe.buckets[pipe.buckets.length-1]}assert(currBucket.offset<=PIPEFS.BUCKET_BUFFER_SIZE);var freeBytesInCurrBuffer=PIPEFS.BUCKET_BUFFER_SIZE-currBucket.offset;if(freeBytesInCurrBuffer>=dataLen){currBucket.buffer.set(data,currBucket.offset);currBucket.offset+=dataLen;return dataLen}else if(freeBytesInCurrBuffer>0){currBucket.buffer.set(data.subarray(0,freeBytesInCurrBuffer),currBucket.offset);currBucket.offset+=freeBytesInCurrBuffer;data=data.subarray(freeBytesInCurrBuffer,data.byteLength)}var numBuckets=data.byteLength/PIPEFS.BUCKET_BUFFER_SIZE|0;var remElements=data.byteLength%PIPEFS.BUCKET_BUFFER_SIZE;for(var i=0;i<numBuckets;i++){var newBucket={buffer:new Uint8Array(PIPEFS.BUCKET_BUFFER_SIZE),offset:PIPEFS.BUCKET_BUFFER_SIZE,roffset:0};pipe.buckets.push(newBucket);newBucket.buffer.set(data.subarray(0,PIPEFS.BUCKET_BUFFER_SIZE));data=data.subarray(PIPEFS.BUCKET_BUFFER_SIZE,data.byteLength)}if(remElements>0){var newBucket={buffer:new Uint8Array(PIPEFS.BUCKET_BUFFER_SIZE),offset:data.byteLength,roffset:0};pipe.buckets.push(newBucket);newBucket.buffer.set(data)}return dataLen},close:function(stream){var pipe=stream.node.pipe;pipe.refcnt--;if(pipe.refcnt===0){pipe.buckets=null}}},nextname:function(){if(!PIPEFS.nextname.current){PIPEFS.nextname.current=0}return"pipe["+PIPEFS.nextname.current+++"]"}};function ___syscall_pipe(fdPtr){try{if(fdPtr==0){throw new FS.ErrnoError(21)}var res=PIPEFS.createPipe();HEAP32[fdPtr>>2]=res.readable_fd;HEAP32[fdPtr+4>>2]=res.writable_fd;return 0}catch(e){if(typeof FS=="undefined"||!(e instanceof FS.ErrnoError))throw e;return-e.errno}}function ___syscall_poll(fds,nfds,timeout){try{var nonzero=0;for(var i=0;i<nfds;i++){var pollfd=fds+8*i;var fd=HEAP32[pollfd>>2];var events=HEAP16[pollfd+4>>1];var mask=32;var stream=FS.getStream(fd);if(stream){mask=SYSCALLS.DEFAULT_POLLMASK;if(stream.stream_ops.poll){mask=stream.stream_ops.poll(stream)}}mask&=events|8|16;if(mask)nonzero++;HEAP16[pollfd+6>>1]=mask}return nonzero}catch(e){if(typeof FS=="undefined"||!(e instanceof FS.ErrnoError))throw e;return-e.errno}}function ___syscall_socket(domain,type,protocol){try{var sock=SOCKFS.createSocket(domain,type,protocol);return sock.stream.fd}catch(e){if(typeof FS=="undefined"||!(e instanceof FS.ErrnoError))throw e;return-e.errno}}function ___syscall_stat64(path,buf){try{path=SYSCALLS.getStr(path);return SYSCALLS.doStat(FS.stat,path,buf)}catch(e){if(typeof FS=="undefined"||!(e instanceof FS.ErrnoError))throw e;return-e.errno}}var nowIsMonotonic=true;function __emscripten_get_now_is_monotonic(){return nowIsMonotonic}function readI53FromI64(ptr){return HEAPU32[ptr>>2]+HEAP32[ptr+4>>2]*4294967296}function __gmtime_js(time,tmPtr){var date=new Date(readI53FromI64(time)*1e3);HEAP32[tmPtr>>2]=date.getUTCSeconds();HEAP32[tmPtr+4>>2]=date.getUTCMinutes();HEAP32[tmPtr+8>>2]=date.getUTCHours();HEAP32[tmPtr+12>>2]=date.getUTCDate();HEAP32[tmPtr+16>>2]=date.getUTCMonth();HEAP32[tmPtr+20>>2]=date.getUTCFullYear()-1900;HEAP32[tmPtr+24>>2]=date.getUTCDay();var start=Date.UTC(date.getUTCFullYear(),0,1,0,0,0,0);var yday=(date.getTime()-start)/(1e3*60*60*24)|0;HEAP32[tmPtr+28>>2]=yday}function __isLeapYear(year){return year%4===0&&(year%100!==0||year%400===0)}var __MONTH_DAYS_LEAP_CUMULATIVE=[0,31,60,91,121,152,182,213,244,274,305,335];var __MONTH_DAYS_REGULAR_CUMULATIVE=[0,31,59,90,120,151,181,212,243,273,304,334];function __yday_from_date(date){var isLeapYear=__isLeapYear(date.getFullYear());var monthDaysCumulative=isLeapYear?__MONTH_DAYS_LEAP_CUMULATIVE:__MONTH_DAYS_REGULAR_CUMULATIVE;var yday=monthDaysCumulative[date.getMonth()]+date.getDate()-1;return yday}function __localtime_js(time,tmPtr){var date=new Date(readI53FromI64(time)*1e3);HEAP32[tmPtr>>2]=date.getSeconds();HEAP32[tmPtr+4>>2]=date.getMinutes();HEAP32[tmPtr+8>>2]=date.getHours();HEAP32[tmPtr+12>>2]=date.getDate();HEAP32[tmPtr+16>>2]=date.getMonth();HEAP32[tmPtr+20>>2]=date.getFullYear()-1900;HEAP32[tmPtr+24>>2]=date.getDay();var yday=__yday_from_date(date)|0;HEAP32[tmPtr+28>>2]=yday;HEAP32[tmPtr+36>>2]=-(date.getTimezoneOffset()*60);var start=new Date(date.getFullYear(),0,1);var summerOffset=new Date(date.getFullYear(),6,1).getTimezoneOffset();var winterOffset=start.getTimezoneOffset();var dst=(summerOffset!=winterOffset&&date.getTimezoneOffset()==Math.min(winterOffset,summerOffset))|0;HEAP32[tmPtr+32>>2]=dst}function allocateUTF8(str){var size=lengthBytesUTF8(str)+1;var ret=_malloc(size);if(ret)stringToUTF8Array(str,HEAP8,ret,size);return ret}function __tzset_js(timezone,daylight,tzname){var currentYear=(new Date).getFullYear();var winter=new Date(currentYear,0,1);var summer=new Date(currentYear,6,1);var winterOffset=winter.getTimezoneOffset();var summerOffset=summer.getTimezoneOffset();var stdTimezoneOffset=Math.max(winterOffset,summerOffset);HEAPU32[timezone>>2]=stdTimezoneOffset*60;HEAP32[daylight>>2]=Number(winterOffset!=summerOffset);function extractZone(date){var match=date.toTimeString().match(/\(([A-Za-z ]+)\)$/);return match?match[1]:"GMT"}var winterName=extractZone(winter);var summerName=extractZone(summer);var winterNamePtr=allocateUTF8(winterName);var summerNamePtr=allocateUTF8(summerName);if(summerOffset<winterOffset){HEAPU32[tzname>>2]=winterNamePtr;HEAPU32[tzname+4>>2]=summerNamePtr}else{HEAPU32[tzname>>2]=summerNamePtr;HEAPU32[tzname+4>>2]=winterNamePtr}}function _abort(){abort("")}var readEmAsmArgsArray=[];function readEmAsmArgs(sigPtr,buf){readEmAsmArgsArray.length=0;var ch;buf>>=2;while(ch=HEAPU8[sigPtr++]){buf+=ch!=105&buf;readEmAsmArgsArray.push(ch==105?HEAP32[buf]:HEAPF64[buf++>>1]);++buf}return readEmAsmArgsArray}function runEmAsmFunction(code,sigPtr,argbuf){var args=readEmAsmArgs(sigPtr,argbuf);return ASM_CONSTS[code].apply(null,args)}function _emscripten_asm_const_int(code,sigPtr,argbuf){return runEmAsmFunction(code,sigPtr,argbuf)}function _emscripten_date_now(){return Date.now()}var _emscripten_get_now;_emscripten_get_now=()=>performance.now();function _emscripten_memcpy_big(dest,src,num){HEAPU8.copyWithin(dest,src,src+num)}function getHeapMax(){return 134217728}function emscripten_realloc_buffer(size){try{wasmMemory.grow(size-buffer.byteLength+65535>>>16);updateGlobalBufferAndViews(wasmMemory.buffer);return 1}catch(e){}}function _emscripten_resize_heap(requestedSize){var oldSize=HEAPU8.length;requestedSize=requestedSize>>>0;var maxHeapSize=getHeapMax();if(requestedSize>maxHeapSize){return false}let alignUp=(x,multiple)=>x+(multiple-x%multiple)%multiple;for(var cutDown=1;cutDown<=4;cutDown*=2){var overGrownHeapSize=oldSize*(1+.2/cutDown);overGrownHeapSize=Math.min(overGrownHeapSize,requestedSize+100663296);var newSize=Math.min(maxHeapSize,alignUp(Math.max(requestedSize,overGrownHeapSize),65536));var replacement=emscripten_realloc_buffer(newSize);if(replacement){return true}}return false}var ENV={};function getExecutableName(){return thisProgram||"./this.program"}function getEnvStrings(){if(!getEnvStrings.strings){var lang=(typeof navigator=="object"&&navigator.languages&&navigator.languages[0]||"C").replace("-","_")+".UTF-8";var env={"USER":"web_user","LOGNAME":"web_user","PATH":"/","PWD":"/","HOME":"/home/web_user","LANG":lang,"_":getExecutableName()};for(var x in ENV){if(ENV[x]===undefined)delete env[x];else env[x]=ENV[x]}var strings=[];for(var x in env){strings.push(x+"="+env[x])}getEnvStrings.strings=strings}return getEnvStrings.strings}function writeAsciiToMemory(str,buffer,dontAddNull){for(var i=0;i<str.length;++i){HEAP8[buffer++>>0]=str.charCodeAt(i)}if(!dontAddNull)HEAP8[buffer>>0]=0}function _environ_get(__environ,environ_buf){var bufSize=0;getEnvStrings().forEach(function(string,i){var ptr=environ_buf+bufSize;HEAPU32[__environ+i*4>>2]=ptr;writeAsciiToMemory(string,ptr);bufSize+=string.length+1});return 0}function _environ_sizes_get(penviron_count,penviron_buf_size){var strings=getEnvStrings();HEAPU32[penviron_count>>2]=strings.length;var bufSize=0;strings.forEach(function(string){bufSize+=string.length+1});HEAPU32[penviron_buf_size>>2]=bufSize;return 0}function _fd_close(fd){try{var stream=SYSCALLS.getStreamFromFD(fd);FS.close(stream);return 0}catch(e){if(typeof FS=="undefined"||!(e instanceof FS.ErrnoError))throw e;return e.errno}}function doReadv(stream,iov,iovcnt,offset){var ret=0;for(var i=0;i<iovcnt;i++){var ptr=HEAPU32[iov>>2];var len=HEAPU32[iov+4>>2];iov+=8;var curr=FS.read(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr;if(curr<len)break}return ret}function _fd_read(fd,iov,iovcnt,pnum){try{var stream=SYSCALLS.getStreamFromFD(fd);var num=doReadv(stream,iov,iovcnt);HEAPU32[pnum>>2]=num;return 0}catch(e){if(typeof FS=="undefined"||!(e instanceof FS.ErrnoError))throw e;return e.errno}}function convertI32PairToI53Checked(lo,hi){return hi+2097152>>>0<4194305-!!lo?(lo>>>0)+hi*4294967296:NaN}function _fd_seek(fd,offset_low,offset_high,whence,newOffset){try{var offset=convertI32PairToI53Checked(offset_low,offset_high);if(isNaN(offset))return 61;var stream=SYSCALLS.getStreamFromFD(fd);FS.llseek(stream,offset,whence);tempI64=[stream.position>>>0,(tempDouble=stream.position,+Math.abs(tempDouble)>=1?tempDouble>0?(Math.min(+Math.floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[newOffset>>2]=tempI64[0],HEAP32[newOffset+4>>2]=tempI64[1];if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS=="undefined"||!(e instanceof FS.ErrnoError))throw e;return e.errno}}function doWritev(stream,iov,iovcnt,offset){var ret=0;for(var i=0;i<iovcnt;i++){var ptr=HEAPU32[iov>>2];var len=HEAPU32[iov+4>>2];iov+=8;var curr=FS.write(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr}return ret}function _fd_write(fd,iov,iovcnt,pnum){try{var stream=SYSCALLS.getStreamFromFD(fd);var num=doWritev(stream,iov,iovcnt);HEAPU32[pnum>>2]=num;return 0}catch(e){if(typeof FS=="undefined"||!(e instanceof FS.ErrnoError))throw e;return e.errno}}function _shmat(){err("missing function: shmat");abort(-1)}function _shmctl(){err("missing function: shmctl");abort(-1)}function _shmdt(){err("missing function: shmdt");abort(-1)}function _shmget(){err("missing function: shmget");abort(-1)}function __arraySum(array,index){var sum=0;for(var i=0;i<=index;sum+=array[i++]){}return sum}var __MONTH_DAYS_LEAP=[31,29,31,30,31,30,31,31,30,31,30,31];var __MONTH_DAYS_REGULAR=[31,28,31,30,31,30,31,31,30,31,30,31];function __addDays(date,days){var newDate=new Date(date.getTime());while(days>0){var leap=__isLeapYear(newDate.getFullYear());var currentMonth=newDate.getMonth();var daysInCurrentMonth=(leap?__MONTH_DAYS_LEAP:__MONTH_DAYS_REGULAR)[currentMonth];if(days>daysInCurrentMonth-newDate.getDate()){days-=daysInCurrentMonth-newDate.getDate()+1;newDate.setDate(1);if(currentMonth<11){newDate.setMonth(currentMonth+1)}else{newDate.setMonth(0);newDate.setFullYear(newDate.getFullYear()+1)}}else{newDate.setDate(newDate.getDate()+days);return newDate}}return newDate}function writeArrayToMemory(array,buffer){HEAP8.set(array,buffer)}function _strftime(s,maxsize,format,tm){var tm_zone=HEAP32[tm+40>>2];var date={tm_sec:HEAP32[tm>>2],tm_min:HEAP32[tm+4>>2],tm_hour:HEAP32[tm+8>>2],tm_mday:HEAP32[tm+12>>2],tm_mon:HEAP32[tm+16>>2],tm_year:HEAP32[tm+20>>2],tm_wday:HEAP32[tm+24>>2],tm_yday:HEAP32[tm+28>>2],tm_isdst:HEAP32[tm+32>>2],tm_gmtoff:HEAP32[tm+36>>2],tm_zone:tm_zone?UTF8ToString(tm_zone):""};var pattern=UTF8ToString(format);var EXPANSION_RULES_1={"%c":"%a %b %d %H:%M:%S %Y","%D":"%m/%d/%y","%F":"%Y-%m-%d","%h":"%b","%r":"%I:%M:%S %p","%R":"%H:%M","%T":"%H:%M:%S","%x":"%m/%d/%y","%X":"%H:%M:%S","%Ec":"%c","%EC":"%C","%Ex":"%m/%d/%y","%EX":"%H:%M:%S","%Ey":"%y","%EY":"%Y","%Od":"%d","%Oe":"%e","%OH":"%H","%OI":"%I","%Om":"%m","%OM":"%M","%OS":"%S","%Ou":"%u","%OU":"%U","%OV":"%V","%Ow":"%w","%OW":"%W","%Oy":"%y"};for(var rule in EXPANSION_RULES_1){pattern=pattern.replace(new RegExp(rule,"g"),EXPANSION_RULES_1[rule])}var WEEKDAYS=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"];var MONTHS=["January","February","March","April","May","June","July","August","September","October","November","December"];function leadingSomething(value,digits,character){var str=typeof value=="number"?value.toString():value||"";while(str.length<digits){str=character[0]+str}return str}function leadingNulls(value,digits){return leadingSomething(value,digits,"0")}function compareByDay(date1,date2){function sgn(value){return value<0?-1:value>0?1:0}var compare;if((compare=sgn(date1.getFullYear()-date2.getFullYear()))===0){if((compare=sgn(date1.getMonth()-date2.getMonth()))===0){compare=sgn(date1.getDate()-date2.getDate())}}return compare}function getFirstWeekStartDate(janFourth){switch(janFourth.getDay()){case 0:return new Date(janFourth.getFullYear()-1,11,29);case 1:return janFourth;case 2:return new Date(janFourth.getFullYear(),0,3);case 3:return new Date(janFourth.getFullYear(),0,2);case 4:return new Date(janFourth.getFullYear(),0,1);case 5:return new Date(janFourth.getFullYear()-1,11,31);case 6:return new Date(janFourth.getFullYear()-1,11,30)}}function getWeekBasedYear(date){var thisDate=__addDays(new Date(date.tm_year+1900,0,1),date.tm_yday);var janFourthThisYear=new Date(thisDate.getFullYear(),0,4);var janFourthNextYear=new Date(thisDate.getFullYear()+1,0,4);var firstWeekStartThisYear=getFirstWeekStartDate(janFourthThisYear);var firstWeekStartNextYear=getFirstWeekStartDate(janFourthNextYear);if(compareByDay(firstWeekStartThisYear,thisDate)<=0){if(compareByDay(firstWeekStartNextYear,thisDate)<=0){return thisDate.getFullYear()+1}return thisDate.getFullYear()}return thisDate.getFullYear()-1}var EXPANSION_RULES_2={"%a":function(date){return WEEKDAYS[date.tm_wday].substring(0,3)},"%A":function(date){return WEEKDAYS[date.tm_wday]},"%b":function(date){return MONTHS[date.tm_mon].substring(0,3)},"%B":function(date){return MONTHS[date.tm_mon]},"%C":function(date){var year=date.tm_year+1900;return leadingNulls(year/100|0,2)},"%d":function(date){return leadingNulls(date.tm_mday,2)},"%e":function(date){return leadingSomething(date.tm_mday,2," ")},"%g":function(date){return getWeekBasedYear(date).toString().substring(2)},"%G":function(date){return getWeekBasedYear(date)},"%H":function(date){return leadingNulls(date.tm_hour,2)},"%I":function(date){var twelveHour=date.tm_hour;if(twelveHour==0)twelveHour=12;else if(twelveHour>12)twelveHour-=12;return leadingNulls(twelveHour,2)},"%j":function(date){return leadingNulls(date.tm_mday+__arraySum(__isLeapYear(date.tm_year+1900)?__MONTH_DAYS_LEAP:__MONTH_DAYS_REGULAR,date.tm_mon-1),3)},"%m":function(date){return leadingNulls(date.tm_mon+1,2)},"%M":function(date){return leadingNulls(date.tm_min,2)},"%n":function(){return"\n"},"%p":function(date){if(date.tm_hour>=0&&date.tm_hour<12){return"AM"}return"PM"},"%S":function(date){return leadingNulls(date.tm_sec,2)},"%t":function(){return"\t"},"%u":function(date){return date.tm_wday||7},"%U":function(date){var days=date.tm_yday+7-date.tm_wday;return leadingNulls(Math.floor(days/7),2)},"%V":function(date){var val=Math.floor((date.tm_yday+7-(date.tm_wday+6)%7)/7);if((date.tm_wday+371-date.tm_yday-2)%7<=2){val++}if(!val){val=52;var dec31=(date.tm_wday+7-date.tm_yday-1)%7;if(dec31==4||dec31==5&&__isLeapYear(date.tm_year%400-1)){val++}}else if(val==53){var jan1=(date.tm_wday+371-date.tm_yday)%7;if(jan1!=4&&(jan1!=3||!__isLeapYear(date.tm_year)))val=1}return leadingNulls(val,2)},"%w":function(date){return date.tm_wday},"%W":function(date){var days=date.tm_yday+7-(date.tm_wday+6)%7;return leadingNulls(Math.floor(days/7),2)},"%y":function(date){return(date.tm_year+1900).toString().substring(2)},"%Y":function(date){return date.tm_year+1900},"%z":function(date){var off=date.tm_gmtoff;var ahead=off>=0;off=Math.abs(off)/60;off=off/60*100+off%60;return(ahead?"+":"-")+String("0000"+off).slice(-4)},"%Z":function(date){return date.tm_zone},"%%":function(){return"%"}};pattern=pattern.replace(/%%/g,"\0\0");for(var rule in EXPANSION_RULES_2){if(pattern.includes(rule)){pattern=pattern.replace(new RegExp(rule,"g"),EXPANSION_RULES_2[rule](date))}}pattern=pattern.replace(/\0\0/g,"%");var bytes=intArrayFromString(pattern,false);if(bytes.length>maxsize){return 0}writeArrayToMemory(bytes,s);return bytes.length-1}function _strftime_l(s,maxsize,format,tm,loc){return _strftime(s,maxsize,format,tm)}function getCFunc(ident) { if (!Module["zoomf"]) { Module["zoomf"] = {} } if (!Module["zoomf"]["_" + ident]) { return (Module["zoomf"]["_" + ident] = function () { return (Module["_" + ident] = Module["asm"][ident]).apply(null, arguments) }) } else { return Module["zoomf"]["_" + ident] } }function ccall(ident,returnType,argTypes,args,opts){var toC={"string":str=>{var ret=0;if(str!==null&&str!==undefined&&str!==0){var len=(str.length<<2)+1;ret=stackAlloc(len);stringToUTF8(str,ret,len)}return ret},"array":arr=>{var ret=stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}};function convertReturnValue(ret){if(returnType==="string"){return UTF8ToString(ret)}if(returnType==="boolean")return Boolean(ret);return ret}var func=getCFunc(ident);var cArgs=[];var stack=0;if(args){for(var i=0;i<args.length;i++){var converter=toC[argTypes[i]];if(converter){if(stack===0)stack=stackSave();cArgs[i]=converter(args[i])}else{cArgs[i]=args[i]}}}var ret=func.apply(null,cArgs);function onDone(ret){if(stack!==0)stackRestore(stack);return convertReturnValue(ret)}ret=onDone(ret);return ret}function cwrap(ident,returnType,argTypes,opts){argTypes=argTypes||[];var numericArgs=argTypes.every(type=>type==="number"||type==="boolean");var numericRet=returnType!=="string";if(numericRet&&numericArgs&&!opts){return getCFunc(ident)}return function(){return ccall(ident,returnType,argTypes,arguments,opts)}}var FSNode=function(parent,name,mode,rdev){if(!parent){parent=this}this.parent=parent;this.mount=parent.mount;this.mounted=null;this.id=FS.nextInode++;this.name=name;this.mode=mode;this.node_ops={};this.stream_ops={};this.rdev=rdev};var readMode=292|73;var writeMode=146;Object.defineProperties(FSNode.prototype,{read:{get:function(){return(this.mode&readMode)===readMode},set:function(val){val?this.mode|=readMode:this.mode&=~readMode}},write:{get:function(){return(this.mode&writeMode)===writeMode},set:function(val){val?this.mode|=writeMode:this.mode&=~writeMode}},isFolder:{get:function(){return FS.isDir(this.mode)}},isDevice:{get:function(){return FS.isChrdev(this.mode)}}});FS.FSNode=FSNode;FS.staticInit();var asmLibraryArg={"__assert_fail":___assert_fail,"__cxa_allocate_exception":___cxa_allocate_exception,"__cxa_throw":___cxa_throw,"__syscall__newselect":___syscall__newselect,"__syscall_connect":___syscall_connect,"__syscall_fcntl64":___syscall_fcntl64,"__syscall_fstat64":___syscall_fstat64,"__syscall_getcwd":___syscall_getcwd,"__syscall_ioctl":___syscall_ioctl,"__syscall_lstat64":___syscall_lstat64,"__syscall_mkdirat":___syscall_mkdirat,"__syscall_newfstatat":___syscall_newfstatat,"__syscall_openat":___syscall_openat,"__syscall_pipe":___syscall_pipe,"__syscall_poll":___syscall_poll,"__syscall_socket":___syscall_socket,"__syscall_stat64":___syscall_stat64,"_emscripten_get_now_is_monotonic":__emscripten_get_now_is_monotonic,"_gmtime_js":__gmtime_js,"_localtime_js":__localtime_js,"_tzset_js":__tzset_js,"abort":_abort,"emscripten_asm_const_int":_emscripten_asm_const_int,"emscripten_date_now":_emscripten_date_now,"emscripten_get_now":_emscripten_get_now,"emscripten_memcpy_big":_emscripten_memcpy_big,"emscripten_resize_heap":_emscripten_resize_heap,"environ_get":_environ_get,"environ_sizes_get":_environ_sizes_get,"fd_close":_fd_close,"fd_read":_fd_read,"fd_seek":_fd_seek,"fd_write":_fd_write,"memory":wasmMemory,"shmat":_shmat,"shmctl":_shmctl,"shmdt":_shmdt,"shmget":_shmget,"strftime":_strftime,"strftime_l":_strftime_l};var asm=createWasm();var ___wasm_call_ctors=Module["___wasm_call_ctors"]=function(){return(___wasm_call_ctors=Module["___wasm_call_ctors"]=Module["asm"]["__wasm_call_ctors"]).apply(null,arguments)};var _malloc=Module["_malloc"]=function(){return(_malloc=Module["_malloc"]=Module["asm"]["malloc"]).apply(null,arguments)};var __Audio_Init=Module["__Audio_Init"]=function(){return(__Audio_Init=Module["__Audio_Init"]=Module["asm"]["_Audio_Init"]).apply(null,arguments)};var __Audio_UnInit=Module["__Audio_UnInit"]=function(){return(__Audio_UnInit=Module["__Audio_UnInit"]=Module["asm"]["_Audio_UnInit"]).apply(null,arguments)};var __Deliver_Recorded_Data=Module["__Deliver_Recorded_Data"]=function(){return(__Deliver_Recorded_Data=Module["__Deliver_Recorded_Data"]=Module["asm"]["_Deliver_Recorded_Data"]).apply(null,arguments)};var __Audio_Decode=Module["__Audio_Decode"]=function(){return(__Audio_Decode=Module["__Audio_Decode"]=Module["asm"]["_Audio_Decode"]).apply(null,arguments)};var __Put_Pre_Aec_Data=Module["__Put_Pre_Aec_Data"]=function(){return(__Put_Pre_Aec_Data=Module["__Put_Pre_Aec_Data"]=Module["asm"]["_Put_Pre_Aec_Data"]).apply(null,arguments)};var __Set_Aec_Delay=Module["__Set_Aec_Delay"]=function(){return(__Set_Aec_Delay=Module["__Set_Aec_Delay"]=Module["asm"]["_Set_Aec_Delay"]).apply(null,arguments)};var __ReSet_Aec=Module["__ReSet_Aec"]=function(){return(__ReSet_Aec=Module["__ReSet_Aec"]=Module["asm"]["_ReSet_Aec"]).apply(null,arguments)};var __Get_Aec_Delay=Module["__Get_Aec_Delay"]=function(){return(__Get_Aec_Delay=Module["__Get_Aec_Delay"]=Module["asm"]["_Get_Aec_Delay"]).apply(null,arguments)};var __Request_Audio_Qos_Data=Module["__Request_Audio_Qos_Data"]=function(){return(__Request_Audio_Qos_Data=Module["__Request_Audio_Qos_Data"]=Module["asm"]["_Request_Audio_Qos_Data"]).apply(null,arguments)};var __Get_Mixed_Audio=Module["__Get_Mixed_Audio"]=function(){return(__Get_Mixed_Audio=Module["__Get_Mixed_Audio"]=Module["asm"]["_Get_Mixed_Audio"]).apply(null,arguments)};var __Get_Audio_Edition=Module["__Get_Audio_Edition"]=function(){return(__Get_Audio_Edition=Module["__Get_Audio_Edition"]=Module["asm"]["_Get_Audio_Edition"]).apply(null,arguments)};var __Audio_Set_Data_Encryption=Module["__Audio_Set_Data_Encryption"]=function(){return(__Audio_Set_Data_Encryption=Module["__Audio_Set_Data_Encryption"]=Module["asm"]["_Audio_Set_Data_Encryption"]).apply(null,arguments)};var __Add_Cooker_info=Module["__Add_Cooker_info"]=function(){return(__Add_Cooker_info=Module["__Add_Cooker_info"]=Module["asm"]["_Add_Cooker_info"]).apply(null,arguments)};var __Remove_Cooker_Info=Module["__Remove_Cooker_Info"]=function(){return(__Remove_Cooker_Info=Module["__Remove_Cooker_Info"]=Module["asm"]["_Remove_Cooker_Info"]).apply(null,arguments)};var __Get_Audio_Meat_Weight=Module["__Get_Audio_Meat_Weight"]=function(){return(__Get_Audio_Meat_Weight=Module["__Get_Audio_Meat_Weight"]=Module["asm"]["_Get_Audio_Meat_Weight"]).apply(null,arguments)};var __Change_Aec_Flag=Module["__Change_Aec_Flag"]=function(){return(__Change_Aec_Flag=Module["__Change_Aec_Flag"]=Module["asm"]["_Change_Aec_Flag"]).apply(null,arguments)};var __Change_Connect_Type=Module["__Change_Connect_Type"]=function(){return(__Change_Connect_Type=Module["__Change_Connect_Type"]=Module["asm"]["_Change_Connect_Type"]).apply(null,arguments)};var __Cc_Set_Lang=Module["__Cc_Set_Lang"]=function(){return(__Cc_Set_Lang=Module["__Cc_Set_Lang"]=Module["asm"]["_Cc_Set_Lang"]).apply(null,arguments)};var __Interpretation_Configure=Module["__Interpretation_Configure"]=function(){return(__Interpretation_Configure=Module["__Interpretation_Configure"]=Module["asm"]["_Interpretation_Configure"]).apply(null,arguments)};var __Start_Audio_Share=Module["__Start_Audio_Share"]=function(){return(__Start_Audio_Share=Module["__Start_Audio_Share"]=Module["asm"]["_Start_Audio_Share"]).apply(null,arguments)};var __InsertShareData=Module["__InsertShareData"]=function(){return(__InsertShareData=Module["__InsertShareData"]=Module["asm"]["_InsertShareData"]).apply(null,arguments)};var __Set_Share_Volume_Level=Module["__Set_Share_Volume_Level"]=function(){return(__Set_Share_Volume_Level=Module["__Set_Share_Volume_Level"]=Module["asm"]["_Set_Share_Volume_Level"]).apply(null,arguments)};var __Set_Speech_Volume_Level=Module["__Set_Speech_Volume_Level"]=function(){return(__Set_Speech_Volume_Level=Module["__Set_Speech_Volume_Level"]=Module["asm"]["_Set_Speech_Volume_Level"]).apply(null,arguments)};var __Update_Monitor_Send_Audio_Info=Module["__Update_Monitor_Send_Audio_Info"]=function(){return(__Update_Monitor_Send_Audio_Info=Module["__Update_Monitor_Send_Audio_Info"]=Module["asm"]["_Update_Monitor_Send_Audio_Info"]).apply(null,arguments)};var __Update_Monitor_Receive_Audio_Info=Module["__Update_Monitor_Receive_Audio_Info"]=function(){return(__Update_Monitor_Receive_Audio_Info=Module["__Update_Monitor_Receive_Audio_Info"]=Module["asm"]["_Update_Monitor_Receive_Audio_Info"]).apply(null,arguments)};var __Set_Audio_Encryption_Key_Directly=Module["__Set_Audio_Encryption_Key_Directly"]=function(){return(__Set_Audio_Encryption_Key_Directly=Module["__Set_Audio_Encryption_Key_Directly"]=Module["asm"]["_Set_Audio_Encryption_Key_Directly"]).apply(null,arguments)};var __Add_Roster_Info_Directly=Module["__Add_Roster_Info_Directly"]=function(){return(__Add_Roster_Info_Directly=Module["__Add_Roster_Info_Directly"]=Module["asm"]["_Add_Roster_Info_Directly"]).apply(null,arguments)};var __Enable_Share_To_Bo=Module["__Enable_Share_To_Bo"]=function(){return(__Enable_Share_To_Bo=Module["__Enable_Share_To_Bo"]=Module["asm"]["_Enable_Share_To_Bo"]).apply(null,arguments)};var __Enable_Broadcast_To_Bo=Module["__Enable_Broadcast_To_Bo"]=function(){return(__Enable_Broadcast_To_Bo=Module["__Enable_Broadcast_To_Bo"]=Module["asm"]["_Enable_Broadcast_To_Bo"]).apply(null,arguments)};var __Set_Audio_Pipe_To_Bo=Module["__Set_Audio_Pipe_To_Bo"]=function(){return(__Set_Audio_Pipe_To_Bo=Module["__Set_Audio_Pipe_To_Bo"]=Module["asm"]["_Set_Audio_Pipe_To_Bo"]).apply(null,arguments)};var __Enable_Pipe_OUT_RTP=Module["__Enable_Pipe_OUT_RTP"]=function(){return(__Enable_Pipe_OUT_RTP=Module["__Enable_Pipe_OUT_RTP"]=Module["asm"]["_Enable_Pipe_OUT_RTP"]).apply(null,arguments)};var __Smooth_Send_For_Qos=Module["__Smooth_Send_For_Qos"]=function(){return(__Smooth_Send_For_Qos=Module["__Smooth_Send_For_Qos"]=Module["asm"]["_Smooth_Send_For_Qos"]).apply(null,arguments)};var __request_nack_t_periodically_for_qos=Module["__request_nack_t_periodically_for_qos"]=function(){return(__request_nack_t_periodically_for_qos=Module["__request_nack_t_periodically_for_qos"]=Module["asm"]["_request_nack_t_periodically_for_qos"]).apply(null,arguments)};var __setMultiViewFlag=Module["__setMultiViewFlag"]=function(){return(__setMultiViewFlag=Module["__setMultiViewFlag"]=Module["asm"]["_setMultiViewFlag"]).apply(null,arguments)};var __Switch_Denoise=Module["__Switch_Denoise"]=function(){return(__Switch_Denoise=Module["__Switch_Denoise"]=Module["asm"]["_Switch_Denoise"]).apply(null,arguments)};var __Set_Codec_Mode=Module["__Set_Codec_Mode"]=function(){return(__Set_Codec_Mode=Module["__Set_Codec_Mode"]=Module["asm"]["_Set_Codec_Mode"]).apply(null,arguments)};var __Heartbeat=Module["__Heartbeat"]=function(){return(__Heartbeat=Module["__Heartbeat"]=Module["asm"]["_Heartbeat"]).apply(null,arguments)};var __MuteUnmuteState=Module["__MuteUnmuteState"]=function(){return(__MuteUnmuteState=Module["__MuteUnmuteState"]=Module["asm"]["_MuteUnmuteState"]).apply(null,arguments)};var ___errno_location=Module["___errno_location"]=function(){return(___errno_location=Module["___errno_location"]=Module["asm"]["__errno_location"]).apply(null,arguments)};var _free=Module["_free"]=function(){return(_free=Module["_free"]=Module["asm"]["free"]).apply(null,arguments)};var _htons=Module["_htons"]=function(){return(_htons=Module["_htons"]=Module["asm"]["htons"]).apply(null,arguments)};var _ntohs=Module["_ntohs"]=function(){return(_ntohs=Module["_ntohs"]=Module["asm"]["ntohs"]).apply(null,arguments)};var stackSave=Module["stackSave"]=function(){return(stackSave=Module["stackSave"]=Module["asm"]["stackSave"]).apply(null,arguments)};var stackRestore=Module["stackRestore"]=function(){return(stackRestore=Module["stackRestore"]=Module["asm"]["stackRestore"]).apply(null,arguments)};var stackAlloc=Module["stackAlloc"]=function(){return(stackAlloc=Module["stackAlloc"]=Module["asm"]["stackAlloc"]).apply(null,arguments)};var ___cxa_demangle=Module["___cxa_demangle"]=function(){return(___cxa_demangle=Module["___cxa_demangle"]=Module["asm"]["__cxa_demangle"]).apply(null,arguments)};var ___cxa_is_pointer_type=Module["___cxa_is_pointer_type"]=function(){return(___cxa_is_pointer_type=Module["___cxa_is_pointer_type"]=Module["asm"]["__cxa_is_pointer_type"]).apply(null,arguments)};var dynCall_iiij=Module["dynCall_iiij"]=function(){return(dynCall_iiij=Module["dynCall_iiij"]=Module["asm"]["dynCall_iiij"]).apply(null,arguments)};var dynCall_iij=Module["dynCall_iij"]=function(){return(dynCall_iij=Module["dynCall_iij"]=Module["asm"]["dynCall_iij"]).apply(null,arguments)};var dynCall_iiiji=Module["dynCall_iiiji"]=function(){return(dynCall_iiiji=Module["dynCall_iiiji"]=Module["asm"]["dynCall_iiiji"]).apply(null,arguments)};var dynCall_viij=Module["dynCall_viij"]=function(){return(dynCall_viij=Module["dynCall_viij"]=Module["asm"]["dynCall_viij"]).apply(null,arguments)};var dynCall_vij=Module["dynCall_vij"]=function(){return(dynCall_vij=Module["dynCall_vij"]=Module["asm"]["dynCall_vij"]).apply(null,arguments)};var dynCall_jiji=Module["dynCall_jiji"]=function(){return(dynCall_jiji=Module["dynCall_jiji"]=Module["asm"]["dynCall_jiji"]).apply(null,arguments)};var dynCall_viijii=Module["dynCall_viijii"]=function(){return(dynCall_viijii=Module["dynCall_viijii"]=Module["asm"]["dynCall_viijii"]).apply(null,arguments)};var dynCall_iiiiij=Module["dynCall_iiiiij"]=function(){return(dynCall_iiiiij=Module["dynCall_iiiiij"]=Module["asm"]["dynCall_iiiiij"]).apply(null,arguments)};var dynCall_iiiiijj=Module["dynCall_iiiiijj"]=function(){return(dynCall_iiiiijj=Module["dynCall_iiiiijj"]=Module["asm"]["dynCall_iiiiijj"]).apply(null,arguments)};var dynCall_iiiiiijj=Module["dynCall_iiiiiijj"]=function(){return(dynCall_iiiiiijj=Module["dynCall_iiiiiijj"]=Module["asm"]["dynCall_iiiiiijj"]).apply(null,arguments)};Module["cwrap"]=cwrap;var calledRun;dependenciesFulfilled=function runCaller(){if(!calledRun)run();if(!calledRun)dependenciesFulfilled=runCaller};function run(args){args=args||arguments_;if(runDependencies>0){return}preRun();if(runDependencies>0){return}function doRun(){if(calledRun)return;calledRun=true;Module["calledRun"]=true;if(ABORT)return;initRuntime();if(Module["onRuntimeInitialized"])Module["onRuntimeInitialized"]();postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout(function(){setTimeout(function(){Module["setStatus"]("")},1);doRun()},1)}else{doRun()}}if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}run();
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
!function(t){var e={};function s(i){if(e[i])return e[i].exports;var r=e[i]={i:i,l:!1,exports:{}};return t[i].call(r.exports,r,r.exports,s),r.l=!0,r.exports}s.m=t,s.c=e,s.d=function(t,e,i){s.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:i})},s.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},s.t=function(t,e){if(1&e&&(t=s(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var i=Object.create(null);if(s.r(i),Object.defineProperty(i,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var r in t)s.d(i,r,function(e){return t[e]}.bind(null,r));return i},s.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return s.d(e,"a",e),e},s.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},s.p="",s(s.s=0)}([function(t,e,s){"use strict";s.r(e);var i=function(t,e){this._BYTES_PER_ELEMENT=e,this.capacity=(t.byteLength-8)/e,this.usableCapacity=this.capacity-1,this.buf=t,this.write_ptr=new Uint32Array(this.buf,0,1),this.read_ptr=new Uint32Array(this.buf,4,1),this.storageUint8s=new Uint8Array(this.buf,8,t.byteLength-8)};i.prototype.available_read=function(){var t=Atomics.load(this.read_ptr,0),e=Atomics.load(this.write_ptr,0);return this._available_read(t,e)},i.prototype._available_read=function(t,e){return(e+this.capacity-t)%this.capacity},i.prototype.dequeue=function(){var t=Atomics.load(this.read_ptr,0);let e=new Uint32Array(this.buf,t*this._BYTES_PER_ELEMENT+8,1);return this.storageUint8s.subarray(t*this._BYTES_PER_ELEMENT+4,t*this._BYTES_PER_ELEMENT+4+e[0])},i.prototype.addReadPtr=function(){var t=Atomics.load(this.read_ptr,0);Atomics.store(this.read_ptr,0,(t+1)%this.capacity)},i.prototype.getReaderPtr=function(){return this.read_ptr[0]},i.prototype.setReaderPtr=function(t){Atomics.store(this.read_ptr,0,t%this.capacity)},i.prototype.get=function(t){let e=t%this.capacity,s=new Uint32Array(this.buf,e*this._BYTES_PER_ELEMENT+8,1);return this.storageUint8s.subarray(e*this._BYTES_PER_ELEMENT+4,e*this._BYTES_PER_ELEMENT+4+s[0])};var r=i;class a{constructor(t,e){this.rframes=t,this.wframes=e,this.cap=this.lcm(t,e),this.buffer=new Float32Array(this.cap),this.remain=0,this.woffset=0,this.roffset=0}gcd(t,e){return 0===e?t:this.gcd(e,t%e)}lcm(t,e){return t/this.gcd(t,e)*e}push(t){if(t.length!=this.wframes)return console.error("[Audio] critical error in AudioWorklet: data.length:",t.length,"this.woffset:",this.woffset,"this.cap:",this.cap),void _workletPrinter.log({message:`[Audio] critical error in AudioWorklet: ${t.length} ${this.woffset} ${this.cap}`});this.buffer.set(t,this.woffset),this.woffset+=t.length,this.remain+=t.length,this.woffset>=this.cap&&(this.woffset=0)}read(){if(!this.hasData())return null;let t=this.buffer.subarray(this.roffset,this.roffset+this.rframes);return this.remain-=this.rframes,this.roffset+=this.rframes,this.roffset>=this.cap&&(this.roffset=0),t}hasData(){return this.remain>=this.rframes}}s.d(e,"Update_SSRC_Time",(function(){return W})),s.d(e,"Get_SSRC_Latest_Time",(function(){return H})),globalThis.onerror=function(t){_workletPrinter.error(t.stack)},globalThis.onWasmModuleReady=function(){p=Module.cwrap("_Audio_Init","number",["number","string","string","number","number","boolean","boolean","boolean","number"]),A=p(C,P,T,0,0,!0,!1,D,1),_=Module.cwrap("_Audio_Decode","number",["number","number","number","number"]),S=Module.cwrap("_Get_Mixed_Audio","number",["number","number","number","number"]),g=Module.cwrap("_Update_Monitor_Send_Audio_Info","number",["number","number","number"]),E=Module.cwrap("_Update_Monitor_Receive_Audio_Info","number",["number","number","number"]),m=Module.cwrap("_setMultiViewFlag","number",["number","boolean"]),k=Module.cwrap("_Interpretation_Configure","number",["number","number","number","number"]),N=Module.cwrap("_Set_Speech_Volume_Level","number",["number","number","number"]),B=Module._malloc(4*O),Module.HEAPU32.subarray(B/4,B/4+O),m(A,M),h=new o,U=Module._malloc(z),Module.HEAP8.subarray(U,U+z),Z.port.postMessage({status:"WASM_INIT_SUCCESS",data:{audio_handle:0!==A}})},globalThis.onAbort=function(t){_workletPrinter.error("WASM onAbort "+(t?t.message:""),t)},globalThis.preInit=function(t){_workletPrinter.debug("WASM preInit"+(t?t.message:""),t)},globalThis.preRun=function(t){_workletPrinter.debug("WASM preRun"+(t?t.message:""),t)},globalThis._workletPrinter=new class{constructor(t){this.messageQueue=[],this.audioDecodeWorkerPort=t,this.userAgent="",this.isSafari=!1,this.debug=this.debug.bind(this),this.log=this.log.bind(this),this.warn=this.warn.bind(this),this.error=this.error.bind(this),this.print_=this.print_.bind(this)}setUserAgent(t){this.userAgent=t,this.userAgent.match(/AppleWebKit\/(\d+)\./)&&(this.isSafari=!0)}setAudioDecodeWorkerPort(t){this.audioDecodeWorkerPort=t}debug(t,...e){t="[Audio][Worklet]"+t,this.print_({level:"debug",message:t,data:e})}log(t,...e){t="[Audio][Worklet]"+t,this.print_({level:"log",message:t,data:e})}warn(t,...e){t="[Audio][Worklet]"+t,this.print_({level:"warn",message:t,data:e})}error(t,...e){t="[Audio][Worklet]"+t,this.print_({level:"error",message:t,data:e})}print_(t){if(this.messageQueue.push(t),this.audioDecodeWorkerPort)for(;this.messageQueue.length;){let t=this.messageQueue.shift();this.isSafari?this._postToWorkerPrint(t):console[t.level](t.message,t.data)}}_postToWorkerPrint(t){this.audioDecodeWorkerPort&&this.audioDecodeWorkerPort.postMessage({status:"workletMessage",data:{level:t.level,message:t.message,data:t.data}})}};class o{constructor(){this.interval=1e3,this.monitorLength=1024,this.timer=null,this.isOpen=!1}setWorkerType(t){this.isEncode=t}OpenStatus(){return this.isOpen}open(){this.close(),this.monitorInfoPtr||(this.monitorInfoPtr=Module._malloc(this.monitorLength)),this.isOpen=!0}sendLog(){const t=this.isEncode?g:E;if(t&&A&&this.monitorInfoPtr&&void 0!==this.isEncode){const e=t(A,this.monitorInfoPtr,this.monitorLength),s=Module.HEAPU8.subarray(this.monitorInfoPtr,this.monitorInfoPtr+e);if(e>0){const t=String.fromCharCode.apply(null,s);if(t)try{t.split("\n").forEach(t=>{t&&Z.port.postMessage({status:"AUDIO_MONITOR_LOG",data:t})})}catch(t){}}s.fill(0,0,this.monitorLength)}}close(){this.timer&&(clearInterval(this.timer),this.timer=null),this.monitorInfoPtr&&(freeWasmMemory(this.monitorInfoPtr),this.monitorInfoPtr=null),this.isOpen=!1}}var h=null;class n{constructor(){this.cacheSize=0,this.sameCacheSizeCounter=0}shouldSendCacheSize(t){return t===this.cacheSize&&this.sameCacheSizeCounter++,(this.cacheSize!==t||200===this.sameCacheSizeCounter)&&(this.sameCacheSizeCounter=0,this.cacheSize=t,!0)}}class u{constructor(){this.buffList=[],this.cacheMinSize=4,this.cacheMaxSize=16,this.cacheSize=this.cacheMinSize,this.onCacheSizeChange=null,this.onrollbackbuffer=null,this.onneedmoredata=null,this.isReady=!1,this.cacheSizeController=new n}push(t){this.isReady=!0,this.buffList.push({buff:t,offset:0})}copy(t,e,s,i){return t.length-e<=s.length-i?(0===e?s.set(t,i):s.set(t.subarray(e),i),t.length-e):(s.set(t.subarray(e,e+s.length-i),i),s.length-i)}increaseCacheSize(){this.isReady&&this.cacheSize++,this.cacheSize>this.cacheMaxSize&&(this.cacheSize=this.cacheMaxSize),this.onCacheSizeChange&&this.isReady&&this.cacheSizeController.shouldSendCacheSize(this.cacheSize)&&this.onCacheSizeChange(this.cacheSize)}copyTo(t){if(0===this.buffList.length)return t.fill(0),void this.increaseCacheSize();let e=this.buffList[0];if(e.buff.length-e.offset>=t.length)this.copy(e.buff,e.offset,t,0),e.offset+=t.length,e.offset===e.buff.length&&(this.buffList.shift(),this.onrollbackbuffer&&this.onrollbackbuffer(e.buff));else{if(this.buffList.length<2)return t.fill(0),void this.increaseCacheSize();let s=this.copy(e.buff,e.offset,t,0);this.buffList.shift(),this.onrollbackbuffer&&this.onrollbackbuffer(e.buff),e=this.buffList[0],s=this.copy(e.buff,e.offset,t,s),e.offset+=s}}requestMoreData(){this.buffList.length<this.cacheSize&&this.onneedmoredata&&this.onneedmoredata()}hasData(){return this.buffList.length>=2}}class l{constructor(t){this.buffList=[],this.frameLength=t,this.onframedata=null}copy(t,e,s,i){if(t[0].length*R<=s.length-i){for(let e=0;e<R;e++)for(let r=0;t[e]&&r<t[e].length;r++)s[i+r*R+e]=t[e][r];return(t[0].length-e)*R}for(let e=0;e<R;e++)for(let r=0;t[e]&&r<t[e].length&&i+r*R+e<s.length;r++)s[i+r*R+e]=t[e][r];return s.length-i}rollbackbuffer(t){this.buffList.push({buff:t,offset:0})}push(t){0===this.buffList.length&&this.buffList.push({buff:new Float32Array(this.frameLength),offset:0});let e=this.buffList[0];if(e.buff.length-e.offset>=t[0].length*R){let s=this.copy(t,0,e.buff,e.offset);e.offset+=s,e.buff.length===e.offset&&(this.buffList.shift(),this.onframedata&&this.onframedata(e.buff))}else{let s=this.copy(t,0,e.buff,e.offset);if(this.buffList.shift(),this.onframedata&&this.onframedata(e.buff),t[0].length*R>s){let e=[];for(let i=0;i<R;i++)e.push(t[i].subarray(Math.floor(s/R)+(s%R>i?1:0)));this.push(e)}}}}class f{constructor(t,e){this.context=e,this.decodePort=null,this.encodePort=null,this.captureSize=t/100*R,this.playBuffer=new u,this.playBuffer.onrollbackbuffer=t=>{this.decodePort},this.playBuffer.onneedmoredata=()=>{this.decodePort&&this.decodePort.postMessage({status:1})},this.playBuffer.onCacheSizeChange=t=>{this.decodePort&&this.decodePort.postMessage({status:3,cacheSize:t})},this.quantum=new Float32Array(128*w),this.captureBuffer=new l(this.captureSize),this.captureBuffer.onframedata=t=>{this.encodePort&&this.encodePort.postMessage({command:2,buffer:t},[t.buffer])}}setDecodePort(t){this.decodePort&&this.decodePort.close(),this.decodePort=t,this.decodePort.onmessage=this.handleDecodeData.bind(this)}setEncodePort(t){this.encodePort&&this.encodePort.close(),this.encodePort=t,this.encodePort.onmessage=this.handleEncodeData.bind(this)}handleDecodeData(t){this.context.isPlaying&&this.playBuffer.push(t.data.data)}handleEncodeData(t){switch(t.data.event){case 0:this.captureBuffer.rollbackbuffer(t.data.buffer)}}requestMoreData(){this.playBuffer.requestMoreData()}close(){this.decodePort&&(this.decodePort=null,this.decodePort.close()),this.encodePort&&(this.encodePort=null,this.encodePort.close())}write(t){this.captureBuffer.push(t)}read(){return this.playBuffer.copyTo(this.quantum),this.requestMoreData(),this.quantum}}class c{constructor(t,e,s){if(this.STATE_READ_READY=0,this.STATE_READ_INDEX=1,this.STATE_WRITE_READY=2,this.STATE_WRITE_INDEX=3,this.STATE_DATA_COUNT=4,this.STATE_CACHE_SIZE=5,this.STATY_READY_NO=0,this.STATY_READY_YES=1,this.sabState=new Uint32Array(t),this.sabBuffer=new Float32Array(e),this.perFrameLength=s,this.bufferLen=this.sabBuffer.length,this.supportSpecialOptimization=this.bufferLen%s==0,this.bufferIndex=null,this.supportSpecialOptimization){let t=this.bufferLen/s;this.bufferIndex=[];for(let e=0;e<t;e++)this.bufferIndex.push(this.sabBuffer.subarray(e*s,e*s+s))}this.placeBuffer=new Float32Array(this.perFrameLength),this.QUANTUM_SIZE=128,this.CACHE_SIZE_MAX_VALUE=Math.floor(Math.floor(this.bufferLen/this.QUANTUM_SIZE)/2),this.CACHE_SIZE_MIN_VALUE=6,this.CACHE_SIZE_MAX_VALUE<this.CACHE_SIZE_MIN_VALUE&&(this.CACHE_SIZE_MAX_VALUE=this.CACHE_SIZE_MIN_VALUE),this.setCacheSize(this.CACHE_SIZE_MIN_VALUE),this._counter=0,this.onCacheSizeChange=null,this.cacheSizeController=new n}getCacheSize(){return Atomics.load(this.sabState,this.STATE_CACHE_SIZE)}setCacheSize(t){t>this.CACHE_SIZE_MAX_VALUE&&(t=this.CACHE_SIZE_MAX_VALUE),t<this.CACHE_SIZE_MIN_VALUE&&(t=this.CACHE_SIZE_MIN_VALUE),this.onCacheSizeChange&&this.cacheSizeController.shouldSendCacheSize(t)&&this.onCacheSizeChange(t),Atomics.store(this.sabState,this.STATE_CACHE_SIZE,t)}setQuantumSize(t){this.QUANTUM_SIZE=t,this.CACHE_SIZE_MAX_VALUE=Math.floor(Math.floor(this.bufferLen/this.QUANTUM_SIZE)/2),this.CACHE_SIZE_MAX_VALUE<this.CACHE_SIZE_MIN_VALUE&&(this.CACHE_SIZE_MAX_VALUE=this.CACHE_SIZE_MIN_VALUE)}isNeedMoreData(){let t=Atomics.load(this.sabState,this.STATE_CACHE_SIZE);return Atomics.load(this.sabState,this.STATE_DATA_COUNT)<t*this.QUANTUM_SIZE}shouldAdjustCacheBuffer(){this._counter>0&&this.setCacheSize(this.getCacheSize()+1)}clear(){this.sabState&&(this.sabState[this.STATE_READ_READY]=0,this.sabState[this.STATE_READ_INDEX]=0,this.sabState[this.STATE_WRITE_READY]=0,this.sabState[this.STATE_WRITE_INDEX]=0,this.sabState[this.STATE_DATA_COUNT]=0),this._counter=0}setWriteReady(){this.sabState[this.STATE_WRITE_READY]=this.STATY_READY_YES}isReady(){return this.sabState[this.STATE_WRITE_READY]&&this.sabState[this.STATE_READ_READY]}getDataCount(){return Atomics.load(this.sabState,this.STATE_DATA_COUNT)}write(t){if(t[0].length*R!==this.perFrameLength)return;let e=this.sabState[this.STATE_READ_READY];return this.sabState[this.STATE_WRITE_READY]||(this.sabState[this.STATE_WRITE_READY]=this.STATY_READY_YES,this.sabState[this.STATE_WRITE_INDEX]=0),e?this.supportSpecialOptimization?this.writeSpecial(t):this.writeNormal(t):void 0}writeNormal(t){let e=this.sabState[this.STATE_WRITE_INDEX];for(let s=0;s<R;s++)for(let i=0;t[s]&&i<t[s].length;i++)this.sabBuffer[(e+i*R+s)%this.bufferLen]=t[s][i];e+=this.perFrameLength,e>=this.bufferLen&&(e-=this.bufferLen),this.sabState[this.STATE_WRITE_INDEX]=e,Atomics.add(this.sabState,this.STATE_DATA_COUNT,this.perFrameLength)}writeSpecial(t){let e=this.sabState[this.STATE_WRITE_INDEX];for(let s=0;s<R;s++)for(let i=0;t[s]&&i<t[s].length;i++)this.bufferIndex[e][i*R+s]=t[s][i];e=(e+1)%this.bufferIndex.length,this.sabState[this.STATE_WRITE_INDEX]=e,Atomics.add(this.sabState,this.STATE_DATA_COUNT,this.perFrameLength)}read(){let t=this.sabState[this.STATE_READ_READY],e=this.sabState[this.STATE_WRITE_READY];if(t||(this.sabState[this.STATE_READ_READY]=this.STATY_READY_YES,this.sabState[this.STATE_READ_INDEX]=0),!e)return null;let s=this.supportSpecialOptimization?this.readSpecial():this.readNormal();return null===s?this.shouldAdjustCacheBuffer():this._counter++,s}readNormal(){let t=this.sabState[this.STATE_READ_INDEX],e=Atomics.load(this.sabState,this.STATE_DATA_COUNT);if(e<this.perFrameLength)return null;if(e>this.bufferLen){let s=Math.ceil((e-this.bufferLen)/this.perFrameLength)+1;t=(s*this.perFrameLength+t)%this.bufferLen,Atomics.sub(this.sabState,this.STATE_DATA_COUNT,s*this.perFrameLength)}let s=null;if(this.bufferLen-t>=this.perFrameLength)s=this.sabBuffer.subarray(t,t+this.perFrameLength);else{let e=this.sabBuffer.subarray(t),i=this.sabBuffer.subarray(0,this.perFrameLength-e.length);s=this.placeBuffer,s.set(e),s.set(i,e.length)}return t+=this.perFrameLength,t>=this.bufferLen&&(t-=this.bufferLen),this.sabState[this.STATE_READ_INDEX]=t,Atomics.sub(this.sabState,this.STATE_DATA_COUNT,this.perFrameLength),s}readSpecial(){let t=this.sabState[this.STATE_READ_INDEX],e=Atomics.load(this.sabState,this.STATE_DATA_COUNT);if(e<this.perFrameLength)return null;if(e>this.bufferLen){let s=Math.ceil((e-this.bufferLen)/this.perFrameLength)+1;t=(s+t)%this.bufferIndex.length,Atomics.sub(this.sabState,this.STATE_DATA_COUNT,s*this.perFrameLength)}let s=this.bufferIndex[t];return t=(t+1)%this.bufferIndex.length,this.sabState[this.STATE_READ_INDEX]=t,Atomics.sub(this.sabState,this.STATE_DATA_COUNT,this.perFrameLength),s}}let d="undefined"!=typeof SharedArrayBuffer,b=!0;var p=null,_=null,A=null,S=null,g=null,E=null,m=null;let T=0,P=0,D=!1,C=0,y=0,M=!1,L=0,R=1,w=1,I=null;var k,B,N,U,O=10;let z=1500;var v=new Map;function W(t){if(t){var e=t.length/16,s=0,i=0;for(s=0;s<e;s++){var r=0;for(i=16*s+0;i<16*s+4;i++)r+=t[i]*Math.pow(256,i-16*s);r>>=10;var a=0;for(i=16*s+4;i<16*s+12;i++)a+=t[i]*Math.pow(256,i-16*s-4);v.set(r,a)}}}function H(t){t>>=10;var e=v.get(t);return e?(v.set(t,0),e):0}function F(t){let e=t[1];return 4294967296*t[2]+e}globalThis.update_play_time=function(t,e){if(e&&(L+=1,L>50)){L=0;var s=new Uint8Array(e),i=Module.HEAP8.subarray(t+0,t+e);if(s.set(i),Z.videoDecodePort)Z.videoDecodePort.postMessage({status:M?1:0,data:s},[s.buffer]);else{let t=new Uint32Array(s.buffer),e=null,i=null,r=0,a=0;for(let o=0;o<s.length/16;o++){let s=t[4*o];512&s?(e=t.subarray(4*o,4*o+4),a=F(e)):s>>10==y>>10&&(i=t.subarray(4*o,4*o+4),r=F(i))}if(!r&&!a)return;Z.port.postMessage({status:57,at:r,st:a})}}};let Y=null,x=null;globalThis.frame_callback=function(t,e,s,i,r,a,o,h){Y===t&&x.length==e*o||(x=Module.HEAPF32.subarray(t/4,t/4+e*o),Y=t),I.push(x),M||update_play_time(s,i)};let Z=null;class V extends AudioWorkletProcessor{static get parameterDescriptors(){return[{name:"pcm",defaultValue:1}]}constructor(t){super(),this.port.onmessage=this.handleMessage.bind(this),this.isPlaying=!1,this.isCapturing=!1,t&&t.processorOptions&&(t.processorOptions.audioEncodeChannelsNum&&(R=t.processorOptions.audioEncodeChannelsNum),t.processorOptions.audioDecodeChannelsNum&&(w=t.processorOptions.audioDecodeChannelsNum)),this.SABConstructor(t&&t.processorOptions?t.processorOptions.sharedBuffer:null),this.noSABConstructor(),Z=this,globalThis.fsHandler&&globalThis.fsHandler.setPort(this.port),t&&t.processorOptions&&t.processorOptions.userAgent&&_workletPrinter.setUserAgent(t.processorOptions.userAgent)}SABConstructor(t){this.sampleRate_=0,this.g_sharedbuffer=t||null,this.encodeSAB=null,this.decodeSAB=null,this.audioEncodePort=null,this.audioDecodePort=null,this.videoDecodePort=null,this.rtpSAB=null,this.stopPlayAudio=!1,I=new a(128*w,sampleRate/100*w)}noSABConstructor(){this.audioProcessBuffer=new f(sampleRate,this),this.isRunning=!0}handleMessage(t){const{status:e,data:s}=t.data;switch(e){case"diableSharedArrayBuffer":d=!1;break;case"disableDecoderinworklet":b=!1;break;case"data":console.info("Dropped audio data before initialized");break;case"stopPlayAudio":this.isPlaying=!1;break;case"stopWorklet":Q=!0;break;case"startPlayAudio":this.isPlaying=!0;break;case"StartCaptureAudio":this.isCapturing=!0;break;case"sampleRate":this.sampleRate_=s;break;case"audiowasm":wasm2binary=s;try{initWasm(Module)}catch(t){_workletPrinter.log("init WASM failed, error message:"+t.message+t.stack)}break;case"initData":C=s.userid,T=s.meetingid,P=s.meetingnum,D=s.qoson;break;case"currentSSRC":y=s;break;case"stop_audio_incoming":this.stopPlayAudio=s;break;case"multiView":M=!0;break;case"interpretation_set_lang":Module.HEAPU32.subarray(B/4,B/4+O)[0]=s.lang,k(A,1,B,1);break;case"interpretation_enable":Module.HEAPU32.subarray(B/4,B/4+O)[0]=s.enable?1:0,k(A,0,B,1);break;case"interpretation_mute_origin":Module.HEAPU32.subarray(B/4,B/4+O)[0]=s.mute?1:0,k(A,2,B,1);break;case"interpretation_set_interpreter":{let t=Module.HEAPU32.subarray(B/4,B/4+O),e=B;s.interpreterList.length>=O&&(e=Module._malloc(4*s.interpreterList.length),t=Module.HEAPU32.subarray(e/4,e/4+s.interpreterList.length));for(let e=0;e<s.interpreterList.length;e++)t[e]=s.interpreterList[e];k(A,3,e,s.interpreterList.length),s.interpreterList.length>=O&&Module._free(e);break}case"setSpeechVolumeLevel":if(!A)return;N(A,s.userid,s.volume);break;default:d?this.handleMessageForSAB(t):this.handleMessageForNoSAB(t)}}handleMessageForSAB(t){const{status:e,data:s}=t.data;switch(e){case"encodeAudioPort":this.audioEncodePort&&this.audioEncodePort.close(),this.audioEncodePort=t.ports[0];break;case"decodeAudioPort":this.audioDecodePort&&this.audioDecodePort.close(),this.audioDecodePort=t.ports[0],_workletPrinter.setAudioDecodeWorkerPort(t.ports[0]),this.audioDecodePort.onmessage=function(t){};break;case"decodeVideoPort":this.videoDecodePort&&this.videoDecodePort.close(),this.videoDecodePort=t.ports[0];break;case"close":break;case"sharedBuffer":s&&(this.g_sharedbuffer=s),this.g_sharedbuffer&&(this.encodeSAB=new c(this.g_sharedbuffer.inputState,this.g_sharedbuffer.inputBuffer,128*R),this.decodeSAB=new c(this.g_sharedbuffer.outputState,this.g_sharedbuffer.outputBuffer,128*w),this.rtpSAB=new r(this.g_sharedbuffer.rtpBuffer,1200),this.decodeSAB.onCacheSizeChange=t=>{this.audioDecodePort&&this.audioDecodePort.postMessage({status:3,cacheSize:t,isSAB:!0})});break;default:console.warn("unhanle commands in audioworklet",e)}}handleMessageForNoSAB(t){const{status:e}=t.data;switch(e){case"encodeAudioPort":this.audioProcessBuffer.setEncodePort(t.ports[0]);break;case"decodeAudioPort":_workletPrinter.setAudioDecodeWorkerPort(t.ports[0]),this.audioProcessBuffer.setDecodePort(t.ports[0]);break;case"close":this.audioProcessBuffer.close(),this.isPlaying=!1,this.isRunning=!1;break;default:console.warn("unhanle commands in audioworklet",e)}}onReceivedRTP(){}process(t,e,s){if(Q)return!1;try{return d?b?(h&&(h.OpenStatus()?G%125==0&&h.sendLog():(h.setWorkerType(!1),h.open()),G++),this.SABDecodeProcess(t,e,s)):this.SABProcess(t,e,s):this.NoSABprocess(t,e,s)}catch(t){return _workletPrinter.log("::process() exception: "+t.message+t.stack),!0}}NoSABprocess(t,e,s){return!!this.isRunning&&(!this.isPlaying||(this.inputDataForNoSAB(t),this.outputDataForNoSAB(e),!0))}inputDataForNoSAB(t){if(!t[0]||!t[0][0])return!0;this.audioProcessBuffer.write(t[0])}outputDataForNoSAB(t){let e=this.audioProcessBuffer.read();if(this.stopPlayAudio)return!0;let s=t[0];if(1===w)for(let t=0;t<s.length;t++)s[t].set(e);else for(let t=0;t<w;t++)for(let i=0;s[t]&&i<s[t].length;i++)s[t][i]=e[i*w+t]}inputData(t){if(!this.encodeSAB)return!0;this.encodeSAB.write(t),this.audioEncodePort.postMessage({command:2,buffer:!1})}outputDecodeData(t){try{I.hasData()||S&&(sampleRate!=X&&(globalThis.sampleRateLog(X,sampleRate,"","",3),X=sampleRate),S(A,sampleRate/100,0,sampleRate,w))}catch(t){_workletPrinter.log("::outputDecodeData() get_mixed_Audio exception: "+t.message+t.stack)}try{let e=I.read();if(!e)return;if(1===w)for(let s=0;s<t.length;s++)t[s].set(e);else for(let s=0;s<w;s++)for(let i=0;t[s]&&i<t[s].length;i++)t[s][i]=e[i*w+s]}catch(t){_workletPrinter.log("::outputDecodeData() set outputs exception: "+t.message+t.stack)}}outputData(t){if(!this.decodeSAB)return!0;let e=this.decodeSAB.read();if(null===e||this.stopPlayAudio)return!0;if(1===w)for(let s=0;s<t.length;s++)t[s].set(e);else for(let s=0;s<w;s++)for(let i=0;t[s]&&i<t[s].length;i++)t[s][i]=e[i*w+s]}SABDecodeProcess(t,e,s){try{if(!this.rtpSAB)return!0;{let t=this.rtpSAB.available_read();t>100&&(t=100);let e=this.rtpSAB.getReaderPtr(),s=0;for(;s<t;){s++;let t=this.rtpSAB.get(e);if(e++,A){Module.HEAP8.subarray(U,U+z).set(t);_(A,0,U,t.length)}}this.rtpSAB.setReaderPtr(e)}}catch(t){_workletPrinter.log("::SABDecodeProcess() audio_decode exception: "+t.message+t.stack)}try{let s=t[0],i=e[0];return!this.g_sharedbuffer||(!this.sampleRate_||!i[0]||(s[0]&&this.isCapturing&&this.inputData(s),this.outputDecodeData(i),!0))}catch(t){_workletPrinter.log("::SABDecodeProcess() inputs or outputs exception: "+t.message+t.stack)}}SABProcess(t,e,s){let i=t[0],r=e[0];return!this.g_sharedbuffer||(!this.sampleRate_||!r[0]||(i[0]&&this.isCapturing&&this.inputData(i),this.outputData(r),!0))}}var X=0,G=0,Q=!1;globalThis.LOG_OUT=function(){},globalThis.fsHandler?(globalThis.LOG_OUT_WEBRTC=globalThis.fsHandler.handleFile,globalThis.Get_ExternalRecord=globalThis.fsHandler.handleViperPrint):(globalThis.LOG_OUT_WEBRTC=function(){},globalThis.Get_ExternalRecord=function(){}),globalThis.send_data=function(){},globalThis.monitorLOG=function(t){t&&Z.port.postMessage({status:"MONITOR_LOG",data:t})},globalThis.sampleRateLog=function(t,e,s,i,r){if(!t&&!e)return;let a=null;switch(r){case 1:a="GGDS: ";break;case 2:a="SCAG: ";break;case 3:a="SCIW: "}let o=a+t+"|"+e+"|"+s+"|"+i;globalThis.monitorLOG(o)},globalThis.wcl_trace_log=function(t,e){globalThis.fsHandler&&globalThis.fsHandler.handleAudioSDKUtilPrint(t,e)},registerProcessor("zoomAudioWorklet",V)}]);
|
|
2
|
+
//# sourceMappingURL=https://d1cdksi819e9z7.cloudfront.net/sourcemap/js_audio_worklet.min.js-3f095dca4f3d5007ce29.map
|