From fd54f72bbd94a79b76ae46b2dc8219579b78cd87 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Tue, 14 Nov 2023 15:32:38 +0000 Subject: [PATCH] Release: version 0.9.0 --- Dockerfile | 2 +- Readme.md | 2 +- client/dist/assets/js/{216.b85e2f18.js => 216.b85153e8.js} | 6 +++--- .../assets/js/{216.b85e2f18.js.map => 216.b85153e8.js.map} | 2 +- client/dist/assets/js/{9.dcd87975.js => 9.3e2dd7e8.js} | 4 ++-- .../dist/assets/js/{9.dcd87975.js.map => 9.3e2dd7e8.js.map} | 2 +- client/dist/assets/js/{987.56bdbbaf.js => 987.47860cd9.js} | 4 ++-- .../assets/js/{987.56bdbbaf.js.map => 987.47860cd9.js.map} | 2 +- client/dist/assets/js/app.36ab59fc.js | 2 ++ .../assets/js/{app.e10bf59d.js.map => app.36ab59fc.js.map} | 2 +- client/dist/assets/js/app.e10bf59d.js | 2 -- ...{chunk-vendors.a9cb9306.js => chunk-vendors.d1a39627.js} | 4 ++-- ...endors.a9cb9306.js.map => chunk-vendors.d1a39627.js.map} | 2 +- client/dist/index.html | 2 +- client/dist/service-worker.js | 2 +- client/dist/service-worker.js.map | 2 +- client/package.json | 2 +- installer/KonomiTV-Installer.py | 2 +- installer/pyproject.toml | 2 +- server/app/constants.py | 2 +- server/pyproject.toml | 2 +- 21 files changed, 26 insertions(+), 26 deletions(-) rename client/dist/assets/js/{216.b85e2f18.js => 216.b85153e8.js} (85%) rename client/dist/assets/js/{216.b85e2f18.js.map => 216.b85153e8.js.map} (99%) rename client/dist/assets/js/{9.dcd87975.js => 9.3e2dd7e8.js} (99%) rename client/dist/assets/js/{9.dcd87975.js.map => 9.3e2dd7e8.js.map} (99%) rename client/dist/assets/js/{987.56bdbbaf.js => 987.47860cd9.js} (99%) rename client/dist/assets/js/{987.56bdbbaf.js.map => 987.47860cd9.js.map} (99%) create mode 100644 client/dist/assets/js/app.36ab59fc.js rename client/dist/assets/js/{app.e10bf59d.js.map => app.36ab59fc.js.map} (99%) delete mode 100644 client/dist/assets/js/app.e10bf59d.js rename client/dist/assets/js/{chunk-vendors.a9cb9306.js => chunk-vendors.d1a39627.js} (96%) rename client/dist/assets/js/{chunk-vendors.a9cb9306.js.map => chunk-vendors.d1a39627.js.map} (99%) diff --git a/Dockerfile b/Dockerfile index 673ec7c6..6e35b352 100644 --- a/Dockerfile +++ b/Dockerfile @@ -18,7 +18,7 @@ RUN apt-get update && apt-get install -y --no-install-recommends aria2 ca-certif ## サードパーティーライブラリは変更が少ないので、先にダウンロード処理を実行してビルドキャッシュを効かせる WORKDIR / ## リリース版用 -RUN aria2c -x10 https://github.com/tsukumijima/KonomiTV/releases/download/v0.8.0/thirdparty-linux.tar.xz +RUN aria2c -x10 https://github.com/tsukumijima/KonomiTV/releases/download/v0.9.0/thirdparty-linux.tar.xz RUN tar xvf thirdparty-linux.tar.xz ## 開発版 (0.x.x-dev) 用 # RUN aria2c -x10 https://nightly.link/tsukumijima/KonomiTV/actions/runs/6864782131/thirdparty-linux.tar.xz.zip diff --git a/Readme.md b/Readme.md index 64737f57..2a3bc2a7 100644 --- a/Readme.md +++ b/Readme.md @@ -472,7 +472,7 @@ Docker Compose は V1 と V2 の両方に対応していますが、できれば
```bash -curl -LO https://github.com/tsukumijima/KonomiTV/releases/download/v0.8.0/KonomiTV-Installer.elf +curl -LO https://github.com/tsukumijima/KonomiTV/releases/download/v0.9.0/KonomiTV-Installer.elf chmod a+x KonomiTV-Installer.elf ./KonomiTV-Installer.elf ``` diff --git a/client/dist/assets/js/216.b85e2f18.js b/client/dist/assets/js/216.b85153e8.js similarity index 85% rename from client/dist/assets/js/216.b85e2f18.js rename to client/dist/assets/js/216.b85153e8.js index bc258c81..b9b7dcee 100644 --- a/client/dist/assets/js/216.b85e2f18.js +++ b/client/dist/assets/js/216.b85153e8.js @@ -4,9 +4,9 @@ * * @author Feross Aboukhadijeh * @license MIT - */function I(t,e){if(t===e)return 0;for(var n=t.length,r=e.length,o=0,i=Math.min(n,r);o0)throw new Error("Invalid string. Length must be a multiple of 4");var n=t.indexOf("=");-1===n&&(n=e);var r=n===e?0:4-n%4;return[n,r]}function u(t){var e=c(t),n=e[0],r=e[1];return 3*(n+r)/4-r}function f(t,e,n){return 3*(e+n)/4-n}function l(t){var e,n,i=c(t),a=i[0],s=i[1],u=new o(f(t,a,s)),l=0,p=s>0?a-4:a;for(n=0;n>16&255,u[l++]=e>>8&255,u[l++]=255&e;return 2===s&&(e=r[t.charCodeAt(n)]<<2|r[t.charCodeAt(n+1)]>>4,u[l++]=255&e),1===s&&(e=r[t.charCodeAt(n)]<<10|r[t.charCodeAt(n+1)]<<4|r[t.charCodeAt(n+2)]>>2,u[l++]=e>>8&255,u[l++]=255&e),u}function p(t){return n[t>>18&63]+n[t>>12&63]+n[t>>6&63]+n[63&t]}function d(t,e,n){for(var r,o=[],i=e;ic?c:s+a));return 1===o?(e=t[r-1],i.push(n[e>>2]+n[e<<4&63]+"==")):2===o&&(e=(t[r-2]<<8)+t[r-1],i.push(n[e>>10]+n[e>>4&63]+n[e<<2&63]+"=")),i.join("")}r["-".charCodeAt(0)]=62,r["_".charCodeAt(0)]=63},30098:function(t,e){"use strict";e.Z={success(t){return window.KonomiTVVueInstance?.$message.success(t)},info(t){return window.KonomiTVVueInstance?.$message.info(t)},warning(t){return window.KonomiTVVueInstance?.$message.warning(t)},error(t){return window.KonomiTVVueInstance?.$message.error(t)},show(t){return window.KonomiTVVueInstance?.$message.show(t)}}},81226:function(t,e,n){"use strict";var r=n(5121),o=n(29204),i=n(30098),a=n(5947),s=n(93961);class c{static async request(t){if(void 0===t.baseURL&&(t.baseURL=s.ZP.api_base_url),void 0===t.headers&&(t.headers={}),!1===t.url?.startsWith("http")){const e=s.ZP.getAccessToken();null!==e&&(t.headers["Authorization"]=`Bearer ${e}`),t.headers["X-KonomiTV-Version"]=s.ZP.version}t.timeout=3e4,t.transitional={clarifyTimeoutError:!0};const e=await r["default"].request(t).catch((t=>t));return e instanceof o.d7?(console.error(e),e.response?{type:"error",status:e.response.status,data:e.response.data,error:e}:{type:"error",status:NaN,data:{detail:e.message},error:e}):{type:"success",status:e.status,data:e.data}}static async get(t,e){const n={url:t,method:"GET",...e};return await c.request(n)}static async post(t,e,n){const r={url:t,method:"POST",data:e,...n};return await c.request(r)}static async put(t,e,n){const r={url:t,method:"PUT",data:e,...n};return await c.request(r)}static async delete(t,e){const n={url:t,method:"DELETE",...e};return await c.request(n)}static showGenericError(t,e){const n=(0,a.Z)();switch(t.data.detail){case"Not authenticated":return n.logout(!0),void i.Z.error(`${e}\nログインし直してください。`);case"Access token data is invalid":return n.logout(!0),void i.Z.error(`${e}\nログインセッションが不正です。もう一度ログインし直してください。`);case"Access token is invalid":return n.logout(!0),void i.Z.error(`${e}\nログインセッションの有効期限が切れています。もう一度ログインし直してください。`);case"User associated with access token does not exist":return n.logout(!0),void i.Z.error(`${e}\nログインセッションに紐づくユーザーが存在しないか、削除されています。`);default:return void(Number.isNaN(t.status)?t.error.code===o.d7.ECONNABORTED?i.Z.error(`${e}\nサーバーへの接続が切断されました。(${t.error.message})`):t.error.code===o.d7.ETIMEDOUT?i.Z.error(`${e}\nサーバーへの接続がタイムアウトしました。(${t.error.message})`):t.error.code===o.d7.ERR_NETWORK?i.Z.error(`${e}\n予期しないネットワークエラーが発生しました。(${t.error.message})`):i.Z.error(`${e}(${t.error.message})`):i.Z.error(`${e}(HTTP Error ${t.status} / ${t.data.detail})`))}}}e.Z=c},36940:function(t,e,n){"use strict";var r=n(81226);class o{static async fetchClientSettings(){const t=await r.Z.get("/settings/client");return"error"===t.type?null:t.data}static async updateClientSettings(t){await r.Z.put("/settings/client",t)}}e.Z=o},53260:function(t,e,n){"use strict";n(98858),n(61318),n(33228);var r=n(30098),o=n(81226);class i{static async createUser(t){const e=await o.Z.post("/users",t);if("error"===e.type){switch(e.data.detail){case"Specified username is duplicated":r.Z.error("ユーザー名が重複しています。");break;case"Specified username is not accepted due to system limitations":r.Z.error("ユーザー名に token と me は使えません。");break;default:o.Z.showGenericError(e,"アカウントを作成できませんでした。");break}return null}return e.data}static async createUserAccessToken(t,e){const n=await o.Z.post("/users/token",new URLSearchParams({username:t,password:e}));if("error"===n.type){switch(n.data.detail){case"Incorrect username":r.Z.error("ログインできませんでした。そのユーザー名のアカウントは存在しません。");break;case"Incorrect password":r.Z.error("ログインできませんでした。パスワードを間違えていませんか?");break;default:o.Z.showGenericError(n,"ログインできませんでした。");break}return null}return n.data}static async fetchUser(){const t=await o.Z.get("/users/me");return"error"===t.type?(o.Z.showGenericError(t,"アカウント情報を取得できませんでした。"),null):t.data}static async fetchUserIcon(){const t=await o.Z.get("/users/me/icon",{responseType:"blob"});return"error"===t.type?(o.Z.showGenericError(t,"アイコン画像を取得できませんでした。"),null):URL.createObjectURL(t.data)}static async updateUser(t){const e=await o.Z.put("/users/me",t);if("error"!==e.type);else switch(e.data.detail){case"Specified username is duplicated":r.Z.error("ユーザー名が重複しています。");break;case"Specified username is not accepted due to system limitations":r.Z.error("ユーザー名に token と me は使えません。");break;default:o.Z.showGenericError(e,"アカウント情報を更新できませんでした。");break}}static async updateUserIcon(t){const e=new FormData;e.append("image",t);const n=await o.Z.put("/users/me/icon",e,{headers:{"Content-Type":"multipart/form-data"}});if("error"!==n.type);else switch(n.data.detail){case"Please upload JPEG or PNG image":r.Z.error("JPEG または PNG 画像をアップロードしてください。");break;default:o.Z.showGenericError(n,"アイコン画像を更新できませんでした。");break}}static async deleteUser(){const t=await o.Z.delete("/users/me");"error"!==t.type||o.Z.showGenericError(t,"アカウントを削除できませんでした。")}}e.Z=i},3305:function(t,e,n){"use strict";var r=n(56448),o=n(36940),i=n(93961);const a=["pinned_channel_ids","saved_twitter_hashtags","panel_display_state","tv_panel_active_tab","video_panel_active_tab","tv_channel_selection_requires_alt_key","caption_font","always_border_caption_text","specify_caption_opacity","caption_opacity","tv_show_superimpose","video_show_superimpose","capture_save_mode","capture_caption_mode","comment_speed_rate","comment_font_size","close_comment_form_after_sending","muted_comment_keywords","muted_niconico_user_ids","mute_vulgar_comments","mute_abusive_discriminatory_prejudiced_comments","mute_big_size_comments","mute_fixed_comments","mute_colored_comments","mute_consecutive_same_characters_comments","fold_panel_after_sending_tweet","reset_hashtag_when_program_switches","auto_add_watching_channel_hashtag","twitter_active_tab","tweet_hashtag_position","tweet_capture_watermark_position"],s={pinned_channel_ids:[],showed_panel_last_time:!0,selected_twitter_account_id:null,saved_twitter_hashtags:[],panel_display_state:"RestorePreviousState",tv_panel_active_tab:"Program",video_panel_active_tab:"RecordedProgram",tv_channel_selection_requires_alt_key:!1,tv_streaming_quality:"1080p",tv_streaming_quality_cellular:"480p",tv_data_saver_mode:!1,tv_data_saver_mode_cellular:!0,tv_low_latency_mode:!0,tv_low_latency_mode_cellular:!1,video_streaming_quality:"1080p",video_streaming_quality_cellular:"480p",video_data_saver_mode:!1,video_data_saver_mode_cellular:!0,caption_font:"Windows TV MaruGothic",always_border_caption_text:!0,specify_caption_opacity:!1,caption_opacity:.5,tv_show_superimpose:!0,video_show_superimpose:!1,tv_show_data_broadcasting:!0,capture_copy_to_clipboard:!1,capture_save_mode:"UploadServer",capture_caption_mode:"Both",sync_settings:!1,comment_speed_rate:1,comment_font_size:34,close_comment_form_after_sending:!0,muted_comment_keywords:[],muted_niconico_user_ids:[],mute_vulgar_comments:!0,mute_abusive_discriminatory_prejudiced_comments:!0,mute_big_size_comments:!0,mute_fixed_comments:!1,mute_colored_comments:!1,mute_consecutive_same_characters_comments:!1,fold_panel_after_sending_tweet:!1,reset_hashtag_when_program_switches:!0,auto_add_watching_channel_hashtag:!0,twitter_active_tab:"Capture",tweet_hashtag_position:"Append",tweet_capture_watermark_position:"None"};function c(){const t=localStorage.getItem("KonomiTV-Settings");return null!==t?JSON.parse(t):(u(s),s)}function u(t){localStorage.setItem("KonomiTV-Settings",JSON.stringify(t))}function f(t){const e={};for(const n of Object.keys(s))e[n]=n in t?t[n]:s[n];return e}const l=(0,r.Q_)("settings",{state:()=>{const t=c(),e=f(t);return u(e),{settings:e}},actions:{async importClientSettings(t){const e=await t.text();let n={};try{n=JSON.parse(e)}catch(o){return!1}const r=f(n);return u(r),this.settings=r,await this.syncClientSettingsToServer(),!0},async resetClientSettings(){const t={...s,sync_settings:this.settings.sync_settings};u(t),this.settings=t,await this.syncClientSettingsToServer()},getSyncableClientSettings(){const t={};for(const e of a)e in this.settings?t[e]=this.settings[e]:t[e]=s[e];return t},async syncClientSettingsFromServer(t=!1){if(null===i.ZP.getAccessToken()||!1===this.settings.sync_settings&&!1===t)return;const e=await o.Z.fetchClientSettings();if(null!==e)for(const[n,r]of Object.entries(e))JSON.stringify(this.settings[n])!==JSON.stringify(r)&&(this.settings[n]=r)},async syncClientSettingsToServer(t=!1){if(null===i.ZP.getAccessToken()||!1===this.settings.sync_settings&&!1===t)return;const e=this.getSyncableClientSettings();await o.Z.updateClientSettings(e)}}});e.ZP=l},5947:function(t,e,n){"use strict";var r=n(56448),o=n(30098),i=n(53260),a=n(3305),s=n(93961);const c=(0,r.Q_)("user",{state:()=>({is_logged_in:!1,user:null,user_icon_url:null}),getters:{user_niconico_icon_url(){if(null===this.user||null===this.user.niconico_user_id)return null;const t=this.user.niconico_user_id.toString().slice(0,4);return`https://secure-dcdn.cdn.nimg.jp/nicoaccount/usericon/${t}/${this.user.niconico_user_id}.jpg`}},actions:{async register(t,e){const n=await i.Z.createUser({username:t,password:e});return null===n?(console.log("Register failed."),!1):(await this.login(t,e,!0),console.log("Register successful."),o.Z.success("アカウントを作成しました。"),!0)},async login(t,e,n=!1){const r=await i.Z.createUserAccessToken(t,e);return null===r?(console.log("Login failed."),this.logout(!0),!1):(console.log("Login successful."),s.ZP.saveAccessToken(r.access_token),this.is_logged_in=!0,await this.fetchUser(!0),!1===n&&o.Z.success("ログインしました。"),!0)},logout(t=!1){const e=(0,a.ZP)();e.settings.sync_settings=!1,s.ZP.deleteAccessToken(),this.is_logged_in=!1,this.user=null,this.user_icon_url="",!1===t&&o.Z.success("ログアウトしました。")},async fetchUser(t=!1){if(null===s.ZP.getAccessToken())return null;if(null!==this.user&&!1===t)return this.user;const e=await i.Z.fetchUser();if(null===e)return null===s.ZP.getAccessToken()&&this.logout(!0),null;this.is_logged_in=!0,this.user=e;const n=await i.Z.fetchUserIcon();return null===n?null:(this.user_icon_url=n,this.user)},async updateUser(t){await i.Z.updateUser(t),await this.fetchUser(!0),void 0!==t.username?o.Z.show("ユーザー名を更新しました。"):void 0!==t.password&&o.Z.show("パスワードを更新しました。")},async updateUserIcon(t){await i.Z.updateUserIcon(t),await this.fetchUser(!0),o.Z.show("アイコン画像を更新しました。")},async deleteUser(){await i.Z.deleteUser(),this.logout(!0),o.Z.show("アカウントを削除しました。")}}});e.Z=c},31623:function(t,e,n){"use strict";var r=n(56318),o=(n(70560),n(48764)),i=n(3305);class a{static getCommentColor(t){return this.color_table[t]||null}static getCommentPosition(t){switch(t){case"ue":return"top";case"naka":return"right";case"shita":return"bottom";default:return null}}static getCommentSize(t){switch(t){case"big":case"medium":case"small":return t;default:return null}}static parseCommentCommand(t){let e="#FFEAEA",n="right",r="medium";if(void 0!==t&&null!==t){const o=t.replace("184","").split(" ");for(const t of o){const o=a.getCommentColor(t),i=a.getCommentPosition(t),s=a.getCommentSize(t);null!==o&&(e=o),null!==i&&(n=i),null!==s&&(r=s)}}return{color:e,position:n,size:r}}static isMutedComment(t,e,n,r,o){const s=(0,i.ZP)();if(s.settings.muted_niconico_user_ids.includes(e))return!0;if(a.special_command_comments_pattern.test(t))return!0;if(!0===s.settings.mute_fixed_comments&&("top"===r||"bottom"===r))return console.log("[CommentUtils] Muted comment (fixed_comments): "+t),!0;if(!0===s.settings.mute_colored_comments&&"#FFEAEA"!==n)return console.log("[CommentUtils] Muted comment (colored_comments): "+t),!0;if(!0===s.settings.mute_big_size_comments&&"big"===o)return console.log("[CommentUtils] Muted comment (big_size_comments): "+t),!0;if(!0===s.settings.mute_vulgar_comments&&a.mute_vulgar_comments_pattern.test(t))return console.log("[CommentUtils] Muted comment (vulgar_comments): "+t),!0;if(!0===s.settings.mute_abusive_discriminatory_prejudiced_comments&&a.mute_abusive_discriminatory_prejudiced_comments_pattern.test(t))return console.log("[CommentUtils] Muted comment (abusive_discriminatory_prejudiced_comments): "+t),!0;if(!0===s.settings.mute_consecutive_same_characters_comments&&a.mute_consecutive_same_characters_comments_pattern.test(t))return console.log("[CommentUtils] Muted comment (consecutive_same_characters_comments): "+t),!0;for(const i of s.settings.muted_comment_keywords)if(""!==i.pattern)switch(i.match){case"partial":if(t.includes(i.pattern))return console.log("[CommentUtils] Muted comment (partial): "+t),!0;break;case"forward":if(t.startsWith(i.pattern))return console.log("[CommentUtils] Muted comment (forward): "+t),!0;break;case"backward":if(t.endsWith(i.pattern))return console.log("[CommentUtils] Muted comment (backward): "+t),!0;break;case"exact":if(t===i.pattern)return console.log("[CommentUtils] Muted comment (exact): "+t),!0;break;case"regex":if(new RegExp(i.pattern).test(t))return console.log("[CommentUtils] Muted comment (regex): "+t),!0;break}return!!a.annoying_statistical_comments_pattern.test(t)}static addMutedKeywords(t){const e=(0,i.ZP)();for(const n of e.settings.muted_comment_keywords)if("exact"===n.match&&n.pattern===t)return;e.settings.muted_comment_keywords.push({match:"exact",pattern:t})}static addMutedNiconicoUserIDs(t){const e=(0,i.ZP)();e.settings.muted_niconico_user_ids.includes(t)||e.settings.muted_niconico_user_ids.push(t)}}(0,r.Z)(a,"mute_vulgar_comments_pattern",new RegExp(o.Buffer.from("XChpXCl8XChVXCl8cHJwcnzvvZDvvZLvvZDvvZJ8U0VYfFPjgIdYfFPil69YfFPil4tYfFPil49YfO+8s++8pe+8uHzvvLPjgIfvvLh877yz4pev77y4fO+8s+KXi++8uHzvvLPil4/vvLh844Ki44OA44Or44OIfOOCouOCveOCs3zjgqLjg4rjgqV844Ki44OK44OrfOOCpOOCq+iHrXzjgqTjgY9844Kk44Oz44OdfOOBhuOCk+OBk3zjgqbjg7PjgrN844GG44KT44GhfOOCpuODs+ODgXzjgqjjgq3jg5t844GI44Gh44GI44GhfOOBiOOBo+OBoXzjgqjjg4Pjg4F844GI44Gj44KNfOOCqOODg+ODrXxe44GI44KNfOOCqOODrXzlt6Xlj6N844Kq44Kr44K6fOOBiuOBleOCj+OCiuOBvuOCk3zjgYrjgZfjgaPjgZN844Kq44K344OD44KzfOOCquODg+OCteODs3zjgYrjgaPjgbHjgYR844Kq44OD44OR44KkfOOCquODiuODi+ODvHzjgYrjgarjgbt844Kq44OK44ObfOOBiuOBseOBhHzjgqrjg5HjgqR844GK44KB44GTfOOCquODoeOCs3zjgYpwfOOBiu+9kHzjgqrjg5Xjg5HjgrN844Ks44OB44Og44OBfOOCreODoeOCu+OCr3zjgq3jg7Pjgr/jg55844GP44Gx44GCfOOBj+OBseOBgXzjgq/jg6rjg4jjg6rjgrl844Kv44Oz44OLfOOBlOOBj+OBlOOBj+OBlOOBj+OBlOOBj3zjgrPjg7Pjg4njg7zjg6B844GR44Gk44GC44GqfOOCseODhOOCouODinzjgrHjg4TnqbR844K244O844Oh44OzfOOCt+OCs3zjgZfjgZPjgZfjgZN844K344Kz44K344KzfOOBmeOBkeOBmeOBkXzjgZvjgYTjgYjjgY1844Gb44GE44KKfOOBm+ODvOOCinzjgZnjgYXjgYXjgYV844GZ44GG44GG44GGfOOCu+OCr+ODreOCuXzjgrvjg4Pjgq/jgrl844K744OV44OsfOOBoeOBo+OBseOBhHzjgaHjgaPjg5HjgqR844OB44OD44OR44KkfOOBoeOCk+OBk3zjgaHjgIfjgZN844Gh4pev44GTfOOBoeKXi+OBk3zjgaHil4/jgZN844OB44Oz44KzfOODgeOAh+OCs3zjg4Hil6/jgrN844OB4peL44KzfOODgeKXj+OCs3zjgaHjgpPjgb1844Gh44CH44G9fOOBoeKXr+OBvXzjgaHil4vjgb1844Gh4peP44G9fOODgeODs+ODnXzjg4HjgIfjg51844OB4pev44OdfOODgeKXi+ODnXzjg4Hil4/jg51844Gh44KT44Gh44KTfOODgeODs+ODgeODs3zjgabjgYPjgpPjgabjgYPjgpN844OG44Kj44Oz44OG44Kj44OzfOOBpuOBg+OCk+OBvXzjg4bjgqPjg7Pjg51844OH44Kr44GEfOODh+OCq+ODgeODs3zjg4fjg6rjg5jjg6t844Gq44GL44Gg44GXfOOBquOBi+OAh+OBl3zjgarjgYvil6/jgZd844Gq44GL4peL44GXfOOBquOBi+KXj+OBl3zohLHjgZJ844OM44GEfOODjOOBi3zjg4zjgqt844OM44GNfOODjOOCrXzjg4zjgY9844OM44KvfOODjOOBkXzjg4zjgrF844OM44GTfOODjOOCs3zjgbHjgYTjgoLjgb9844Gx44GE44Ga44KKfOODkeODs+ODhuOCo3zjg5HjgqTjgrrjg6p844OR44Kk44OR44OzfOODkOOCpOODlnzjg5Hjg5HmtLt844OP44OhfOODlOOCueODiOODs3zjg5Pjg4Pjg4F844G144GG44O7fOOBteOBhuKApnzjgbXjgYV8776M772pfOOBteOBj+OCieOBv3zjgbXjgY/jgonjgpPjgad844G644Gj44GffOOBuuOCjeOBuuOCjXzjg5rjg63jg5rjg618776N776f776b776N776f776bfOODleOCp+ODqXzjgbvjgYbjgZHjgYR844G844Gj44GNfOODneODq+ODjnzjgbzjgo3jgpN844Oc44Ot44OzfO++ju++nu++m+++nXzjgb3jgo3jgop844Od44Ot44OqfO++ju++n+++m+++mHzjg57jg7PjgY3jgaR844Oe44Oz44Kt44OEfOOBvuOCk+OBk3zjgb7jgIfjgZN844G+4pev44GTfOOBvuKXi+OBk3zjgb7il4/jgZN844Oe44Oz44KzfOODnuOAh+OCs3zjg57il6/jgrN844Oe4peL44KzfOODnuKXj+OCs3zjgb7jgpPjgZXjgpN844KC44Gj44GT44KKfOODouODg+OCs+ODqnzjgoLjgb/jgoLjgb9844Oi44Of44Oi44OffOODpOOBo+OBn3zjg6TjgaPjgaZ844Ok44KJfOOChOOCieOBm+OCjXzjg6Tjgop844Ok44OqfOODpOOCi3zjg6Tjgox844Ok44KNfOODqeODluODm3zjg6/jg6zjg6F85oSb5rayfOWSpXzllph86Zmw5qC4fOmZsOiMjnzpmbDllId85rerfOmaoOavm3zpmbDmr5t855Sj44KB44KLfOWls+OBruWtkOOBruaXpXzmsZrjgaPjgZXjgpN85aemfOmojuS5l+S9jXzlt6jkubN85beo5qC5fOW3qOWwu3zlt6jjg4Hjg7N85beo54+NfOmHkeeOiXzmnIjntYx85b6M6IOM5L2NfOWtkOeornzlrZDkvZzjgop85bCE57K+fOa9ruWQuXzkv6HogIV857K+5rayfOmAj+OBkXzmgKfkuqR857K+5a2QfOato+W4uOS9jXzmgKflvrR85oCn55qEfOeUn+eQhnzntbblgKt85a+45q2i44KBfOe0oOadkHzmirHjgYR85oqx44GLfOaKseOBjXzmirHjgY985oqx44GRfOaKseOBk3zkvZPmtrJ85Lmz6aaWfOaBpeWeonznj43mo5J85Lit44Gg44GXfOS4reWHuuOBl3zlsL985oqc44GEfOaKnOOBkeOBquOBhHzmipzjgZHjgot85oqc44GR44KMfOaOkuS+v3zniq/nj4186Iao44KJfOWMheiMjnzli4Potbd86IacfOaRqee+hXzprZTnvoV85o+J44G+fOaPieOBv3zmj4njgoB85o+J44KBfOa8q+a5lnzjgIfvvZ584pev772efOKXi++9nnzil4/vvZ5844CHfnzil69+fOKXi3584pePfnzjgIfjg4Pjgq/jgrl84pev44OD44Kv44K5fOKXi+ODg+OCr+OCuXzil4/jg4Pjgq/jgrk=","base64").toString())),(0,r.Z)(a,"mute_abusive_discriminatory_prejudiced_comments_pattern",new RegExp(o.Buffer.from("44CCfOOCouODi+ODl+ODrOOBj+OCk3zjgqLjg4vjg5fjg6zlkJt844Ki44K544OafOOBguOBu3zjgqLjg5t86Zi/5ZGGfOOCpOOCq+OCjHzjgYTjgb7jgYTjgaF844Kk44Oe44Kk44OBfOOCpOODqeOBpOOBj3zjgqbjgrh844Km44O844OofOOCpuODqHzjgqbjg6jjgq9844Km44OyfOOBjeOCguOBhHzjgq3jg6LjgqR844Kt44Oi44GEfOOCrS/jg6Av44OBfOOCrOOCpOOCuHzvvbbvvp7vvbLvvbzvvp5844Ks44Kk44K444OzfOOCrOOCrXzjgqvjgrl844Kt44OD44K6fOOBjeOBoeOBjOOBhHzjgq3jg4HjgqzjgqR844Kt44Og44OBfOOBjeOCieOBhHzjgq3jg6njgqR85auM44GEfOOCr+OCvXzns55844K344OKfOOCueODhuODnnzjgaTjgb7jgonjgap844Gk44G+44KJ44KTfOODgeODp+ODg+ODkeODqnzjg4Hjg6fjg7N85Y2D44On44OzfOOBpOOCk+OBvHzjg4Tjg7Pjg5x844ON44OI44Km44OofOOBq+OBoOOBguOBgnzjg4vjg4B85LqM44OAfO++hu++gO++nnzjg5Hjg7zjg6h844OR44OofOODkeODqOOCr3xe44G044O8JHxe44OU44O8JHzjgbbjgaPjgZV844OW44OD44K1fOOBtuOBleOBhHzjg5bjgrXjgqR844OY44Kk44OI44K544OU44O844OBfOODm+ODonzjgb7jgazjgZF844Oh44Kv44OpfOODkOOCq3zjg6DjgqvjgaTjgY986I2S44KJ44GXfOm6u+eUn+OCu+ODoeODs+ODiHzlj7Pnv7x85rGa54mpfOaFsOWuieWppnzlrrPlhZB85aSW5a2XfOWnpuWbvXzpn5Plm7186Z+T5LitfOmfk+aXpXzln7rlnLDlpJZ85rCX54uC44GEfOawl+mBleOBhHzliIfjgaPjgZ985YiH44Gj44GmfOawl+aMgeOBoeaCqnzoh6185bGRfOWbveS6pOaWree1tnzlm73nsY185Zu944Gr5biw44KMfOWbveOBuOW4sOOCjHzlt6bnv7x85q66fOmgg3zpoIPjgZd86aCD44GZfOmgg+OBm3xe5ZyofOWcqOaXpXzlnKjml6XnibnmqKl85Zyo54m55LyafOWPguaUv+aoqXznsr7npZ7nlbDluLjogIV85q2744GtfOawj+OBrXzvvoDvvot85q255YyVfOatueODknzmrbvliJF844K344Kx44KkfOOBl+OBkeOBhHzlpLHpgJ986Zqc5a6zfOWkp+adseS6nHzmlq3kuqR86YCa5ZCNfOS4remfk3zmnJ3prq585b6055So5belfOWjunzlo7d85aO8fOaXpemfk3zml6XluJ1857KY552AfOWNiuWztnzlj43ml6V85Y+N5rCR5pePfOmmrOm5v3znmbrni4J855m66YGUfOactHzlo7Llm7185LiN5b+rfOS9teWQiHzplpPmipzjgZF854Sh6IO9fOaWh+WPpXzpnZblm7186YeO6YOO","base64").toString())),(0,r.Z)(a,"mute_consecutive_same_characters_comments_pattern",/(.)\1{7,}/),(0,r.Z)(a,"special_command_comments_pattern",/\/[a-z]+ /),(0,r.Z)(a,"annoying_statistical_comments_pattern",/最高\d+米\/|計\d+ID|総\d+米/),(0,r.Z)(a,"color_table",{white:"#FFEAEA",red:"#F02840",pink:"#FD7E80",orange:"#FDA708",yellow:"#FFE133",green:"#64DD17",cyan:"#00D4F5",blue:"#4763FF",purple:"#D500F9",black:"#1E1310",white2:"#CCCC99",niconicowhite:"#CCCC99",red2:"#CC0033",truered:"#CC0033",pink2:"#FF33CC",orange2:"#FF6600",passionorange:"#FF6600",yellow2:"#999900",madyellow:"#999900",green2:"#00CC66",elementalgreen:"#00CC66",cyan2:"#00CCCC",blue2:"#3399FF",marineblue:"#3399FF",purple2:"#6633CC",nobleviolet:"#6633CC",black2:"#666666"})},98554:function(t,e,n){"use strict";var r=n(56318);n(98858),n(61318),n(33228);class o{static getAccessToken(){return localStorage.getItem("KonomiTV-AccessToken")}static saveAccessToken(t){localStorage.setItem("KonomiTV-AccessToken",t)}static deleteAccessToken(){null!==localStorage.getItem("KonomiTV-AccessToken")&&localStorage.removeItem("KonomiTV-AccessToken")}static AltOrOption(){return o.isMacOS()?"Option":"Alt"}static CtrlOrCmd(){return o.isMacOS()?"Cmd":"Ctrl"}static deepObjectFreeze(t){return Object.keys(t).forEach((e=>{"object"!==typeof t[e]||Object.isFrozen(t[e])||o.deepObjectFreeze(t[e])})),Object.freeze(t)}static downloadBlobData(t,e){const n=URL.createObjectURL(t),r=document.createElement("a");r.download=e,r.href=n,r.click(),URL.revokeObjectURL(n)}static escapeHTML(t){const e={"&":"&",'"':""","'":"'","<":"<",">":">"};return t.replace(/[&"'<>]/g,(t=>e[t]))}static getWindowFeatures(){const t=650,e=window.screen.height>=800?800:window.screen.height-100,n=(window.screen.height-e)/2,r=(window.screen.width-t)/2;return`toolbar=0,status=0,top=${n},left=${r},width=${t},height=${e},modal=yes,alwaysRaised=yes`}static hasActiveElementClass(t){return null!==document.activeElement&&document.activeElement.classList.contains(t)}static isFirefox(){return/Firefox/i.test(navigator.userAgent)}static isMacOS(){return/iPhone|iPad|Macintosh/i.test(navigator.userAgent)}static isSafari(){return/Safari/i.test(navigator.userAgent)&&!/Chrome/i.test(navigator.userAgent)}static isMobileDevice(){return/iPhone|iPad|iPod|Macintosh|Android|Mobile/i.test(navigator.userAgent)&&"ontouchend"in document}static isSmartphoneHorizontal(){return window.matchMedia("(max-width: 1000px) and (max-height: 425px)").matches}static isSmartphoneVertical(){return window.matchMedia("(max-width: 600px) and (min-height: 375.01px)").matches}static isTabletHorizontal(){return window.matchMedia("(max-width: 1264px) and (max-height: 850px)").matches}static isTabletVertical(){return window.matchMedia("(max-width: 850px) and (min-height: 850.01px)").matches}static isTouchDevice(){return window.matchMedia("(hover: none)").matches}static mathFloor(t,e=0){return Math.floor(t*10**e)/10**e}static async sleep(t){return await new Promise((e=>setTimeout(e,1e3*t)))}static time(){return Date.now()/1e3}static typeof(t){return Object.prototype.toString.call(t).slice(8,-1).toLowerCase()}static URLtoLink(t){t=o.escapeHTML(t);const e=/(https?:\/\/[-A-Z0-9+&@#/%?=~_|!:,.;]*[-A-Z0-9+&@#/%=~_|])/gi;return t.replace(e,'$1')}static async waitUntilOnline(){return await new Promise((t=>{window.addEventListener("online",(()=>t()))}))}}(0,r.Z)(o,"version","0.9.0-dev"),(0,r.Z)(o,"api_base_url",(()=>`${self.location.protocol}//${self.location.host}/api`)()),e.Z=o},21924:function(t,e,n){"use strict";var r=n(40210),o=n(55559),i=o(r("String.prototype.indexOf"));t.exports=function(t,e){var n=r(t,!!e);return"function"===typeof n&&i(t,".prototype.")>-1?o(n):n}},55559:function(t,e,n){"use strict";var r=n(58612),o=n(40210),i=n(67771),a=o("%TypeError%"),s=o("%Function.prototype.apply%"),c=o("%Function.prototype.call%"),u=o("%Reflect.apply%",!0)||r.call(c,s),f=o("%Object.defineProperty%",!0),l=o("%Math.max%");if(f)try{f({},"a",{value:1})}catch(d){f=null}t.exports=function(t){if("function"!==typeof t)throw new a("a function is required");var e=u(r,c,arguments);return i(e,1+l(0,t.length-(arguments.length-1)),!0)};var p=function(){return u(r,s,arguments)};f?f(t.exports,"apply",{value:p}):t.exports.apply=p},27484:function(t){!function(e,n){t.exports=n()}(0,(function(){"use strict";var t=1e3,e=6e4,n=36e5,r="millisecond",o="second",i="minute",a="hour",s="day",c="week",u="month",f="quarter",l="year",p="date",d="Invalid Date",h=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,y=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,v={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(t){var e=["th","st","nd","rd"],n=t%100;return"["+t+(e[(n-20)%10]||e[n]||e[0])+"]"}},g=function(t,e,n){var r=String(t);return!r||r.length>=e?t:""+Array(e+1-r.length).join(n)+t},m={s:g,z:function(t){var e=-t.utcOffset(),n=Math.abs(e),r=Math.floor(n/60),o=n%60;return(e<=0?"+":"-")+g(r,2,"0")+":"+g(o,2,"0")},m:function t(e,n){if(e.date()1)return t(a[0])}else{var s=e.name;O[s]=e,o=s}return!r&&o&&(b=o),o||!r&&b},S=function(t,e){if(w(t))return t.clone();var n="object"==typeof e?e:{};return n.date=t,n.args=arguments,new A(n)},E=m;E.l=j,E.i=w,E.w=function(t,e){return S(t,{locale:e.$L,utc:e.$u,x:e.$x,$offset:e.$offset})};var A=function(){function v(t){this.$L=j(t.locale,null,!0),this.parse(t),this.$x=this.$x||t.x||{},this[_]=!0}var g=v.prototype;return g.parse=function(t){this.$d=function(t){var e=t.date,n=t.utc;if(null===e)return new Date(NaN);if(E.u(e))return new Date;if(e instanceof Date)return new Date(e);if("string"==typeof e&&!/Z$/i.test(e)){var r=e.match(h);if(r){var o=r[2]-1||0,i=(r[7]||"0").substring(0,3);return n?new Date(Date.UTC(r[1],o,r[3]||1,r[4]||0,r[5]||0,r[6]||0,i)):new Date(r[1],o,r[3]||1,r[4]||0,r[5]||0,r[6]||0,i)}}return new Date(e)}(t),this.init()},g.init=function(){var t=this.$d;this.$y=t.getFullYear(),this.$M=t.getMonth(),this.$D=t.getDate(),this.$W=t.getDay(),this.$H=t.getHours(),this.$m=t.getMinutes(),this.$s=t.getSeconds(),this.$ms=t.getMilliseconds()},g.$utils=function(){return E},g.isValid=function(){return!(this.$d.toString()===d)},g.isSame=function(t,e){var n=S(t);return this.startOf(e)<=n&&n<=this.endOf(e)},g.isAfter=function(t,e){return S(t)=0&&(i[l]=parseInt(f,10))}var p=i[3],d=24===p?0:p,h=i[0]+"-"+i[1]+"-"+i[2]+" "+d+":"+i[4]+":"+i[5]+":000",y=+e;return(o.utc(h).valueOf()-(y-=y%1e3))/6e4},c=r.prototype;c.tz=function(t,e){void 0===t&&(t=i);var n=this.utcOffset(),r=this.toDate(),a=r.toLocaleString("en-US",{timeZone:t}),s=Math.round((r-new Date(a))/1e3/60),c=o(a,{locale:this.$L}).$set("millisecond",this.$ms).utcOffset(15*-Math.round(r.getTimezoneOffset()/15)-s,!0);if(e){var u=c.utcOffset();c=c.add(n-u,"minute")}return c.$x.$timezone=t,c},c.offsetName=function(t){var e=this.$x.$timezone||o.tz.guess(),n=a(this.valueOf(),e,{timeZoneName:t}).find((function(t){return"timezonename"===t.type.toLowerCase()}));return n&&n.value};var u=c.startOf;c.startOf=function(t,e){if(!this.$x||!this.$x.$timezone)return u.call(this,t,e);var n=o(this.format("YYYY-MM-DD HH:mm:ss:SSS"),{locale:this.$L});return u.call(n,t,e).tz(this.$x.$timezone,!0)},o.tz=function(t,e,n){var r=n&&e,a=n||e||i,c=s(+o(),a);if("string"!=typeof t)return o(t).tz(a);var u=function(t,e,n){var r=t-60*e*1e3,o=s(r,n);if(e===o)return[r,e];var i=s(r-=60*(o-e)*1e3,n);return o===i?[r,o]:[t-60*Math.min(o,i)*1e3,Math.max(o,i)]}(o.utc(t,r).valueOf(),c,a),f=u[0],l=u[1],p=o(f).utcOffset(l);return p.$x.$timezone=a,p},o.tz.guess=function(){return Intl.DateTimeFormat().resolvedOptions().timeZone},o.tz.setDefault=function(t){i=t}}}))},70178:function(t){!function(e,n){t.exports=n()}(0,(function(){"use strict";var t="minute",e=/[+-]\d\d(?::?\d\d)?/g,n=/([+-]|\d\d)/g;return function(r,o,i){var a=o.prototype;i.utc=function(t){var e={date:t,utc:!0,args:arguments};return new o(e)},a.utc=function(e){var n=i(this.toDate(),{locale:this.$L,utc:!0});return e?n.add(this.utcOffset(),t):n},a.local=function(){return i(this.toDate(),{locale:this.$L,utc:!1})};var s=a.parse;a.parse=function(t){t.utc&&(this.$u=!0),this.$utils().u(t.$offset)||(this.$offset=t.$offset),s.call(this,t)};var c=a.init;a.init=function(){if(this.$u){var t=this.$d;this.$y=t.getUTCFullYear(),this.$M=t.getUTCMonth(),this.$D=t.getUTCDate(),this.$W=t.getUTCDay(),this.$H=t.getUTCHours(),this.$m=t.getUTCMinutes(),this.$s=t.getUTCSeconds(),this.$ms=t.getUTCMilliseconds()}else c.call(this)};var u=a.utcOffset;a.utcOffset=function(r,o){var i=this.$utils().u;if(i(r))return this.$u?0:i(this.$offset)?u.call(this):this.$offset;if("string"==typeof r&&(r=function(t){void 0===t&&(t="");var r=t.match(e);if(!r)return null;var o=(""+r[0]).match(n)||["-",0,0],i=o[0],a=60*+o[1]+ +o[2];return 0===a?0:"+"===i?a:-a}(r),null===r))return this;var a=Math.abs(r)<=16?60*r:r,s=this;if(o)return s.$offset=a,s.$u=0===r,s;if(0!==r){var c=this.$u?this.toDate().getTimezoneOffset():-1*this.utcOffset();(s=this.local().add(a+c,t)).$offset=a,s.$x.$localOffset=c}else s=this.utc();return s};var f=a.format;a.format=function(t){var e=t||(this.$u?"YYYY-MM-DDTHH:mm:ss[Z]":"");return f.call(this,e)},a.valueOf=function(){var t=this.$utils().u(this.$offset)?0:this.$offset+(this.$x.$localOffset||this.$d.getTimezoneOffset());return this.$d.valueOf()-6e4*t},a.isUTC=function(){return!!this.$u},a.toISOString=function(){return this.toDate().toISOString()},a.toString=function(){return this.toDate().toUTCString()};var l=a.toDate;a.toDate=function(t){return"s"===t&&this.$offset?i(this.format("YYYY-MM-DD HH:mm:ss:SSS")).toDate():l.call(this)};var p=a.diff;a.diff=function(t,e,n){if(t&&this.$u===t.$u)return p.call(this,t,e,n);var r=this.local(),o=i(t).local();return p.call(r,o,e,n)}}}))},12296:function(t,e,n){"use strict";var r=n(31044)(),o=n(40210),i=r&&o("%Object.defineProperty%",!0);if(i)try{i({},"a",{value:1})}catch(u){i=!1}var a=o("%SyntaxError%"),s=o("%TypeError%"),c=n(27296);t.exports=function(t,e,n){if(!t||"object"!==typeof t&&"function"!==typeof t)throw new s("`obj` must be an object or a function`");if("string"!==typeof e&&"symbol"!==typeof e)throw new s("`property` must be a string or a symbol`");if(arguments.length>3&&"boolean"!==typeof arguments[3]&&null!==arguments[3])throw new s("`nonEnumerable`, if provided, must be a boolean or null");if(arguments.length>4&&"boolean"!==typeof arguments[4]&&null!==arguments[4])throw new s("`nonWritable`, if provided, must be a boolean or null");if(arguments.length>5&&"boolean"!==typeof arguments[5]&&null!==arguments[5])throw new s("`nonConfigurable`, if provided, must be a boolean or null");if(arguments.length>6&&"boolean"!==typeof arguments[6])throw new s("`loose`, if provided, must be a boolean");var r=arguments.length>3?arguments[3]:null,o=arguments.length>4?arguments[4]:null,u=arguments.length>5?arguments[5]:null,f=arguments.length>6&&arguments[6],l=!!c&&c(t,e);if(i)i(t,e,{configurable:null===u&&l?l.configurable:!u,enumerable:null===r&&l?l.enumerable:!r,value:n,writable:null===o&&l?l.writable:!o});else{if(!f&&(r||o||u))throw new a("This environment does not support defining a property as non-configurable, non-writable, or non-enumerable.");t[e]=n}}},4289:function(t,e,n){"use strict";var r=n(82215),o="function"===typeof Symbol&&"symbol"===typeof Symbol("foo"),i=Object.prototype.toString,a=Array.prototype.concat,s=n(12296),c=function(t){return"function"===typeof t&&"[object Function]"===i.call(t)},u=n(31044)(),f=function(t,e,n,r){if(e in t)if(!0===r){if(t[e]===n)return}else if(!c(r)||!r())return;u?s(t,e,n,!0):s(t,e,n)},l=function(t,e){var n=arguments.length>2?arguments[2]:{},i=r(e);o&&(i=a.call(i,Object.getOwnPropertySymbols(e)));for(var s=0;s=3&&(i=n),"[object Array]"===o.call(t)?a(t,e,i):"string"===typeof t?s(t,e,i):c(t,e,i)};t.exports=u},17648:function(t){"use strict";var e="Function.prototype.bind called on incompatible ",n=Object.prototype.toString,r=Math.max,o="[object Function]",i=function(t,e){for(var n=[],r=0;r1&&"boolean"!==typeof e)throw new a('"allowMissing" argument must be a boolean');if(null===A(/^%?[^%]*%?$/,t))throw new o("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var n=k(t),r=n.length>0?n[0]:"",i=T("%"+r+"%",e),s=i.name,u=i.value,f=!1,l=i.alias;l&&(r=l[0],j(n,w([0,1],l)));for(var p=1,d=!0;p=n.length){var m=c(u,h);d=!!m,u=d&&"get"in m&&!("originalValue"in m.get)?m.get:u[h]}else d=_(u,h),u=u[h];d&&!f&&(v[s]=u)}}return u}},27296:function(t,e,n){"use strict";var r=n(40210),o=r("%Object.getOwnPropertyDescriptor%",!0);if(o)try{o([],"length")}catch(i){o=null}t.exports=o},31044:function(t,e,n){"use strict";var r=n(40210),o=r("%Object.defineProperty%",!0),i=function(){if(o)try{return o({},"a",{value:1}),!0}catch(t){return!1}return!1};i.hasArrayLengthDefineBug=function(){if(!i())return null;try{return 1!==o([],"length",{value:1}).length}catch(t){return!0}},t.exports=i},28185:function(t){"use strict";var e={foo:{}},n=Object;t.exports=function(){return{__proto__:e}.foo===e.foo&&!({__proto__:null}instanceof n)}},41405:function(t,e,n){"use strict";var r="undefined"!==typeof Symbol&&Symbol,o=n(55419);t.exports=function(){return"function"===typeof r&&("function"===typeof Symbol&&("symbol"===typeof r("foo")&&("symbol"===typeof Symbol("bar")&&o())))}},55419:function(t){"use strict";t.exports=function(){if("function"!==typeof Symbol||"function"!==typeof Object.getOwnPropertySymbols)return!1;if("symbol"===typeof Symbol.iterator)return!0;var t={},e=Symbol("test"),n=Object(e);if("string"===typeof e)return!1;if("[object Symbol]"!==Object.prototype.toString.call(e))return!1;if("[object Symbol]"!==Object.prototype.toString.call(n))return!1;var r=42;for(e in t[e]=r,t)return!1;if("function"===typeof Object.keys&&0!==Object.keys(t).length)return!1;if("function"===typeof Object.getOwnPropertyNames&&0!==Object.getOwnPropertyNames(t).length)return!1;var o=Object.getOwnPropertySymbols(t);if(1!==o.length||o[0]!==e)return!1;if(!Object.prototype.propertyIsEnumerable.call(t,e))return!1;if("function"===typeof Object.getOwnPropertyDescriptor){var i=Object.getOwnPropertyDescriptor(t,e);if(i.value!==r||!0!==i.enumerable)return!1}return!0}},96410:function(t,e,n){"use strict";var r=n(55419);t.exports=function(){return r()&&!!Symbol.toStringTag}},48824:function(t,e,n){"use strict";var r=Function.prototype.call,o=Object.prototype.hasOwnProperty,i=n(58612);t.exports=i.call(r,o)},80645:function(t,e){ + */function I(t,e){if(t===e)return 0;for(var n=t.length,r=e.length,o=0,i=Math.min(n,r);o0)throw new Error("Invalid string. Length must be a multiple of 4");var n=t.indexOf("=");-1===n&&(n=e);var r=n===e?0:4-n%4;return[n,r]}function u(t){var e=c(t),n=e[0],r=e[1];return 3*(n+r)/4-r}function f(t,e,n){return 3*(e+n)/4-n}function l(t){var e,n,i=c(t),a=i[0],s=i[1],u=new o(f(t,a,s)),l=0,p=s>0?a-4:a;for(n=0;n>16&255,u[l++]=e>>8&255,u[l++]=255&e;return 2===s&&(e=r[t.charCodeAt(n)]<<2|r[t.charCodeAt(n+1)]>>4,u[l++]=255&e),1===s&&(e=r[t.charCodeAt(n)]<<10|r[t.charCodeAt(n+1)]<<4|r[t.charCodeAt(n+2)]>>2,u[l++]=e>>8&255,u[l++]=255&e),u}function p(t){return n[t>>18&63]+n[t>>12&63]+n[t>>6&63]+n[63&t]}function d(t,e,n){for(var r,o=[],i=e;ic?c:s+a));return 1===o?(e=t[r-1],i.push(n[e>>2]+n[e<<4&63]+"==")):2===o&&(e=(t[r-2]<<8)+t[r-1],i.push(n[e>>10]+n[e>>4&63]+n[e<<2&63]+"=")),i.join("")}r["-".charCodeAt(0)]=62,r["_".charCodeAt(0)]=63},30098:function(t,e){"use strict";e.Z={success(t){return window.KonomiTVVueInstance?.$message.success(t)},info(t){return window.KonomiTVVueInstance?.$message.info(t)},warning(t){return window.KonomiTVVueInstance?.$message.warning(t)},error(t){return window.KonomiTVVueInstance?.$message.error(t)},show(t){return window.KonomiTVVueInstance?.$message.show(t)}}},81226:function(t,e,n){"use strict";var r=n(5121),o=n(29204),i=n(30098),a=n(5947),s=n(93961);class c{static async request(t){if(void 0===t.baseURL&&(t.baseURL=s.ZP.api_base_url),void 0===t.headers&&(t.headers={}),!1===t.url?.startsWith("http")){const e=s.ZP.getAccessToken();null!==e&&(t.headers["Authorization"]=`Bearer ${e}`),t.headers["X-KonomiTV-Version"]=s.ZP.version}t.timeout=3e4,t.transitional={clarifyTimeoutError:!0};const e=await r["default"].request(t).catch((t=>t));return e instanceof o.d7?(console.error(e),e.response?{type:"error",status:e.response.status,data:e.response.data,error:e}:{type:"error",status:NaN,data:{detail:e.message},error:e}):{type:"success",status:e.status,data:e.data}}static async get(t,e){const n={url:t,method:"GET",...e};return await c.request(n)}static async post(t,e,n){const r={url:t,method:"POST",data:e,...n};return await c.request(r)}static async put(t,e,n){const r={url:t,method:"PUT",data:e,...n};return await c.request(r)}static async delete(t,e){const n={url:t,method:"DELETE",...e};return await c.request(n)}static showGenericError(t,e){const n=(0,a.Z)();switch(t.data.detail){case"Not authenticated":return n.logout(!0),void i.Z.error(`${e}\nログインし直してください。`);case"Access token data is invalid":return n.logout(!0),void i.Z.error(`${e}\nログインセッションが不正です。もう一度ログインし直してください。`);case"Access token is invalid":return n.logout(!0),void i.Z.error(`${e}\nログインセッションの有効期限が切れています。もう一度ログインし直してください。`);case"User associated with access token does not exist":return n.logout(!0),void i.Z.error(`${e}\nログインセッションに紐づくユーザーが存在しないか、削除されています。`);default:return void(Number.isNaN(t.status)?t.error.code===o.d7.ECONNABORTED?i.Z.error(`${e}\nサーバーへの接続が切断されました。(${t.error.message})`):t.error.code===o.d7.ETIMEDOUT?i.Z.error(`${e}\nサーバーへの接続がタイムアウトしました。(${t.error.message})`):t.error.code===o.d7.ERR_NETWORK?i.Z.error(`${e}\n予期しないネットワークエラーが発生しました。(${t.error.message})`):i.Z.error(`${e}(${t.error.message})`):i.Z.error(`${e}(HTTP Error ${t.status} / ${t.data.detail})`))}}}e.Z=c},36940:function(t,e,n){"use strict";var r=n(81226);class o{static async fetchClientSettings(){const t=await r.Z.get("/settings/client");return"error"===t.type?null:t.data}static async updateClientSettings(t){await r.Z.put("/settings/client",t)}}e.Z=o},53260:function(t,e,n){"use strict";n(98858),n(61318),n(33228);var r=n(30098),o=n(81226);class i{static async createUser(t){const e=await o.Z.post("/users",t);if("error"===e.type){switch(e.data.detail){case"Specified username is duplicated":r.Z.error("ユーザー名が重複しています。");break;case"Specified username is not accepted due to system limitations":r.Z.error("ユーザー名に token と me は使えません。");break;default:o.Z.showGenericError(e,"アカウントを作成できませんでした。");break}return null}return e.data}static async createUserAccessToken(t,e){const n=await o.Z.post("/users/token",new URLSearchParams({username:t,password:e}));if("error"===n.type){switch(n.data.detail){case"Incorrect username":r.Z.error("ログインできませんでした。そのユーザー名のアカウントは存在しません。");break;case"Incorrect password":r.Z.error("ログインできませんでした。パスワードを間違えていませんか?");break;default:o.Z.showGenericError(n,"ログインできませんでした。");break}return null}return n.data}static async fetchUser(){const t=await o.Z.get("/users/me");return"error"===t.type?(o.Z.showGenericError(t,"アカウント情報を取得できませんでした。"),null):t.data}static async fetchUserIcon(){const t=await o.Z.get("/users/me/icon",{responseType:"blob"});return"error"===t.type?(o.Z.showGenericError(t,"アイコン画像を取得できませんでした。"),null):URL.createObjectURL(t.data)}static async updateUser(t){const e=await o.Z.put("/users/me",t);if("error"!==e.type);else switch(e.data.detail){case"Specified username is duplicated":r.Z.error("ユーザー名が重複しています。");break;case"Specified username is not accepted due to system limitations":r.Z.error("ユーザー名に token と me は使えません。");break;default:o.Z.showGenericError(e,"アカウント情報を更新できませんでした。");break}}static async updateUserIcon(t){const e=new FormData;e.append("image",t);const n=await o.Z.put("/users/me/icon",e,{headers:{"Content-Type":"multipart/form-data"}});if("error"!==n.type);else switch(n.data.detail){case"Please upload JPEG or PNG image":r.Z.error("JPEG または PNG 画像をアップロードしてください。");break;default:o.Z.showGenericError(n,"アイコン画像を更新できませんでした。");break}}static async deleteUser(){const t=await o.Z.delete("/users/me");"error"!==t.type||o.Z.showGenericError(t,"アカウントを削除できませんでした。")}}e.Z=i},3305:function(t,e,n){"use strict";var r=n(56448),o=n(36940),i=n(93961);const a=["pinned_channel_ids","saved_twitter_hashtags","panel_display_state","tv_panel_active_tab","video_panel_active_tab","tv_channel_selection_requires_alt_key","caption_font","always_border_caption_text","specify_caption_opacity","caption_opacity","tv_show_superimpose","video_show_superimpose","capture_save_mode","capture_caption_mode","comment_speed_rate","comment_font_size","close_comment_form_after_sending","muted_comment_keywords","muted_niconico_user_ids","mute_vulgar_comments","mute_abusive_discriminatory_prejudiced_comments","mute_big_size_comments","mute_fixed_comments","mute_colored_comments","mute_consecutive_same_characters_comments","fold_panel_after_sending_tweet","reset_hashtag_when_program_switches","auto_add_watching_channel_hashtag","twitter_active_tab","tweet_hashtag_position","tweet_capture_watermark_position"],s={pinned_channel_ids:[],showed_panel_last_time:!0,selected_twitter_account_id:null,saved_twitter_hashtags:[],panel_display_state:"RestorePreviousState",tv_panel_active_tab:"Program",video_panel_active_tab:"RecordedProgram",tv_channel_selection_requires_alt_key:!1,tv_streaming_quality:"1080p",tv_streaming_quality_cellular:"480p",tv_data_saver_mode:!1,tv_data_saver_mode_cellular:!0,tv_low_latency_mode:!0,tv_low_latency_mode_cellular:!1,video_streaming_quality:"1080p",video_streaming_quality_cellular:"480p",video_data_saver_mode:!1,video_data_saver_mode_cellular:!0,caption_font:"Windows TV MaruGothic",always_border_caption_text:!0,specify_caption_opacity:!1,caption_opacity:.5,tv_show_superimpose:!0,video_show_superimpose:!1,tv_show_data_broadcasting:!0,capture_copy_to_clipboard:!1,capture_save_mode:"UploadServer",capture_caption_mode:"Both",sync_settings:!1,comment_speed_rate:1,comment_font_size:34,close_comment_form_after_sending:!0,muted_comment_keywords:[],muted_niconico_user_ids:[],mute_vulgar_comments:!0,mute_abusive_discriminatory_prejudiced_comments:!0,mute_big_size_comments:!0,mute_fixed_comments:!1,mute_colored_comments:!1,mute_consecutive_same_characters_comments:!1,fold_panel_after_sending_tweet:!1,reset_hashtag_when_program_switches:!0,auto_add_watching_channel_hashtag:!0,twitter_active_tab:"Capture",tweet_hashtag_position:"Append",tweet_capture_watermark_position:"None"};function c(){const t=localStorage.getItem("KonomiTV-Settings");return null!==t?JSON.parse(t):(u(s),s)}function u(t){localStorage.setItem("KonomiTV-Settings",JSON.stringify(t))}function f(t){const e={};for(const n of Object.keys(s))e[n]=n in t?t[n]:s[n];return e}const l=(0,r.Q_)("settings",{state:()=>{const t=c(),e=f(t);return u(e),{settings:e}},actions:{async importClientSettings(t){const e=await t.text();let n={};try{n=JSON.parse(e)}catch(o){return!1}const r=f(n);return u(r),this.settings=r,await this.syncClientSettingsToServer(),!0},async resetClientSettings(){const t={...s,sync_settings:this.settings.sync_settings};u(t),this.settings=t,await this.syncClientSettingsToServer()},getSyncableClientSettings(){const t={};for(const e of a)e in this.settings?t[e]=this.settings[e]:t[e]=s[e];return t},async syncClientSettingsFromServer(t=!1){if(null===i.ZP.getAccessToken()||!1===this.settings.sync_settings&&!1===t)return;const e=await o.Z.fetchClientSettings();if(null!==e)for(const[n,r]of Object.entries(e))JSON.stringify(this.settings[n])!==JSON.stringify(r)&&(this.settings[n]=r)},async syncClientSettingsToServer(t=!1){if(null===i.ZP.getAccessToken()||!1===this.settings.sync_settings&&!1===t)return;const e=this.getSyncableClientSettings();await o.Z.updateClientSettings(e)}}});e.ZP=l},5947:function(t,e,n){"use strict";var r=n(56448),o=n(30098),i=n(53260),a=n(3305),s=n(93961);const c=(0,r.Q_)("user",{state:()=>({is_logged_in:!1,user:null,user_icon_url:null}),getters:{user_niconico_icon_url(){if(null===this.user||null===this.user.niconico_user_id)return null;const t=this.user.niconico_user_id.toString().slice(0,4);return`https://secure-dcdn.cdn.nimg.jp/nicoaccount/usericon/${t}/${this.user.niconico_user_id}.jpg`}},actions:{async register(t,e){const n=await i.Z.createUser({username:t,password:e});return null===n?(console.log("Register failed."),!1):(await this.login(t,e,!0),console.log("Register successful."),o.Z.success("アカウントを作成しました。"),!0)},async login(t,e,n=!1){const r=await i.Z.createUserAccessToken(t,e);return null===r?(console.log("Login failed."),this.logout(!0),!1):(console.log("Login successful."),s.ZP.saveAccessToken(r.access_token),this.is_logged_in=!0,await this.fetchUser(!0),!1===n&&o.Z.success("ログインしました。"),!0)},logout(t=!1){const e=(0,a.ZP)();e.settings.sync_settings=!1,s.ZP.deleteAccessToken(),this.is_logged_in=!1,this.user=null,this.user_icon_url="",!1===t&&o.Z.success("ログアウトしました。")},async fetchUser(t=!1){if(null===s.ZP.getAccessToken())return null;if(null!==this.user&&!1===t)return this.user;const e=await i.Z.fetchUser();if(null===e)return null===s.ZP.getAccessToken()&&this.logout(!0),null;this.is_logged_in=!0,this.user=e;const n=await i.Z.fetchUserIcon();return null===n?null:(this.user_icon_url=n,this.user)},async updateUser(t){await i.Z.updateUser(t),await this.fetchUser(!0),void 0!==t.username?o.Z.show("ユーザー名を更新しました。"):void 0!==t.password&&o.Z.show("パスワードを更新しました。")},async updateUserIcon(t){await i.Z.updateUserIcon(t),await this.fetchUser(!0),o.Z.show("アイコン画像を更新しました。")},async deleteUser(){await i.Z.deleteUser(),this.logout(!0),o.Z.show("アカウントを削除しました。")}}});e.Z=c},31623:function(t,e,n){"use strict";var r=n(56318),o=(n(70560),n(48764)),i=n(3305);class a{static getCommentColor(t){return this.color_table[t]||null}static getCommentPosition(t){switch(t){case"ue":return"top";case"naka":return"right";case"shita":return"bottom";default:return null}}static getCommentSize(t){switch(t){case"big":case"medium":case"small":return t;default:return null}}static parseCommentCommand(t){let e="#FFEAEA",n="right",r="medium";if(void 0!==t&&null!==t){const o=t.replace("184","").split(" ");for(const t of o){const o=a.getCommentColor(t),i=a.getCommentPosition(t),s=a.getCommentSize(t);null!==o&&(e=o),null!==i&&(n=i),null!==s&&(r=s)}}return{color:e,position:n,size:r}}static isMutedComment(t,e,n,r,o){const s=(0,i.ZP)();if(s.settings.muted_niconico_user_ids.includes(e))return!0;if(a.special_command_comments_pattern.test(t))return!0;if(!0===s.settings.mute_fixed_comments&&("top"===r||"bottom"===r))return console.log("[CommentUtils] Muted comment (fixed_comments): "+t),!0;if(!0===s.settings.mute_colored_comments&&"#FFEAEA"!==n)return console.log("[CommentUtils] Muted comment (colored_comments): "+t),!0;if(!0===s.settings.mute_big_size_comments&&"big"===o)return console.log("[CommentUtils] Muted comment (big_size_comments): "+t),!0;if(!0===s.settings.mute_vulgar_comments&&a.mute_vulgar_comments_pattern.test(t))return console.log("[CommentUtils] Muted comment (vulgar_comments): "+t),!0;if(!0===s.settings.mute_abusive_discriminatory_prejudiced_comments&&a.mute_abusive_discriminatory_prejudiced_comments_pattern.test(t))return console.log("[CommentUtils] Muted comment (abusive_discriminatory_prejudiced_comments): "+t),!0;if(!0===s.settings.mute_consecutive_same_characters_comments&&a.mute_consecutive_same_characters_comments_pattern.test(t))return console.log("[CommentUtils] Muted comment (consecutive_same_characters_comments): "+t),!0;for(const i of s.settings.muted_comment_keywords)if(""!==i.pattern)switch(i.match){case"partial":if(t.includes(i.pattern))return console.log("[CommentUtils] Muted comment (partial): "+t),!0;break;case"forward":if(t.startsWith(i.pattern))return console.log("[CommentUtils] Muted comment (forward): "+t),!0;break;case"backward":if(t.endsWith(i.pattern))return console.log("[CommentUtils] Muted comment (backward): "+t),!0;break;case"exact":if(t===i.pattern)return console.log("[CommentUtils] Muted comment (exact): "+t),!0;break;case"regex":if(new RegExp(i.pattern).test(t))return console.log("[CommentUtils] Muted comment (regex): "+t),!0;break}return!!a.annoying_statistical_comments_pattern.test(t)}static addMutedKeywords(t){const e=(0,i.ZP)();for(const n of e.settings.muted_comment_keywords)if("exact"===n.match&&n.pattern===t)return;e.settings.muted_comment_keywords.push({match:"exact",pattern:t})}static addMutedNiconicoUserIDs(t){const e=(0,i.ZP)();e.settings.muted_niconico_user_ids.includes(t)||e.settings.muted_niconico_user_ids.push(t)}}(0,r.Z)(a,"mute_vulgar_comments_pattern",new RegExp(o.Buffer.from("XChpXCl8XChVXCl8cHJwcnzvvZDvvZLvvZDvvZJ8U0VYfFPjgIdYfFPil69YfFPil4tYfFPil49YfO+8s++8pe+8uHzvvLPjgIfvvLh877yz4pev77y4fO+8s+KXi++8uHzvvLPil4/vvLh844Ki44OA44Or44OIfOOCouOCveOCs3zjgqLjg4rjgqV844Ki44OK44OrfOOCpOOCq+iHrXzjgqTjgY9844Kk44Oz44OdfOOBhuOCk+OBk3zjgqbjg7PjgrN844GG44KT44GhfOOCpuODs+ODgXzjgqjjgq3jg5t844GI44Gh44GI44GhfOOBiOOBo+OBoXzjgqjjg4Pjg4F844GI44Gj44KNfOOCqOODg+ODrXxe44GI44KNfOOCqOODrXzlt6Xlj6N844Kq44Kr44K6fOOBiuOBleOCj+OCiuOBvuOCk3zjgYrjgZfjgaPjgZN844Kq44K344OD44KzfOOCquODg+OCteODs3zjgYrjgaPjgbHjgYR844Kq44OD44OR44KkfOOCquODiuODi+ODvHzjgYrjgarjgbt844Kq44OK44ObfOOBiuOBseOBhHzjgqrjg5HjgqR844GK44KB44GTfOOCquODoeOCs3zjgYpwfOOBiu+9kHzjgqrjg5Xjg5HjgrN844Ks44OB44Og44OBfOOCreODoeOCu+OCr3zjgq3jg7Pjgr/jg55844GP44Gx44GCfOOBj+OBseOBgXzjgq/jg6rjg4jjg6rjgrl844Kv44Oz44OLfOOBlOOBj+OBlOOBj+OBlOOBj+OBlOOBj3zjgrPjg7Pjg4njg7zjg6B844GR44Gk44GC44GqfOOCseODhOOCouODinzjgrHjg4TnqbR844K244O844Oh44OzfOOCt+OCs3zjgZfjgZPjgZfjgZN844K344Kz44K344KzfOOBmeOBkeOBmeOBkXzjgZvjgYTjgYjjgY1844Gb44GE44KKfOOBm+ODvOOCinzjgZnjgYXjgYXjgYV844GZ44GG44GG44GGfOOCu+OCr+ODreOCuXzjgrvjg4Pjgq/jgrl844K744OV44OsfOOBoeOBo+OBseOBhHzjgaHjgaPjg5HjgqR844OB44OD44OR44KkfOOBoeOCk+OBk3zjgaHjgIfjgZN844Gh4pev44GTfOOBoeKXi+OBk3zjgaHil4/jgZN844OB44Oz44KzfOODgeOAh+OCs3zjg4Hil6/jgrN844OB4peL44KzfOODgeKXj+OCs3zjgaHjgpPjgb1844Gh44CH44G9fOOBoeKXr+OBvXzjgaHil4vjgb1844Gh4peP44G9fOODgeODs+ODnXzjg4HjgIfjg51844OB4pev44OdfOODgeKXi+ODnXzjg4Hil4/jg51844Gh44KT44Gh44KTfOODgeODs+ODgeODs3zjgabjgYPjgpPjgabjgYPjgpN844OG44Kj44Oz44OG44Kj44OzfOOBpuOBg+OCk+OBvXzjg4bjgqPjg7Pjg51844OH44Kr44GEfOODh+OCq+ODgeODs3zjg4fjg6rjg5jjg6t844Gq44GL44Gg44GXfOOBquOBi+OAh+OBl3zjgarjgYvil6/jgZd844Gq44GL4peL44GXfOOBquOBi+KXj+OBl3zohLHjgZJ844OM44GEfOODjOOBi3zjg4zjgqt844OM44GNfOODjOOCrXzjg4zjgY9844OM44KvfOODjOOBkXzjg4zjgrF844OM44GTfOODjOOCs3zjgbHjgYTjgoLjgb9844Gx44GE44Ga44KKfOODkeODs+ODhuOCo3zjg5HjgqTjgrrjg6p844OR44Kk44OR44OzfOODkOOCpOODlnzjg5Hjg5HmtLt844OP44OhfOODlOOCueODiOODs3zjg5Pjg4Pjg4F844G144GG44O7fOOBteOBhuKApnzjgbXjgYV8776M772pfOOBteOBj+OCieOBv3zjgbXjgY/jgonjgpPjgad844G644Gj44GffOOBuuOCjeOBuuOCjXzjg5rjg63jg5rjg618776N776f776b776N776f776bfOODleOCp+ODqXzjgbvjgYbjgZHjgYR844G844Gj44GNfOODneODq+ODjnzjgbzjgo3jgpN844Oc44Ot44OzfO++ju++nu++m+++nXzjgb3jgo3jgop844Od44Ot44OqfO++ju++n+++m+++mHzjg57jg7PjgY3jgaR844Oe44Oz44Kt44OEfOOBvuOCk+OBk3zjgb7jgIfjgZN844G+4pev44GTfOOBvuKXi+OBk3zjgb7il4/jgZN844Oe44Oz44KzfOODnuOAh+OCs3zjg57il6/jgrN844Oe4peL44KzfOODnuKXj+OCs3zjgb7jgpPjgZXjgpN844KC44Gj44GT44KKfOODouODg+OCs+ODqnzjgoLjgb/jgoLjgb9844Oi44Of44Oi44OffOODpOOBo+OBn3zjg6TjgaPjgaZ844Ok44KJfOOChOOCieOBm+OCjXzjg6Tjgop844Ok44OqfOODpOOCi3zjg6Tjgox844Ok44KNfOODqeODluODm3zjg6/jg6zjg6F85oSb5rayfOWSpXzllph86Zmw5qC4fOmZsOiMjnzpmbDllId85rerfOmaoOavm3zpmbDmr5t855Sj44KB44KLfOWls+OBruWtkOOBruaXpXzmsZrjgaPjgZXjgpN85aemfOmojuS5l+S9jXzlt6jkubN85beo5qC5fOW3qOWwu3zlt6jjg4Hjg7N85beo54+NfOmHkeeOiXzmnIjntYx85b6M6IOM5L2NfOWtkOeornzlrZDkvZzjgop85bCE57K+fOa9ruWQuXzkv6HogIV857K+5rayfOmAj+OBkXzmgKfkuqR857K+5a2QfOato+W4uOS9jXzmgKflvrR85oCn55qEfOeUn+eQhnzntbblgKt85a+45q2i44KBfOe0oOadkHzmirHjgYR85oqx44GLfOaKseOBjXzmirHjgY985oqx44GRfOaKseOBk3zkvZPmtrJ85Lmz6aaWfOaBpeWeonznj43mo5J85Lit44Gg44GXfOS4reWHuuOBl3zlsL985oqc44GEfOaKnOOBkeOBquOBhHzmipzjgZHjgot85oqc44GR44KMfOaOkuS+v3zniq/nj4186Iao44KJfOWMheiMjnzli4Potbd86IacfOaRqee+hXzprZTnvoV85o+J44G+fOaPieOBv3zmj4njgoB85o+J44KBfOa8q+a5lnzjgIfvvZ584pev772efOKXi++9nnzil4/vvZ5844CHfnzil69+fOKXi3584pePfnzjgIfjg4Pjgq/jgrl84pev44OD44Kv44K5fOKXi+ODg+OCr+OCuXzil4/jg4Pjgq/jgrk=","base64").toString())),(0,r.Z)(a,"mute_abusive_discriminatory_prejudiced_comments_pattern",new RegExp(o.Buffer.from("44CCfOOCouODi+ODl+ODrOOBj+OCk3zjgqLjg4vjg5fjg6zlkJt844Ki44K544OafOOBguOBu3zjgqLjg5t86Zi/5ZGGfOOCpOOCq+OCjHzjgYTjgb7jgYTjgaF844Kk44Oe44Kk44OBfOOCpOODqeOBpOOBj3zjgqbjgrh844Km44O844OofOOCpuODqHzjgqbjg6jjgq9844Km44OyfOOBjeOCguOBhHzjgq3jg6LjgqR844Kt44Oi44GEfOOCrS/jg6Av44OBfOOCrOOCpOOCuHzvvbbvvp7vvbLvvbzvvp5844Ks44Kk44K444OzfOOCrOOCrXzjgqvjgrl844Kt44OD44K6fOOBjeOBoeOBjOOBhHzjgq3jg4HjgqzjgqR844Kt44Og44OBfOOBjeOCieOBhHzjgq3jg6njgqR85auM44GEfOOCr+OCvXzns55844K344OKfOOCueODhuODnnzjgaTjgb7jgonjgap844Gk44G+44KJ44KTfOODgeODp+ODg+ODkeODqnzjg4Hjg6fjg7N85Y2D44On44OzfOOBpOOCk+OBvHzjg4Tjg7Pjg5x844ON44OI44Km44OofOOBq+OBoOOBguOBgnzjg4vjg4B85LqM44OAfO++hu++gO++nnzjg5Hjg7zjg6h844OR44OofOODkeODqOOCr3xe44G044O8JHxe44OU44O8JHzjgbbjgaPjgZV844OW44OD44K1fOOBtuOBleOBhHzjg5bjgrXjgqR844OY44Kk44OI44K544OU44O844OBfOODm+ODonzjgb7jgazjgZF844Oh44Kv44OpfOODkOOCq3zjg6DjgqvjgaTjgY986I2S44KJ44GXfOm6u+eUn+OCu+ODoeODs+ODiHzlj7Pnv7x85rGa54mpfOaFsOWuieWppnzlrrPlhZB85aSW5a2XfOWnpuWbvXzpn5Plm7186Z+T5LitfOmfk+aXpXzln7rlnLDlpJZ85rCX54uC44GEfOawl+mBleOBhHzliIfjgaPjgZ985YiH44Gj44GmfOawl+aMgeOBoeaCqnzoh6185bGRfOWbveS6pOaWree1tnzlm73nsY185Zu944Gr5biw44KMfOWbveOBuOW4sOOCjHzlt6bnv7x85q66fOmgg3zpoIPjgZd86aCD44GZfOmgg+OBm3xe5ZyofOWcqOaXpXzlnKjml6XnibnmqKl85Zyo54m55LyafOWPguaUv+aoqXznsr7npZ7nlbDluLjogIV85q2744GtfOawj+OBrXzvvoDvvot85q255YyVfOatueODknzmrbvliJF844K344Kx44KkfOOBl+OBkeOBhHzlpLHpgJ986Zqc5a6zfOWkp+adseS6nHzmlq3kuqR86YCa5ZCNfOS4remfk3zmnJ3prq585b6055So5belfOWjunzlo7d85aO8fOaXpemfk3zml6XluJ1857KY552AfOWNiuWztnzlj43ml6V85Y+N5rCR5pePfOmmrOm5v3znmbrni4J855m66YGUfOactHzlo7Llm7185LiN5b+rfOS9teWQiHzplpPmipzjgZF854Sh6IO9fOaWh+WPpXzpnZblm7186YeO6YOO","base64").toString())),(0,r.Z)(a,"mute_consecutive_same_characters_comments_pattern",/(.)\1{7,}/),(0,r.Z)(a,"special_command_comments_pattern",/\/[a-z]+ /),(0,r.Z)(a,"annoying_statistical_comments_pattern",/最高\d+米\/|計\d+ID|総\d+米/),(0,r.Z)(a,"color_table",{white:"#FFEAEA",red:"#F02840",pink:"#FD7E80",orange:"#FDA708",yellow:"#FFE133",green:"#64DD17",cyan:"#00D4F5",blue:"#4763FF",purple:"#D500F9",black:"#1E1310",white2:"#CCCC99",niconicowhite:"#CCCC99",red2:"#CC0033",truered:"#CC0033",pink2:"#FF33CC",orange2:"#FF6600",passionorange:"#FF6600",yellow2:"#999900",madyellow:"#999900",green2:"#00CC66",elementalgreen:"#00CC66",cyan2:"#00CCCC",blue2:"#3399FF",marineblue:"#3399FF",purple2:"#6633CC",nobleviolet:"#6633CC",black2:"#666666"})},98554:function(t,e,n){"use strict";var r=n(56318);n(98858),n(61318),n(33228);class o{static getAccessToken(){return localStorage.getItem("KonomiTV-AccessToken")}static saveAccessToken(t){localStorage.setItem("KonomiTV-AccessToken",t)}static deleteAccessToken(){null!==localStorage.getItem("KonomiTV-AccessToken")&&localStorage.removeItem("KonomiTV-AccessToken")}static AltOrOption(){return o.isMacOS()?"Option":"Alt"}static CtrlOrCmd(){return o.isMacOS()?"Cmd":"Ctrl"}static deepObjectFreeze(t){return Object.keys(t).forEach((e=>{"object"!==typeof t[e]||Object.isFrozen(t[e])||o.deepObjectFreeze(t[e])})),Object.freeze(t)}static downloadBlobData(t,e){const n=URL.createObjectURL(t),r=document.createElement("a");r.download=e,r.href=n,r.click(),URL.revokeObjectURL(n)}static escapeHTML(t){const e={"&":"&",'"':""","'":"'","<":"<",">":">"};return t.replace(/[&"'<>]/g,(t=>e[t]))}static getWindowFeatures(){const t=650,e=window.screen.height>=800?800:window.screen.height-100,n=(window.screen.height-e)/2,r=(window.screen.width-t)/2;return`toolbar=0,status=0,top=${n},left=${r},width=${t},height=${e},modal=yes,alwaysRaised=yes`}static hasActiveElementClass(t){return null!==document.activeElement&&document.activeElement.classList.contains(t)}static isFirefox(){return/Firefox/i.test(navigator.userAgent)}static isMacOS(){return/iPhone|iPad|Macintosh/i.test(navigator.userAgent)}static isSafari(){return/Safari/i.test(navigator.userAgent)&&!/Chrome/i.test(navigator.userAgent)}static isMobileDevice(){return/iPhone|iPad|iPod|Macintosh|Android|Mobile/i.test(navigator.userAgent)&&"ontouchend"in document}static isSmartphoneHorizontal(){return window.matchMedia("(max-width: 1000px) and (max-height: 425px)").matches}static isSmartphoneVertical(){return window.matchMedia("(max-width: 600px) and (min-height: 375.01px)").matches}static isTabletHorizontal(){return window.matchMedia("(max-width: 1264px) and (max-height: 850px)").matches}static isTabletVertical(){return window.matchMedia("(max-width: 850px) and (min-height: 850.01px)").matches}static isTouchDevice(){return window.matchMedia("(hover: none)").matches}static mathFloor(t,e=0){return Math.floor(t*10**e)/10**e}static async sleep(t){return await new Promise((e=>setTimeout(e,1e3*t)))}static time(){return Date.now()/1e3}static typeof(t){return Object.prototype.toString.call(t).slice(8,-1).toLowerCase()}static URLtoLink(t){t=o.escapeHTML(t);const e=/(https?:\/\/[-A-Z0-9+&@#/%?=~_|!:,.;]*[-A-Z0-9+&@#/%=~_|])/gi;return t.replace(e,'$1')}static async waitUntilOnline(){return await new Promise((t=>{window.addEventListener("online",(()=>t()))}))}}(0,r.Z)(o,"version","0.9.0"),(0,r.Z)(o,"api_base_url",(()=>`${self.location.protocol}//${self.location.host}/api`)()),e.Z=o},21924:function(t,e,n){"use strict";var r=n(40210),o=n(55559),i=o(r("String.prototype.indexOf"));t.exports=function(t,e){var n=r(t,!!e);return"function"===typeof n&&i(t,".prototype.")>-1?o(n):n}},55559:function(t,e,n){"use strict";var r=n(58612),o=n(40210),i=n(67771),a=o("%TypeError%"),s=o("%Function.prototype.apply%"),c=o("%Function.prototype.call%"),u=o("%Reflect.apply%",!0)||r.call(c,s),f=o("%Object.defineProperty%",!0),l=o("%Math.max%");if(f)try{f({},"a",{value:1})}catch(d){f=null}t.exports=function(t){if("function"!==typeof t)throw new a("a function is required");var e=u(r,c,arguments);return i(e,1+l(0,t.length-(arguments.length-1)),!0)};var p=function(){return u(r,s,arguments)};f?f(t.exports,"apply",{value:p}):t.exports.apply=p},27484:function(t){!function(e,n){t.exports=n()}(0,(function(){"use strict";var t=1e3,e=6e4,n=36e5,r="millisecond",o="second",i="minute",a="hour",s="day",c="week",u="month",f="quarter",l="year",p="date",d="Invalid Date",h=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,y=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,v={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(t){var e=["th","st","nd","rd"],n=t%100;return"["+t+(e[(n-20)%10]||e[n]||e[0])+"]"}},g=function(t,e,n){var r=String(t);return!r||r.length>=e?t:""+Array(e+1-r.length).join(n)+t},m={s:g,z:function(t){var e=-t.utcOffset(),n=Math.abs(e),r=Math.floor(n/60),o=n%60;return(e<=0?"+":"-")+g(r,2,"0")+":"+g(o,2,"0")},m:function t(e,n){if(e.date()1)return t(a[0])}else{var s=e.name;O[s]=e,o=s}return!r&&o&&(b=o),o||!r&&b},S=function(t,e){if(w(t))return t.clone();var n="object"==typeof e?e:{};return n.date=t,n.args=arguments,new A(n)},E=m;E.l=j,E.i=w,E.w=function(t,e){return S(t,{locale:e.$L,utc:e.$u,x:e.$x,$offset:e.$offset})};var A=function(){function v(t){this.$L=j(t.locale,null,!0),this.parse(t),this.$x=this.$x||t.x||{},this[_]=!0}var g=v.prototype;return g.parse=function(t){this.$d=function(t){var e=t.date,n=t.utc;if(null===e)return new Date(NaN);if(E.u(e))return new Date;if(e instanceof Date)return new Date(e);if("string"==typeof e&&!/Z$/i.test(e)){var r=e.match(h);if(r){var o=r[2]-1||0,i=(r[7]||"0").substring(0,3);return n?new Date(Date.UTC(r[1],o,r[3]||1,r[4]||0,r[5]||0,r[6]||0,i)):new Date(r[1],o,r[3]||1,r[4]||0,r[5]||0,r[6]||0,i)}}return new Date(e)}(t),this.init()},g.init=function(){var t=this.$d;this.$y=t.getFullYear(),this.$M=t.getMonth(),this.$D=t.getDate(),this.$W=t.getDay(),this.$H=t.getHours(),this.$m=t.getMinutes(),this.$s=t.getSeconds(),this.$ms=t.getMilliseconds()},g.$utils=function(){return E},g.isValid=function(){return!(this.$d.toString()===d)},g.isSame=function(t,e){var n=S(t);return this.startOf(e)<=n&&n<=this.endOf(e)},g.isAfter=function(t,e){return S(t)=0&&(i[l]=parseInt(f,10))}var p=i[3],d=24===p?0:p,h=i[0]+"-"+i[1]+"-"+i[2]+" "+d+":"+i[4]+":"+i[5]+":000",y=+e;return(o.utc(h).valueOf()-(y-=y%1e3))/6e4},c=r.prototype;c.tz=function(t,e){void 0===t&&(t=i);var n=this.utcOffset(),r=this.toDate(),a=r.toLocaleString("en-US",{timeZone:t}),s=Math.round((r-new Date(a))/1e3/60),c=o(a,{locale:this.$L}).$set("millisecond",this.$ms).utcOffset(15*-Math.round(r.getTimezoneOffset()/15)-s,!0);if(e){var u=c.utcOffset();c=c.add(n-u,"minute")}return c.$x.$timezone=t,c},c.offsetName=function(t){var e=this.$x.$timezone||o.tz.guess(),n=a(this.valueOf(),e,{timeZoneName:t}).find((function(t){return"timezonename"===t.type.toLowerCase()}));return n&&n.value};var u=c.startOf;c.startOf=function(t,e){if(!this.$x||!this.$x.$timezone)return u.call(this,t,e);var n=o(this.format("YYYY-MM-DD HH:mm:ss:SSS"),{locale:this.$L});return u.call(n,t,e).tz(this.$x.$timezone,!0)},o.tz=function(t,e,n){var r=n&&e,a=n||e||i,c=s(+o(),a);if("string"!=typeof t)return o(t).tz(a);var u=function(t,e,n){var r=t-60*e*1e3,o=s(r,n);if(e===o)return[r,e];var i=s(r-=60*(o-e)*1e3,n);return o===i?[r,o]:[t-60*Math.min(o,i)*1e3,Math.max(o,i)]}(o.utc(t,r).valueOf(),c,a),f=u[0],l=u[1],p=o(f).utcOffset(l);return p.$x.$timezone=a,p},o.tz.guess=function(){return Intl.DateTimeFormat().resolvedOptions().timeZone},o.tz.setDefault=function(t){i=t}}}))},70178:function(t){!function(e,n){t.exports=n()}(0,(function(){"use strict";var t="minute",e=/[+-]\d\d(?::?\d\d)?/g,n=/([+-]|\d\d)/g;return function(r,o,i){var a=o.prototype;i.utc=function(t){var e={date:t,utc:!0,args:arguments};return new o(e)},a.utc=function(e){var n=i(this.toDate(),{locale:this.$L,utc:!0});return e?n.add(this.utcOffset(),t):n},a.local=function(){return i(this.toDate(),{locale:this.$L,utc:!1})};var s=a.parse;a.parse=function(t){t.utc&&(this.$u=!0),this.$utils().u(t.$offset)||(this.$offset=t.$offset),s.call(this,t)};var c=a.init;a.init=function(){if(this.$u){var t=this.$d;this.$y=t.getUTCFullYear(),this.$M=t.getUTCMonth(),this.$D=t.getUTCDate(),this.$W=t.getUTCDay(),this.$H=t.getUTCHours(),this.$m=t.getUTCMinutes(),this.$s=t.getUTCSeconds(),this.$ms=t.getUTCMilliseconds()}else c.call(this)};var u=a.utcOffset;a.utcOffset=function(r,o){var i=this.$utils().u;if(i(r))return this.$u?0:i(this.$offset)?u.call(this):this.$offset;if("string"==typeof r&&(r=function(t){void 0===t&&(t="");var r=t.match(e);if(!r)return null;var o=(""+r[0]).match(n)||["-",0,0],i=o[0],a=60*+o[1]+ +o[2];return 0===a?0:"+"===i?a:-a}(r),null===r))return this;var a=Math.abs(r)<=16?60*r:r,s=this;if(o)return s.$offset=a,s.$u=0===r,s;if(0!==r){var c=this.$u?this.toDate().getTimezoneOffset():-1*this.utcOffset();(s=this.local().add(a+c,t)).$offset=a,s.$x.$localOffset=c}else s=this.utc();return s};var f=a.format;a.format=function(t){var e=t||(this.$u?"YYYY-MM-DDTHH:mm:ss[Z]":"");return f.call(this,e)},a.valueOf=function(){var t=this.$utils().u(this.$offset)?0:this.$offset+(this.$x.$localOffset||this.$d.getTimezoneOffset());return this.$d.valueOf()-6e4*t},a.isUTC=function(){return!!this.$u},a.toISOString=function(){return this.toDate().toISOString()},a.toString=function(){return this.toDate().toUTCString()};var l=a.toDate;a.toDate=function(t){return"s"===t&&this.$offset?i(this.format("YYYY-MM-DD HH:mm:ss:SSS")).toDate():l.call(this)};var p=a.diff;a.diff=function(t,e,n){if(t&&this.$u===t.$u)return p.call(this,t,e,n);var r=this.local(),o=i(t).local();return p.call(r,o,e,n)}}}))},12296:function(t,e,n){"use strict";var r=n(31044)(),o=n(40210),i=r&&o("%Object.defineProperty%",!0);if(i)try{i({},"a",{value:1})}catch(u){i=!1}var a=o("%SyntaxError%"),s=o("%TypeError%"),c=n(27296);t.exports=function(t,e,n){if(!t||"object"!==typeof t&&"function"!==typeof t)throw new s("`obj` must be an object or a function`");if("string"!==typeof e&&"symbol"!==typeof e)throw new s("`property` must be a string or a symbol`");if(arguments.length>3&&"boolean"!==typeof arguments[3]&&null!==arguments[3])throw new s("`nonEnumerable`, if provided, must be a boolean or null");if(arguments.length>4&&"boolean"!==typeof arguments[4]&&null!==arguments[4])throw new s("`nonWritable`, if provided, must be a boolean or null");if(arguments.length>5&&"boolean"!==typeof arguments[5]&&null!==arguments[5])throw new s("`nonConfigurable`, if provided, must be a boolean or null");if(arguments.length>6&&"boolean"!==typeof arguments[6])throw new s("`loose`, if provided, must be a boolean");var r=arguments.length>3?arguments[3]:null,o=arguments.length>4?arguments[4]:null,u=arguments.length>5?arguments[5]:null,f=arguments.length>6&&arguments[6],l=!!c&&c(t,e);if(i)i(t,e,{configurable:null===u&&l?l.configurable:!u,enumerable:null===r&&l?l.enumerable:!r,value:n,writable:null===o&&l?l.writable:!o});else{if(!f&&(r||o||u))throw new a("This environment does not support defining a property as non-configurable, non-writable, or non-enumerable.");t[e]=n}}},4289:function(t,e,n){"use strict";var r=n(82215),o="function"===typeof Symbol&&"symbol"===typeof Symbol("foo"),i=Object.prototype.toString,a=Array.prototype.concat,s=n(12296),c=function(t){return"function"===typeof t&&"[object Function]"===i.call(t)},u=n(31044)(),f=function(t,e,n,r){if(e in t)if(!0===r){if(t[e]===n)return}else if(!c(r)||!r())return;u?s(t,e,n,!0):s(t,e,n)},l=function(t,e){var n=arguments.length>2?arguments[2]:{},i=r(e);o&&(i=a.call(i,Object.getOwnPropertySymbols(e)));for(var s=0;s=3&&(i=n),"[object Array]"===o.call(t)?a(t,e,i):"string"===typeof t?s(t,e,i):c(t,e,i)};t.exports=u},17648:function(t){"use strict";var e="Function.prototype.bind called on incompatible ",n=Object.prototype.toString,r=Math.max,o="[object Function]",i=function(t,e){for(var n=[],r=0;r1&&"boolean"!==typeof e)throw new a('"allowMissing" argument must be a boolean');if(null===A(/^%?[^%]*%?$/,t))throw new o("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var n=k(t),r=n.length>0?n[0]:"",i=T("%"+r+"%",e),s=i.name,u=i.value,f=!1,l=i.alias;l&&(r=l[0],j(n,w([0,1],l)));for(var p=1,d=!0;p=n.length){var m=c(u,h);d=!!m,u=d&&"get"in m&&!("originalValue"in m.get)?m.get:u[h]}else d=_(u,h),u=u[h];d&&!f&&(v[s]=u)}}return u}},27296:function(t,e,n){"use strict";var r=n(40210),o=r("%Object.getOwnPropertyDescriptor%",!0);if(o)try{o([],"length")}catch(i){o=null}t.exports=o},31044:function(t,e,n){"use strict";var r=n(40210),o=r("%Object.defineProperty%",!0),i=function(){if(o)try{return o({},"a",{value:1}),!0}catch(t){return!1}return!1};i.hasArrayLengthDefineBug=function(){if(!i())return null;try{return 1!==o([],"length",{value:1}).length}catch(t){return!0}},t.exports=i},28185:function(t){"use strict";var e={foo:{}},n=Object;t.exports=function(){return{__proto__:e}.foo===e.foo&&!({__proto__:null}instanceof n)}},41405:function(t,e,n){"use strict";var r="undefined"!==typeof Symbol&&Symbol,o=n(55419);t.exports=function(){return"function"===typeof r&&("function"===typeof Symbol&&("symbol"===typeof r("foo")&&("symbol"===typeof Symbol("bar")&&o())))}},55419:function(t){"use strict";t.exports=function(){if("function"!==typeof Symbol||"function"!==typeof Object.getOwnPropertySymbols)return!1;if("symbol"===typeof Symbol.iterator)return!0;var t={},e=Symbol("test"),n=Object(e);if("string"===typeof e)return!1;if("[object Symbol]"!==Object.prototype.toString.call(e))return!1;if("[object Symbol]"!==Object.prototype.toString.call(n))return!1;var r=42;for(e in t[e]=r,t)return!1;if("function"===typeof Object.keys&&0!==Object.keys(t).length)return!1;if("function"===typeof Object.getOwnPropertyNames&&0!==Object.getOwnPropertyNames(t).length)return!1;var o=Object.getOwnPropertySymbols(t);if(1!==o.length||o[0]!==e)return!1;if(!Object.prototype.propertyIsEnumerable.call(t,e))return!1;if("function"===typeof Object.getOwnPropertyDescriptor){var i=Object.getOwnPropertyDescriptor(t,e);if(i.value!==r||!0!==i.enumerable)return!1}return!0}},96410:function(t,e,n){"use strict";var r=n(55419);t.exports=function(){return r()&&!!Symbol.toStringTag}},48824:function(t,e,n){"use strict";var r=Function.prototype.call,o=Object.prototype.hasOwnProperty,i=n(58612);t.exports=i.call(r,o)},80645:function(t,e){ /*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh */ -e.read=function(t,e,n,r,o){var i,a,s=8*o-r-1,c=(1<>1,f=-7,l=n?o-1:0,p=n?-1:1,d=t[e+l];for(l+=p,i=d&(1<<-f)-1,d>>=-f,f+=s;f>0;i=256*i+t[e+l],l+=p,f-=8);for(a=i&(1<<-f)-1,i>>=-f,f+=r;f>0;a=256*a+t[e+l],l+=p,f-=8);if(0===i)i=1-u;else{if(i===c)return a?NaN:1/0*(d?-1:1);a+=Math.pow(2,r),i-=u}return(d?-1:1)*a*Math.pow(2,i-r)},e.write=function(t,e,n,r,o,i){var a,s,c,u=8*i-o-1,f=(1<>1,p=23===o?Math.pow(2,-24)-Math.pow(2,-77):0,d=r?0:i-1,h=r?1:-1,y=e<0||0===e&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(s=isNaN(e)?1:0,a=f):(a=Math.floor(Math.log(e)/Math.LN2),e*(c=Math.pow(2,-a))<1&&(a--,c*=2),e+=a+l>=1?p/c:p*Math.pow(2,1-l),e*c>=2&&(a++,c/=2),a+l>=f?(s=0,a=f):a+l>=1?(s=(e*c-1)*Math.pow(2,o),a+=l):(s=e*Math.pow(2,l-1)*Math.pow(2,o),a=0));o>=8;t[n+d]=255&s,d+=h,s/=256,o-=8);for(a=a<0;t[n+d]=255&a,d+=h,a/=256,u-=8);t[n+d-h]|=128*y}},35717:function(t){"function"===typeof Object.create?t.exports=function(t,e){e&&(t.super_=e,t.prototype=Object.create(e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}))}:t.exports=function(t,e){if(e){t.super_=e;var n=function(){};n.prototype=e.prototype,t.prototype=new n,t.prototype.constructor=t}}},82584:function(t,e,n){"use strict";var r=n(96410)(),o=n(21924),i=o("Object.prototype.toString"),a=function(t){return!(r&&t&&"object"===typeof t&&Symbol.toStringTag in t)&&"[object Arguments]"===i(t)},s=function(t){return!!a(t)||null!==t&&"object"===typeof t&&"number"===typeof t.length&&t.length>=0&&"[object Array]"!==i(t)&&"[object Function]"===i(t.callee)},c=function(){return a(arguments)}();a.isLegacyArguments=s,t.exports=c?a:s},95320:function(t){"use strict";var e,n,r=Function.prototype.toString,o="object"===typeof Reflect&&null!==Reflect&&Reflect.apply;if("function"===typeof o&&"function"===typeof Object.defineProperty)try{e=Object.defineProperty({},"length",{get:function(){throw n}}),n={},o((function(){throw 42}),null,e)}catch(b){b!==n&&(o=null)}else o=null;var i=/^\s*class\b/,a=function(t){try{var e=r.call(t);return i.test(e)}catch(n){return!1}},s=function(t){try{return!a(t)&&(r.call(t),!0)}catch(e){return!1}},c=Object.prototype.toString,u="[object Object]",f="[object Function]",l="[object GeneratorFunction]",p="[object HTMLAllCollection]",d="[object HTML document.all class]",h="[object HTMLCollection]",y="function"===typeof Symbol&&!!Symbol.toStringTag,v=!(0 in[,]),g=function(){return!1};if("object"===typeof document){var m=document.all;c.call(m)===c.call(document.all)&&(g=function(t){if((v||!t)&&("undefined"===typeof t||"object"===typeof t))try{var e=c.call(t);return(e===p||e===d||e===h||e===u)&&null==t("")}catch(n){}return!1})}t.exports=o?function(t){if(g(t))return!0;if(!t)return!1;if("function"!==typeof t&&"object"!==typeof t)return!1;try{o(t,null,e)}catch(r){if(r!==n)return!1}return!a(t)&&s(t)}:function(t){if(g(t))return!0;if(!t)return!1;if("function"!==typeof t&&"object"!==typeof t)return!1;if(y)return s(t);if(a(t))return!1;var e=c.call(t);return!(e!==f&&e!==l&&!/^\[object HTML/.test(e))&&s(t)}},48662:function(t,e,n){"use strict";var r,o=Object.prototype.toString,i=Function.prototype.toString,a=/^\s*(?:function)?\*/,s=n(96410)(),c=Object.getPrototypeOf,u=function(){if(!s)return!1;try{return Function("return function*() {}")()}catch(t){}};t.exports=function(t){if("function"!==typeof t)return!1;if(a.test(i.call(t)))return!0;if(!s){var e=o.call(t);return"[object GeneratorFunction]"===e}if(!c)return!1;if("undefined"===typeof r){var n=u();r=!!n&&c(n)}return c(t)===r}},98611:function(t){"use strict";t.exports=function(t){return t!==t}},20360:function(t,e,n){"use strict";var r=n(55559),o=n(4289),i=n(98611),a=n(29415),s=n(23194),c=r(a(),Number);o(c,{getPolyfill:a,implementation:i,shim:s}),t.exports=c},29415:function(t,e,n){"use strict";var r=n(98611);t.exports=function(){return Number.isNaN&&Number.isNaN(NaN)&&!Number.isNaN("a")?Number.isNaN:r}},23194:function(t,e,n){"use strict";var r=n(4289),o=n(29415);t.exports=function(){var t=o();return r(Number,{isNaN:t},{isNaN:function(){return Number.isNaN!==t}}),t}},85692:function(t,e,n){"use strict";var r=n(86430);t.exports=function(t){return!!r(t)}},24244:function(t){"use strict";var e=function(t){return t!==t};t.exports=function(t,n){return 0===t&&0===n?1/t===1/n:t===n||!(!e(t)||!e(n))}},20609:function(t,e,n){"use strict";var r=n(4289),o=n(55559),i=n(24244),a=n(75624),s=n(52281),c=o(a(),Object);r(c,{getPolyfill:a,implementation:i,shim:s}),t.exports=c},75624:function(t,e,n){"use strict";var r=n(24244);t.exports=function(){return"function"===typeof Object.is?Object.is:r}},52281:function(t,e,n){"use strict";var r=n(75624),o=n(4289);t.exports=function(){var t=r();return o(Object,{is:t},{is:function(){return Object.is!==t}}),t}},18987:function(t,e,n){"use strict";var r;if(!Object.keys){var o=Object.prototype.hasOwnProperty,i=Object.prototype.toString,a=n(21414),s=Object.prototype.propertyIsEnumerable,c=!s.call({toString:null},"toString"),u=s.call((function(){}),"prototype"),f=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],l=function(t){var e=t.constructor;return e&&e.prototype===t},p={$applicationCache:!0,$console:!0,$external:!0,$frame:!0,$frameElement:!0,$frames:!0,$innerHeight:!0,$innerWidth:!0,$onmozfullscreenchange:!0,$onmozfullscreenerror:!0,$outerHeight:!0,$outerWidth:!0,$pageXOffset:!0,$pageYOffset:!0,$parent:!0,$scrollLeft:!0,$scrollTop:!0,$scrollX:!0,$scrollY:!0,$self:!0,$webkitIndexedDB:!0,$webkitStorageInfo:!0,$window:!0},d=function(){if("undefined"===typeof window)return!1;for(var t in window)try{if(!p["$"+t]&&o.call(window,t)&&null!==window[t]&&"object"===typeof window[t])try{l(window[t])}catch(e){return!0}}catch(e){return!0}return!1}(),h=function(t){if("undefined"===typeof window||!d)return l(t);try{return l(t)}catch(e){return!1}};r=function(t){var e=null!==t&&"object"===typeof t,n="[object Function]"===i.call(t),r=a(t),s=e&&"[object String]"===i.call(t),l=[];if(!e&&!n&&!r)throw new TypeError("Object.keys called on a non-object");var p=u&&n;if(s&&t.length>0&&!o.call(t,0))for(var d=0;d0)for(var y=0;y=0&&"[object Function]"===e.call(t.callee)),r}},92837:function(t,e,n){"use strict";var r=n(82215),o=n(55419)(),i=n(21924),a=Object,s=i("Array.prototype.push"),c=i("Object.prototype.propertyIsEnumerable"),u=o?Object.getOwnPropertySymbols:null;t.exports=function(t,e){if(null==t)throw new TypeError("target must be an object");var n=a(t);if(1===arguments.length)return n;for(var i=1;i1)for(var n=1;n4294967295||c(e)!==e)throw new s("`length` must be a positive 32-bit integer");var n=arguments.length>2&&!!arguments[2],r=!0,u=!0;if("length"in t&&a){var f=a(t,"length");f&&!f.configurable&&(r=!1),f&&!f.writable&&(u=!1)}return(r||u||!n)&&(i?o(t,"length",e,!0,!0):o(t,"length",e)),t}},20384:function(t){t.exports=function(t){return t&&"object"===typeof t&&"function"===typeof t.copy&&"function"===typeof t.fill&&"function"===typeof t.readUInt8}},55955:function(t,e,n){"use strict";var r=n(82584),o=n(48662),i=n(86430),a=n(85692);function s(t){return t.call.bind(t)}var c="undefined"!==typeof BigInt,u="undefined"!==typeof Symbol,f=s(Object.prototype.toString),l=s(Number.prototype.valueOf),p=s(String.prototype.valueOf),d=s(Boolean.prototype.valueOf);if(c)var h=s(BigInt.prototype.valueOf);if(u)var y=s(Symbol.prototype.valueOf);function v(t,e){if("object"!==typeof t)return!1;try{return e(t),!0}catch(n){return!1}}function g(t){return"undefined"!==typeof Promise&&t instanceof Promise||null!==t&&"object"===typeof t&&"function"===typeof t.then&&"function"===typeof t.catch}function m(t){return"undefined"!==typeof ArrayBuffer&&ArrayBuffer.isView?ArrayBuffer.isView(t):a(t)||L(t)}function b(t){return"Uint8Array"===i(t)}function O(t){return"Uint8ClampedArray"===i(t)}function _(t){return"Uint16Array"===i(t)}function w(t){return"Uint32Array"===i(t)}function j(t){return"Int8Array"===i(t)}function S(t){return"Int16Array"===i(t)}function E(t){return"Int32Array"===i(t)}function A(t){return"Float32Array"===i(t)}function x(t){return"Float64Array"===i(t)}function C(t){return"BigInt64Array"===i(t)}function k(t){return"BigUint64Array"===i(t)}function T(t){return"[object Map]"===f(t)}function P(t){return"undefined"!==typeof Map&&(T.working?T(t):t instanceof Map)}function $(t){return"[object Set]"===f(t)}function D(t){return"undefined"!==typeof Set&&($.working?$(t):t instanceof Set)}function R(t){return"[object WeakMap]"===f(t)}function N(t){return"undefined"!==typeof WeakMap&&(R.working?R(t):t instanceof WeakMap)}function M(t){return"[object WeakSet]"===f(t)}function B(t){return M(t)}function I(t){return"[object ArrayBuffer]"===f(t)}function z(t){return"undefined"!==typeof ArrayBuffer&&(I.working?I(t):t instanceof ArrayBuffer)}function F(t){return"[object DataView]"===f(t)}function L(t){return"undefined"!==typeof DataView&&(F.working?F(t):t instanceof DataView)}e.isArgumentsObject=r,e.isGeneratorFunction=o,e.isTypedArray=a,e.isPromise=g,e.isArrayBufferView=m,e.isUint8Array=b,e.isUint8ClampedArray=O,e.isUint16Array=_,e.isUint32Array=w,e.isInt8Array=j,e.isInt16Array=S,e.isInt32Array=E,e.isFloat32Array=A,e.isFloat64Array=x,e.isBigInt64Array=C,e.isBigUint64Array=k,T.working="undefined"!==typeof Map&&T(new Map),e.isMap=P,$.working="undefined"!==typeof Set&&$(new Set),e.isSet=D,R.working="undefined"!==typeof WeakMap&&R(new WeakMap),e.isWeakMap=N,M.working="undefined"!==typeof WeakSet&&M(new WeakSet),e.isWeakSet=B,I.working="undefined"!==typeof ArrayBuffer&&I(new ArrayBuffer),e.isArrayBuffer=z,F.working="undefined"!==typeof ArrayBuffer&&"undefined"!==typeof DataView&&F(new DataView(new ArrayBuffer(1),0,1)),e.isDataView=L;var U="undefined"!==typeof SharedArrayBuffer?SharedArrayBuffer:void 0;function q(t){return"[object SharedArrayBuffer]"===f(t)}function H(t){return"undefined"!==typeof U&&("undefined"===typeof q.working&&(q.working=q(new U)),q.working?q(t):t instanceof U)}function G(t){return"[object AsyncFunction]"===f(t)}function K(t){return"[object Map Iterator]"===f(t)}function Z(t){return"[object Set Iterator]"===f(t)}function V(t){return"[object Generator]"===f(t)}function Y(t){return"[object WebAssembly.Module]"===f(t)}function W(t){return v(t,l)}function X(t){return v(t,p)}function J(t){return v(t,d)}function Q(t){return c&&v(t,h)}function tt(t){return u&&v(t,y)}function et(t){return W(t)||X(t)||J(t)||Q(t)||tt(t)}function nt(t){return"undefined"!==typeof Uint8Array&&(z(t)||H(t))}e.isSharedArrayBuffer=H,e.isAsyncFunction=G,e.isMapIterator=K,e.isSetIterator=Z,e.isGeneratorObject=V,e.isWebAssemblyCompiledModule=Y,e.isNumberObject=W,e.isStringObject=X,e.isBooleanObject=J,e.isBigIntObject=Q,e.isSymbolObject=tt,e.isBoxedPrimitive=et,e.isAnyArrayBuffer=nt,["isProxy","isExternal","isModuleNamespaceObject"].forEach((function(t){Object.defineProperty(e,t,{enumerable:!1,value:function(){throw new Error(t+" is not supported in userland")}})}))},89539:function(t,e,n){var r=n(34155),o=Object.getOwnPropertyDescriptors||function(t){for(var e=Object.keys(t),n={},r=0;r=o)return t;switch(t){case"%s":return String(r[n++]);case"%d":return Number(r[n++]);case"%j":try{return JSON.stringify(r[n++])}catch(e){return"[Circular]"}default:return t}})),s=r[n];n=3&&(r.depth=arguments[2]),arguments.length>=4&&(r.colors=arguments[3]),O(n)?r.showHidden=n:n&&e._extend(r,n),A(r.showHidden)&&(r.showHidden=!1),A(r.depth)&&(r.depth=2),A(r.colors)&&(r.colors=!1),A(r.customInspect)&&(r.customInspect=!0),r.colors&&(r.stylize=f),d(r,t,r.depth)}function f(t,e){var n=u.styles[e];return n?"["+u.colors[n][0]+"m"+t+"["+u.colors[n][1]+"m":t}function l(t,e){return t}function p(t){var e={};return t.forEach((function(t,n){e[t]=!0})),e}function d(t,n,r){if(t.customInspect&&n&&P(n.inspect)&&n.inspect!==e.inspect&&(!n.constructor||n.constructor.prototype!==n)){var o=n.inspect(r,t);return S(o)||(o=d(t,o,r)),o}var i=h(t,n);if(i)return i;var a=Object.keys(n),s=p(a);if(t.showHidden&&(a=Object.getOwnPropertyNames(n)),T(n)&&(a.indexOf("message")>=0||a.indexOf("description")>=0))return y(n);if(0===a.length){if(P(n)){var c=n.name?": "+n.name:"";return t.stylize("[Function"+c+"]","special")}if(x(n))return t.stylize(RegExp.prototype.toString.call(n),"regexp");if(k(n))return t.stylize(Date.prototype.toString.call(n),"date");if(T(n))return y(n)}var u,f="",l=!1,O=["{","}"];if(b(n)&&(l=!0,O=["[","]"]),P(n)){var _=n.name?": "+n.name:"";f=" [Function"+_+"]"}return x(n)&&(f=" "+RegExp.prototype.toString.call(n)),k(n)&&(f=" "+Date.prototype.toUTCString.call(n)),T(n)&&(f=" "+y(n)),0!==a.length||l&&0!=n.length?r<0?x(n)?t.stylize(RegExp.prototype.toString.call(n),"regexp"):t.stylize("[Object]","special"):(t.seen.push(n),u=l?v(t,n,r,s,a):a.map((function(e){return g(t,n,r,s,e,l)})),t.seen.pop(),m(u,f,O)):O[0]+f+O[1]}function h(t,e){if(A(e))return t.stylize("undefined","undefined");if(S(e)){var n="'"+JSON.stringify(e).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return t.stylize(n,"string")}return j(e)?t.stylize(""+e,"number"):O(e)?t.stylize(""+e,"boolean"):_(e)?t.stylize("null","null"):void 0}function y(t){return"["+Error.prototype.toString.call(t)+"]"}function v(t,e,n,r,o){for(var i=[],a=0,s=e.length;a-1&&(s=i?s.split("\n").map((function(t){return" "+t})).join("\n").slice(2):"\n"+s.split("\n").map((function(t){return" "+t})).join("\n"))):s=t.stylize("[Circular]","special")),A(a)){if(i&&o.match(/^\d+$/))return s;a=JSON.stringify(""+o),a.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(a=a.slice(1,-1),a=t.stylize(a,"name")):(a=a.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),a=t.stylize(a,"string"))}return a+": "+s}function m(t,e,n){var r=t.reduce((function(t,e){return e.indexOf("\n")>=0&&0,t+e.replace(/\u001b\[\d\d?m/g,"").length+1}),0);return r>60?n[0]+(""===e?"":e+"\n ")+" "+t.join(",\n ")+" "+n[1]:n[0]+e+" "+t.join(", ")+" "+n[1]}function b(t){return Array.isArray(t)}function O(t){return"boolean"===typeof t}function _(t){return null===t}function w(t){return null==t}function j(t){return"number"===typeof t}function S(t){return"string"===typeof t}function E(t){return"symbol"===typeof t}function A(t){return void 0===t}function x(t){return C(t)&&"[object RegExp]"===D(t)}function C(t){return"object"===typeof t&&null!==t}function k(t){return C(t)&&"[object Date]"===D(t)}function T(t){return C(t)&&("[object Error]"===D(t)||t instanceof Error)}function P(t){return"function"===typeof t}function $(t){return null===t||"boolean"===typeof t||"number"===typeof t||"string"===typeof t||"symbol"===typeof t||"undefined"===typeof t}function D(t){return Object.prototype.toString.call(t)}function R(t){return t<10?"0"+t.toString(10):t.toString(10)}e.debuglog=function(t){if(t=t.toUpperCase(),!a[t])if(s.test(t)){var n=r.pid;a[t]=function(){var r=e.format.apply(e,arguments);console.error("%s %d: %s",t,n,r)}}else a[t]=function(){};return a[t]},e.inspect=u,u.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},u.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"},e.types=n(55955),e.isArray=b,e.isBoolean=O,e.isNull=_,e.isNullOrUndefined=w,e.isNumber=j,e.isString=S,e.isSymbol=E,e.isUndefined=A,e.isRegExp=x,e.types.isRegExp=x,e.isObject=C,e.isDate=k,e.types.isDate=k,e.isError=T,e.types.isNativeError=T,e.isFunction=P,e.isPrimitive=$,e.isBuffer=n(20384);var N=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function M(){var t=new Date,e=[R(t.getHours()),R(t.getMinutes()),R(t.getSeconds())].join(":");return[t.getDate(),N[t.getMonth()],e].join(" ")}function B(t,e){return Object.prototype.hasOwnProperty.call(t,e)}e.log=function(){console.log("%s - %s",M(),e.format.apply(e,arguments))},e.inherits=n(35717),e._extend=function(t,e){if(!e||!C(e))return t;var n=Object.keys(e),r=n.length;while(r--)t[n[r]]=e[n[r]];return t};var I="undefined"!==typeof Symbol?Symbol("util.promisify.custom"):void 0;function z(t,e){if(!t){var n=new Error("Promise was rejected with a falsy value");n.reason=t,t=n}return e(t)}function F(t){if("function"!==typeof t)throw new TypeError('The "original" argument must be of type Function');function e(){for(var e=[],n=0;n>1,f=-7,l=n?o-1:0,p=n?-1:1,d=t[e+l];for(l+=p,i=d&(1<<-f)-1,d>>=-f,f+=s;f>0;i=256*i+t[e+l],l+=p,f-=8);for(a=i&(1<<-f)-1,i>>=-f,f+=r;f>0;a=256*a+t[e+l],l+=p,f-=8);if(0===i)i=1-u;else{if(i===c)return a?NaN:1/0*(d?-1:1);a+=Math.pow(2,r),i-=u}return(d?-1:1)*a*Math.pow(2,i-r)},e.write=function(t,e,n,r,o,i){var a,s,c,u=8*i-o-1,f=(1<>1,p=23===o?Math.pow(2,-24)-Math.pow(2,-77):0,d=r?0:i-1,h=r?1:-1,y=e<0||0===e&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(s=isNaN(e)?1:0,a=f):(a=Math.floor(Math.log(e)/Math.LN2),e*(c=Math.pow(2,-a))<1&&(a--,c*=2),e+=a+l>=1?p/c:p*Math.pow(2,1-l),e*c>=2&&(a++,c/=2),a+l>=f?(s=0,a=f):a+l>=1?(s=(e*c-1)*Math.pow(2,o),a+=l):(s=e*Math.pow(2,l-1)*Math.pow(2,o),a=0));o>=8;t[n+d]=255&s,d+=h,s/=256,o-=8);for(a=a<0;t[n+d]=255&a,d+=h,a/=256,u-=8);t[n+d-h]|=128*y}},35717:function(t){"function"===typeof Object.create?t.exports=function(t,e){e&&(t.super_=e,t.prototype=Object.create(e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}))}:t.exports=function(t,e){if(e){t.super_=e;var n=function(){};n.prototype=e.prototype,t.prototype=new n,t.prototype.constructor=t}}},82584:function(t,e,n){"use strict";var r=n(96410)(),o=n(21924),i=o("Object.prototype.toString"),a=function(t){return!(r&&t&&"object"===typeof t&&Symbol.toStringTag in t)&&"[object Arguments]"===i(t)},s=function(t){return!!a(t)||null!==t&&"object"===typeof t&&"number"===typeof t.length&&t.length>=0&&"[object Array]"!==i(t)&&"[object Function]"===i(t.callee)},c=function(){return a(arguments)}();a.isLegacyArguments=s,t.exports=c?a:s},95320:function(t){"use strict";var e,n,r=Function.prototype.toString,o="object"===typeof Reflect&&null!==Reflect&&Reflect.apply;if("function"===typeof o&&"function"===typeof Object.defineProperty)try{e=Object.defineProperty({},"length",{get:function(){throw n}}),n={},o((function(){throw 42}),null,e)}catch(b){b!==n&&(o=null)}else o=null;var i=/^\s*class\b/,a=function(t){try{var e=r.call(t);return i.test(e)}catch(n){return!1}},s=function(t){try{return!a(t)&&(r.call(t),!0)}catch(e){return!1}},c=Object.prototype.toString,u="[object Object]",f="[object Function]",l="[object GeneratorFunction]",p="[object HTMLAllCollection]",d="[object HTML document.all class]",h="[object HTMLCollection]",y="function"===typeof Symbol&&!!Symbol.toStringTag,v=!(0 in[,]),g=function(){return!1};if("object"===typeof document){var m=document.all;c.call(m)===c.call(document.all)&&(g=function(t){if((v||!t)&&("undefined"===typeof t||"object"===typeof t))try{var e=c.call(t);return(e===p||e===d||e===h||e===u)&&null==t("")}catch(n){}return!1})}t.exports=o?function(t){if(g(t))return!0;if(!t)return!1;if("function"!==typeof t&&"object"!==typeof t)return!1;try{o(t,null,e)}catch(r){if(r!==n)return!1}return!a(t)&&s(t)}:function(t){if(g(t))return!0;if(!t)return!1;if("function"!==typeof t&&"object"!==typeof t)return!1;if(y)return s(t);if(a(t))return!1;var e=c.call(t);return!(e!==f&&e!==l&&!/^\[object HTML/.test(e))&&s(t)}},48662:function(t,e,n){"use strict";var r,o=Object.prototype.toString,i=Function.prototype.toString,a=/^\s*(?:function)?\*/,s=n(96410)(),c=Object.getPrototypeOf,u=function(){if(!s)return!1;try{return Function("return function*() {}")()}catch(t){}};t.exports=function(t){if("function"!==typeof t)return!1;if(a.test(i.call(t)))return!0;if(!s){var e=o.call(t);return"[object GeneratorFunction]"===e}if(!c)return!1;if("undefined"===typeof r){var n=u();r=!!n&&c(n)}return c(t)===r}},98611:function(t){"use strict";t.exports=function(t){return t!==t}},20360:function(t,e,n){"use strict";var r=n(55559),o=n(4289),i=n(98611),a=n(29415),s=n(23194),c=r(a(),Number);o(c,{getPolyfill:a,implementation:i,shim:s}),t.exports=c},29415:function(t,e,n){"use strict";var r=n(98611);t.exports=function(){return Number.isNaN&&Number.isNaN(NaN)&&!Number.isNaN("a")?Number.isNaN:r}},23194:function(t,e,n){"use strict";var r=n(4289),o=n(29415);t.exports=function(){var t=o();return r(Number,{isNaN:t},{isNaN:function(){return Number.isNaN!==t}}),t}},85692:function(t,e,n){"use strict";var r=n(86430);t.exports=function(t){return!!r(t)}},24244:function(t){"use strict";var e=function(t){return t!==t};t.exports=function(t,n){return 0===t&&0===n?1/t===1/n:t===n||!(!e(t)||!e(n))}},20609:function(t,e,n){"use strict";var r=n(4289),o=n(55559),i=n(24244),a=n(75624),s=n(52281),c=o(a(),Object);r(c,{getPolyfill:a,implementation:i,shim:s}),t.exports=c},75624:function(t,e,n){"use strict";var r=n(24244);t.exports=function(){return"function"===typeof Object.is?Object.is:r}},52281:function(t,e,n){"use strict";var r=n(75624),o=n(4289);t.exports=function(){var t=r();return o(Object,{is:t},{is:function(){return Object.is!==t}}),t}},18987:function(t,e,n){"use strict";var r;if(!Object.keys){var o=Object.prototype.hasOwnProperty,i=Object.prototype.toString,a=n(21414),s=Object.prototype.propertyIsEnumerable,c=!s.call({toString:null},"toString"),u=s.call((function(){}),"prototype"),f=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],l=function(t){var e=t.constructor;return e&&e.prototype===t},p={$applicationCache:!0,$console:!0,$external:!0,$frame:!0,$frameElement:!0,$frames:!0,$innerHeight:!0,$innerWidth:!0,$onmozfullscreenchange:!0,$onmozfullscreenerror:!0,$outerHeight:!0,$outerWidth:!0,$pageXOffset:!0,$pageYOffset:!0,$parent:!0,$scrollLeft:!0,$scrollTop:!0,$scrollX:!0,$scrollY:!0,$self:!0,$webkitIndexedDB:!0,$webkitStorageInfo:!0,$window:!0},d=function(){if("undefined"===typeof window)return!1;for(var t in window)try{if(!p["$"+t]&&o.call(window,t)&&null!==window[t]&&"object"===typeof window[t])try{l(window[t])}catch(e){return!0}}catch(e){return!0}return!1}(),h=function(t){if("undefined"===typeof window||!d)return l(t);try{return l(t)}catch(e){return!1}};r=function(t){var e=null!==t&&"object"===typeof t,n="[object Function]"===i.call(t),r=a(t),s=e&&"[object String]"===i.call(t),l=[];if(!e&&!n&&!r)throw new TypeError("Object.keys called on a non-object");var p=u&&n;if(s&&t.length>0&&!o.call(t,0))for(var d=0;d0)for(var y=0;y=0&&"[object Function]"===e.call(t.callee)),r}},92837:function(t,e,n){"use strict";var r=n(82215),o=n(55419)(),i=n(21924),a=Object,s=i("Array.prototype.push"),c=i("Object.prototype.propertyIsEnumerable"),u=o?Object.getOwnPropertySymbols:null;t.exports=function(t,e){if(null==t)throw new TypeError("target must be an object");var n=a(t);if(1===arguments.length)return n;for(var i=1;i1)for(var n=1;n4294967295||c(e)!==e)throw new s("`length` must be a positive 32-bit integer");var n=arguments.length>2&&!!arguments[2],r=!0,u=!0;if("length"in t&&a){var f=a(t,"length");f&&!f.configurable&&(r=!1),f&&!f.writable&&(u=!1)}return(r||u||!n)&&(i?o(t,"length",e,!0,!0):o(t,"length",e)),t}},20384:function(t){t.exports=function(t){return t&&"object"===typeof t&&"function"===typeof t.copy&&"function"===typeof t.fill&&"function"===typeof t.readUInt8}},55955:function(t,e,n){"use strict";var r=n(82584),o=n(48662),i=n(86430),a=n(85692);function s(t){return t.call.bind(t)}var c="undefined"!==typeof BigInt,u="undefined"!==typeof Symbol,f=s(Object.prototype.toString),l=s(Number.prototype.valueOf),p=s(String.prototype.valueOf),d=s(Boolean.prototype.valueOf);if(c)var h=s(BigInt.prototype.valueOf);if(u)var y=s(Symbol.prototype.valueOf);function v(t,e){if("object"!==typeof t)return!1;try{return e(t),!0}catch(n){return!1}}function g(t){return"undefined"!==typeof Promise&&t instanceof Promise||null!==t&&"object"===typeof t&&"function"===typeof t.then&&"function"===typeof t.catch}function m(t){return"undefined"!==typeof ArrayBuffer&&ArrayBuffer.isView?ArrayBuffer.isView(t):a(t)||L(t)}function b(t){return"Uint8Array"===i(t)}function O(t){return"Uint8ClampedArray"===i(t)}function _(t){return"Uint16Array"===i(t)}function w(t){return"Uint32Array"===i(t)}function j(t){return"Int8Array"===i(t)}function S(t){return"Int16Array"===i(t)}function E(t){return"Int32Array"===i(t)}function A(t){return"Float32Array"===i(t)}function x(t){return"Float64Array"===i(t)}function C(t){return"BigInt64Array"===i(t)}function k(t){return"BigUint64Array"===i(t)}function T(t){return"[object Map]"===f(t)}function P(t){return"undefined"!==typeof Map&&(T.working?T(t):t instanceof Map)}function $(t){return"[object Set]"===f(t)}function D(t){return"undefined"!==typeof Set&&($.working?$(t):t instanceof Set)}function R(t){return"[object WeakMap]"===f(t)}function N(t){return"undefined"!==typeof WeakMap&&(R.working?R(t):t instanceof WeakMap)}function M(t){return"[object WeakSet]"===f(t)}function B(t){return M(t)}function I(t){return"[object ArrayBuffer]"===f(t)}function z(t){return"undefined"!==typeof ArrayBuffer&&(I.working?I(t):t instanceof ArrayBuffer)}function F(t){return"[object DataView]"===f(t)}function L(t){return"undefined"!==typeof DataView&&(F.working?F(t):t instanceof DataView)}e.isArgumentsObject=r,e.isGeneratorFunction=o,e.isTypedArray=a,e.isPromise=g,e.isArrayBufferView=m,e.isUint8Array=b,e.isUint8ClampedArray=O,e.isUint16Array=_,e.isUint32Array=w,e.isInt8Array=j,e.isInt16Array=S,e.isInt32Array=E,e.isFloat32Array=A,e.isFloat64Array=x,e.isBigInt64Array=C,e.isBigUint64Array=k,T.working="undefined"!==typeof Map&&T(new Map),e.isMap=P,$.working="undefined"!==typeof Set&&$(new Set),e.isSet=D,R.working="undefined"!==typeof WeakMap&&R(new WeakMap),e.isWeakMap=N,M.working="undefined"!==typeof WeakSet&&M(new WeakSet),e.isWeakSet=B,I.working="undefined"!==typeof ArrayBuffer&&I(new ArrayBuffer),e.isArrayBuffer=z,F.working="undefined"!==typeof ArrayBuffer&&"undefined"!==typeof DataView&&F(new DataView(new ArrayBuffer(1),0,1)),e.isDataView=L;var U="undefined"!==typeof SharedArrayBuffer?SharedArrayBuffer:void 0;function q(t){return"[object SharedArrayBuffer]"===f(t)}function H(t){return"undefined"!==typeof U&&("undefined"===typeof q.working&&(q.working=q(new U)),q.working?q(t):t instanceof U)}function G(t){return"[object AsyncFunction]"===f(t)}function K(t){return"[object Map Iterator]"===f(t)}function Z(t){return"[object Set Iterator]"===f(t)}function V(t){return"[object Generator]"===f(t)}function Y(t){return"[object WebAssembly.Module]"===f(t)}function W(t){return v(t,l)}function X(t){return v(t,p)}function J(t){return v(t,d)}function Q(t){return c&&v(t,h)}function tt(t){return u&&v(t,y)}function et(t){return W(t)||X(t)||J(t)||Q(t)||tt(t)}function nt(t){return"undefined"!==typeof Uint8Array&&(z(t)||H(t))}e.isSharedArrayBuffer=H,e.isAsyncFunction=G,e.isMapIterator=K,e.isSetIterator=Z,e.isGeneratorObject=V,e.isWebAssemblyCompiledModule=Y,e.isNumberObject=W,e.isStringObject=X,e.isBooleanObject=J,e.isBigIntObject=Q,e.isSymbolObject=tt,e.isBoxedPrimitive=et,e.isAnyArrayBuffer=nt,["isProxy","isExternal","isModuleNamespaceObject"].forEach((function(t){Object.defineProperty(e,t,{enumerable:!1,value:function(){throw new Error(t+" is not supported in userland")}})}))},89539:function(t,e,n){var r=n(34155),o=Object.getOwnPropertyDescriptors||function(t){for(var e=Object.keys(t),n={},r=0;r=o)return t;switch(t){case"%s":return String(r[n++]);case"%d":return Number(r[n++]);case"%j":try{return JSON.stringify(r[n++])}catch(e){return"[Circular]"}default:return t}})),s=r[n];n=3&&(r.depth=arguments[2]),arguments.length>=4&&(r.colors=arguments[3]),O(n)?r.showHidden=n:n&&e._extend(r,n),A(r.showHidden)&&(r.showHidden=!1),A(r.depth)&&(r.depth=2),A(r.colors)&&(r.colors=!1),A(r.customInspect)&&(r.customInspect=!0),r.colors&&(r.stylize=f),d(r,t,r.depth)}function f(t,e){var n=u.styles[e];return n?"["+u.colors[n][0]+"m"+t+"["+u.colors[n][1]+"m":t}function l(t,e){return t}function p(t){var e={};return t.forEach((function(t,n){e[t]=!0})),e}function d(t,n,r){if(t.customInspect&&n&&P(n.inspect)&&n.inspect!==e.inspect&&(!n.constructor||n.constructor.prototype!==n)){var o=n.inspect(r,t);return S(o)||(o=d(t,o,r)),o}var i=h(t,n);if(i)return i;var a=Object.keys(n),s=p(a);if(t.showHidden&&(a=Object.getOwnPropertyNames(n)),T(n)&&(a.indexOf("message")>=0||a.indexOf("description")>=0))return y(n);if(0===a.length){if(P(n)){var c=n.name?": "+n.name:"";return t.stylize("[Function"+c+"]","special")}if(x(n))return t.stylize(RegExp.prototype.toString.call(n),"regexp");if(k(n))return t.stylize(Date.prototype.toString.call(n),"date");if(T(n))return y(n)}var u,f="",l=!1,O=["{","}"];if(b(n)&&(l=!0,O=["[","]"]),P(n)){var _=n.name?": "+n.name:"";f=" [Function"+_+"]"}return x(n)&&(f=" "+RegExp.prototype.toString.call(n)),k(n)&&(f=" "+Date.prototype.toUTCString.call(n)),T(n)&&(f=" "+y(n)),0!==a.length||l&&0!=n.length?r<0?x(n)?t.stylize(RegExp.prototype.toString.call(n),"regexp"):t.stylize("[Object]","special"):(t.seen.push(n),u=l?v(t,n,r,s,a):a.map((function(e){return g(t,n,r,s,e,l)})),t.seen.pop(),m(u,f,O)):O[0]+f+O[1]}function h(t,e){if(A(e))return t.stylize("undefined","undefined");if(S(e)){var n="'"+JSON.stringify(e).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return t.stylize(n,"string")}return j(e)?t.stylize(""+e,"number"):O(e)?t.stylize(""+e,"boolean"):_(e)?t.stylize("null","null"):void 0}function y(t){return"["+Error.prototype.toString.call(t)+"]"}function v(t,e,n,r,o){for(var i=[],a=0,s=e.length;a-1&&(s=i?s.split("\n").map((function(t){return" "+t})).join("\n").slice(2):"\n"+s.split("\n").map((function(t){return" "+t})).join("\n"))):s=t.stylize("[Circular]","special")),A(a)){if(i&&o.match(/^\d+$/))return s;a=JSON.stringify(""+o),a.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(a=a.slice(1,-1),a=t.stylize(a,"name")):(a=a.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),a=t.stylize(a,"string"))}return a+": "+s}function m(t,e,n){var r=t.reduce((function(t,e){return e.indexOf("\n")>=0&&0,t+e.replace(/\u001b\[\d\d?m/g,"").length+1}),0);return r>60?n[0]+(""===e?"":e+"\n ")+" "+t.join(",\n ")+" "+n[1]:n[0]+e+" "+t.join(", ")+" "+n[1]}function b(t){return Array.isArray(t)}function O(t){return"boolean"===typeof t}function _(t){return null===t}function w(t){return null==t}function j(t){return"number"===typeof t}function S(t){return"string"===typeof t}function E(t){return"symbol"===typeof t}function A(t){return void 0===t}function x(t){return C(t)&&"[object RegExp]"===D(t)}function C(t){return"object"===typeof t&&null!==t}function k(t){return C(t)&&"[object Date]"===D(t)}function T(t){return C(t)&&("[object Error]"===D(t)||t instanceof Error)}function P(t){return"function"===typeof t}function $(t){return null===t||"boolean"===typeof t||"number"===typeof t||"string"===typeof t||"symbol"===typeof t||"undefined"===typeof t}function D(t){return Object.prototype.toString.call(t)}function R(t){return t<10?"0"+t.toString(10):t.toString(10)}e.debuglog=function(t){if(t=t.toUpperCase(),!a[t])if(s.test(t)){var n=r.pid;a[t]=function(){var r=e.format.apply(e,arguments);console.error("%s %d: %s",t,n,r)}}else a[t]=function(){};return a[t]},e.inspect=u,u.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},u.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"},e.types=n(55955),e.isArray=b,e.isBoolean=O,e.isNull=_,e.isNullOrUndefined=w,e.isNumber=j,e.isString=S,e.isSymbol=E,e.isUndefined=A,e.isRegExp=x,e.types.isRegExp=x,e.isObject=C,e.isDate=k,e.types.isDate=k,e.isError=T,e.types.isNativeError=T,e.isFunction=P,e.isPrimitive=$,e.isBuffer=n(20384);var N=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function M(){var t=new Date,e=[R(t.getHours()),R(t.getMinutes()),R(t.getSeconds())].join(":");return[t.getDate(),N[t.getMonth()],e].join(" ")}function B(t,e){return Object.prototype.hasOwnProperty.call(t,e)}e.log=function(){console.log("%s - %s",M(),e.format.apply(e,arguments))},e.inherits=n(35717),e._extend=function(t,e){if(!e||!C(e))return t;var n=Object.keys(e),r=n.length;while(r--)t[n[r]]=e[n[r]];return t};var I="undefined"!==typeof Symbol?Symbol("util.promisify.custom"):void 0;function z(t,e){if(!t){var n=new Error("Promise was rejected with a falsy value");n.reason=t,t=n}return e(t)}function F(t){if("function"!==typeof t)throw new TypeError('The "original" argument must be of type Function');function e(){for(var e=[],n=0;na=t,c=Symbol();function u(t){return t&&"object"===typeof t&&"[object Object]"===Object.prototype.toString.call(t)&&"function"!==typeof t.toJSON}var f;(function(t){t["direct"]="direct",t["patchObject"]="patch object",t["patchFunction"]="patch function"})(f||(f={}));const l="undefined"!==typeof window,p="undefined"!==typeof __VUE_PROD_DEVTOOLS__&&__VUE_PROD_DEVTOOLS__&&l,d=(()=>"object"===typeof window&&window.window===window?window:"object"===typeof self&&self.self===self?self:"object"===typeof global&&global.global===global?global:"object"===typeof globalThis?globalThis:{HTMLElement:null})();function h(t,{autoBom:e=!1}={}){return e&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(t.type)?new Blob([String.fromCharCode(65279),t],{type:t.type}):t}function y(t,e,n){const r=new XMLHttpRequest;r.open("GET",t),r.responseType="blob",r.onload=function(){O(r.response,e,n)},r.onerror=function(){console.error("could not download file")},r.send()}function v(t){const e=new XMLHttpRequest;e.open("HEAD",t,!1);try{e.send()}catch(n){}return e.status>=200&&e.status<=299}function g(t){try{t.dispatchEvent(new MouseEvent("click"))}catch(e){const n=document.createEvent("MouseEvents");n.initMouseEvent("click",!0,!0,window,0,0,0,80,20,!1,!1,!1,!1,0,null),t.dispatchEvent(n)}}const m="object"===typeof navigator?navigator:{userAgent:""},b=(()=>/Macintosh/.test(m.userAgent)&&/AppleWebKit/.test(m.userAgent)&&!/Safari/.test(m.userAgent))(),O=l?"undefined"!==typeof HTMLAnchorElement&&"download"in HTMLAnchorElement.prototype&&!b?_:"msSaveOrOpenBlob"in m?w:j:()=>{};function _(t,e="download",n){const r=document.createElement("a");r.download=e,r.rel="noopener","string"===typeof t?(r.href=t,r.origin!==location.origin?v(r.href)?y(t,e,n):(r.target="_blank",g(r)):g(r)):(r.href=URL.createObjectURL(t),setTimeout((function(){URL.revokeObjectURL(r.href)}),4e4),setTimeout((function(){g(r)}),0))}function w(t,e="download",n){if("string"===typeof t)if(v(t))y(t,e,n);else{const e=document.createElement("a");e.href=t,e.target="_blank",setTimeout((function(){g(e)}))}else navigator.msSaveOrOpenBlob(h(t,n),e)}function j(t,e,n,r){if(r=r||open("","_blank"),r&&(r.document.title=r.document.body.innerText="downloading..."),"string"===typeof t)return y(t,e,n);const o="application/octet-stream"===t.type,i=/constructor/i.test(String(d.HTMLElement))||"safari"in d,a=/CriOS\/[\d]+/.test(navigator.userAgent);if((a||o&&i||b)&&"undefined"!==typeof FileReader){const e=new FileReader;e.onloadend=function(){let t=e.result;if("string"!==typeof t)throw r=null,new Error("Wrong reader.result type");t=a?t:t.replace(/^data:[^;]*;/,"data:attachment/file;"),r?r.location.href=t:location.assign(t),r=null},e.readAsDataURL(t)}else{const e=URL.createObjectURL(t);r?r.location.assign(e):location.href=e,r=null,setTimeout((function(){URL.revokeObjectURL(e)}),4e4)}}const{assign:S}=Object;const E=()=>{};function A(t,e,n,o=E){t.push(e);const i=()=>{const n=t.indexOf(e);n>-1&&(t.splice(n,1),o())};return!n&&(0,r.getCurrentScope)()&&(0,r.onScopeDispose)(i),i}function x(t,...e){t.slice().forEach((t=>{t(...e)}))}const C=t=>t();function k(t,e){t instanceof Map&&e instanceof Map&&e.forEach(((e,n)=>t.set(n,e))),t instanceof Set&&e instanceof Set&&e.forEach(t.add,t);for(const n in e){if(!e.hasOwnProperty(n))continue;const o=e[n],i=t[n];u(i)&&u(o)&&t.hasOwnProperty(n)&&!(0,r.isRef)(o)&&!(0,r.isReactive)(o)?t[n]=k(i,o):t[n]=o}return t}const T=Symbol(),P=new WeakMap;function $(t){return o?!P.has(t):!u(t)||!t.hasOwnProperty(T)}const{assign:D}=Object;function R(t){return!(!(0,r.isRef)(t)||!t.effect)}function N(t,e,n,i){const{state:a,actions:c,getters:u}=e,f=n.state.value[t];let l;function p(){f||(o?(0,r.set)(n.state.value,t,a?a():{}):n.state.value[t]=a?a():{});const e=(0,r.toRefs)(n.state.value[t]);return D(e,c,Object.keys(u||{}).reduce(((e,i)=>(e[i]=(0,r.markRaw)((0,r.computed)((()=>{s(n);const e=n._s.get(t);if(!o||e._r)return u[i].call(e,e)}))),e)),{}))}return l=M(t,p,e,n,i,!0),l}function M(t,e,n={},i,a,c){let u;const l=D({actions:{}},n);const d={deep:!0};let h,y;let v,g=[],m=[];const b=i.state.value[t];c||b||(o?(0,r.set)(i.state.value,t,{}):i.state.value[t]={});const O=(0,r.ref)({});let _;function w(e){let n;h=y=!1,"function"===typeof e?(e(i.state.value[t]),n={type:f.patchFunction,storeId:t,events:v}):(k(i.state.value[t],e),n={type:f.patchObject,payload:e,storeId:t,events:v});const o=_=Symbol();(0,r.nextTick)().then((()=>{_===o&&(h=!0)})),y=!0,x(g,n,i.state.value[t])}const j=c?function(){const{state:t}=n,e=t?t():{};this.$patch((t=>{D(t,e)}))}:E;function S(){u.stop(),g=[],m=[],i._s.delete(t)}function T(e,n){return function(){s(i);const r=Array.from(arguments),o=[],a=[];function c(t){o.push(t)}function u(t){a.push(t)}let f;x(m,{args:r,name:e,store:M,after:c,onError:u});try{f=n.apply(this&&this.$id===t?this:M,r)}catch(l){throw x(a,l),l}return f instanceof Promise?f.then((t=>(x(o,t),t))).catch((t=>(x(a,t),Promise.reject(t)))):(x(o,f),f)}}const P=(0,r.markRaw)({actions:{},getters:{},state:[],hotState:O}),N={_p:i,$id:t,$onAction:A.bind(null,m),$patch:w,$reset:j,$subscribe(e,n={}){const o=A(g,e,n.detached,(()=>a())),a=u.run((()=>(0,r.watch)((()=>i.state.value[t]),(r=>{("sync"===n.flush?y:h)&&e({storeId:t,type:f.direct,events:v},r)}),D({},d,n))));return o},$dispose:S};o&&(N._r=!1);const M=(0,r.reactive)(p?D({_hmrPayload:P,_customProperties:(0,r.markRaw)(new Set)},N):N);i._s.set(t,M);const B=i._a&&i._a.runWithContext||C,I=B((()=>i._e.run((()=>(u=(0,r.effectScope)()).run(e)))));for(const s in I){const e=I[s];if((0,r.isRef)(e)&&!R(e)||(0,r.isReactive)(e))c||(b&&$(e)&&((0,r.isRef)(e)?e.value=b[s]:k(e,b[s])),o?(0,r.set)(i.state.value[t],s,e):i.state.value[t][s]=e);else if("function"===typeof e){const t=T(s,e);o?(0,r.set)(I,s,t):I[s]=t,l.actions[s]=e}else 0}if(o?Object.keys(I).forEach((t=>{(0,r.set)(M,t,I[t])})):(D(M,I),D((0,r.toRaw)(M),I)),Object.defineProperty(M,"$state",{get:()=>i.state.value[t],set:t=>{w((e=>{D(e,t)}))}}),p){const t={writable:!0,configurable:!0,enumerable:!1};["_p","_hmrPayload","_getters","_customProperties"].forEach((e=>{Object.defineProperty(M,e,D({value:M[e]},t))}))}return o&&(M._r=!0),i._p.forEach((t=>{if(p){const e=u.run((()=>t({store:M,app:i._a,pinia:i,options:l})));Object.keys(e||{}).forEach((t=>M._customProperties.add(t))),D(M,e)}else D(M,u.run((()=>t({store:M,app:i._a,pinia:i,options:l}))))})),b&&c&&n.hydrate&&n.hydrate(M.$state,b),h=!0,y=!0,M}function B(t,e,n){let o,u;const f="function"===typeof e;function l(t,n){const l=i();t=t||(l?(0,r.inject)(c,null):null),t&&s(t),t=a,t._s.has(o)||(f?M(o,e,u,t):N(o,u,t));const p=t._s.get(o);return p}return"string"===typeof t?(o=t,u=f?n:e):(u=t,o=t.id),l.$id=o,l}}}]); -//# sourceMappingURL=216.b85e2f18.js.map \ No newline at end of file +//# sourceMappingURL=216.b85153e8.js.map \ No newline at end of file diff --git a/client/dist/assets/js/216.b85e2f18.js.map b/client/dist/assets/js/216.b85153e8.js.map similarity index 99% rename from client/dist/assets/js/216.b85e2f18.js.map rename to client/dist/assets/js/216.b85153e8.js.map index 5ef6c320..2fc15ff4 100644 --- a/client/dist/assets/js/216.b85e2f18.js.map +++ b/client/dist/assets/js/216.b85153e8.js.map @@ -1 +1 @@ -{"version":3,"file":"assets/js/216.b85e2f18.js","mappings":"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","sources":["webpack://KonomiTV/./node_modules/assert/build/assert.js","webpack://KonomiTV/./node_modules/assert/build/internal/assert/assertion_error.js","webpack://KonomiTV/./node_modules/assert/build/internal/errors.js","webpack://KonomiTV/./node_modules/assert/build/internal/util/comparisons.js","webpack://KonomiTV/./node_modules/base64-js/index.js","webpack://KonomiTV/./src/message.ts","webpack://KonomiTV/./src/services/APIClient.ts","webpack://KonomiTV/./src/services/Settings.ts","webpack://KonomiTV/./src/services/Users.ts","webpack://KonomiTV/./src/stores/SettingsStore.ts","webpack://KonomiTV/./src/stores/UserStore.ts","webpack://KonomiTV/./src/utils/CommentUtils.ts","webpack://KonomiTV/./src/utils/Utils.ts","webpack://KonomiTV/./node_modules/call-bind/callBound.js","webpack://KonomiTV/./node_modules/call-bind/index.js","webpack://KonomiTV/./node_modules/dayjs/dayjs.min.js","webpack://KonomiTV/./node_modules/dayjs/locale/ja.js","webpack://KonomiTV/./node_modules/dayjs/plugin/isBetween.js","webpack://KonomiTV/./node_modules/dayjs/plugin/isSameOrAfter.js","webpack://KonomiTV/./node_modules/dayjs/plugin/isSameOrBefore.js","webpack://KonomiTV/./node_modules/dayjs/plugin/timezone.js","webpack://KonomiTV/./node_modules/dayjs/plugin/utc.js","webpack://KonomiTV/./node_modules/define-data-property/index.js","webpack://KonomiTV/./node_modules/define-properties/index.js","webpack://KonomiTV/./node_modules/for-each/index.js","webpack://KonomiTV/./node_modules/function-bind/implementation.js","webpack://KonomiTV/./node_modules/function-bind/index.js","webpack://KonomiTV/./node_modules/get-intrinsic/index.js","webpack://KonomiTV/./node_modules/gopd/index.js","webpack://KonomiTV/./node_modules/has-property-descriptors/index.js","webpack://KonomiTV/./node_modules/has-proto/index.js","webpack://KonomiTV/./node_modules/has-symbols/index.js","webpack://KonomiTV/./node_modules/has-symbols/shams.js","webpack://KonomiTV/./node_modules/has-tostringtag/shams.js","webpack://KonomiTV/./node_modules/hasown/index.js","webpack://KonomiTV/./node_modules/ieee754/index.js","webpack://KonomiTV/./node_modules/inherits/inherits_browser.js","webpack://KonomiTV/./node_modules/is-arguments/index.js","webpack://KonomiTV/./node_modules/is-callable/index.js","webpack://KonomiTV/./node_modules/is-generator-function/index.js","webpack://KonomiTV/./node_modules/is-nan/implementation.js","webpack://KonomiTV/./node_modules/is-nan/index.js","webpack://KonomiTV/./node_modules/is-nan/polyfill.js","webpack://KonomiTV/./node_modules/is-nan/shim.js","webpack://KonomiTV/./node_modules/is-typed-array/index.js","webpack://KonomiTV/./node_modules/object-is/implementation.js","webpack://KonomiTV/./node_modules/object-is/index.js","webpack://KonomiTV/./node_modules/object-is/polyfill.js","webpack://KonomiTV/./node_modules/object-is/shim.js","webpack://KonomiTV/./node_modules/object-keys/implementation.js","webpack://KonomiTV/./node_modules/object-keys/index.js","webpack://KonomiTV/./node_modules/object-keys/isArguments.js","webpack://KonomiTV/./node_modules/object.assign/implementation.js","webpack://KonomiTV/./node_modules/object.assign/polyfill.js","webpack://KonomiTV/./node_modules/process/browser.js","webpack://KonomiTV/./node_modules/set-function-length/index.js","webpack://KonomiTV/./node_modules/util/support/isBufferBrowser.js","webpack://KonomiTV/./node_modules/util/support/types.js","webpack://KonomiTV/./node_modules/util/util.js","webpack://KonomiTV/./node_modules/vue/dist/vue.runtime.esm.js","webpack://KonomiTV/./node_modules/which-typed-array/index.js","webpack://KonomiTV/./node_modules/available-typed-arrays/index.js","webpack://KonomiTV/./node_modules/core-js/internals/a-callable.js","webpack://KonomiTV/./node_modules/core-js/internals/a-possible-prototype.js","webpack://KonomiTV/./node_modules/core-js/internals/an-object.js","webpack://KonomiTV/./node_modules/core-js/internals/array-buffer-basic-detection.js","webpack://KonomiTV/./node_modules/core-js/internals/array-buffer-view-core.js","webpack://KonomiTV/./node_modules/core-js/internals/array-from-constructor-and-list.js","webpack://KonomiTV/./node_modules/core-js/internals/array-includes.js","webpack://KonomiTV/./node_modules/core-js/internals/array-set-length.js","webpack://KonomiTV/./node_modules/core-js/internals/array-to-reversed.js","webpack://KonomiTV/./node_modules/core-js/internals/array-with.js","webpack://KonomiTV/./node_modules/core-js/internals/classof-raw.js","webpack://KonomiTV/./node_modules/core-js/internals/classof.js","webpack://KonomiTV/./node_modules/core-js/internals/copy-constructor-properties.js","webpack://KonomiTV/./node_modules/core-js/internals/correct-prototype-getter.js","webpack://KonomiTV/./node_modules/core-js/internals/create-non-enumerable-property.js","webpack://KonomiTV/./node_modules/core-js/internals/create-property-descriptor.js","webpack://KonomiTV/./node_modules/core-js/internals/define-built-in-accessor.js","webpack://KonomiTV/./node_modules/core-js/internals/define-built-in.js","webpack://KonomiTV/./node_modules/core-js/internals/define-global-property.js","webpack://KonomiTV/./node_modules/core-js/internals/descriptors.js","webpack://KonomiTV/./node_modules/core-js/internals/document-all.js","webpack://KonomiTV/./node_modules/core-js/internals/document-create-element.js","webpack://KonomiTV/./node_modules/core-js/internals/does-not-exceed-safe-integer.js","webpack://KonomiTV/./node_modules/core-js/internals/engine-user-agent.js","webpack://KonomiTV/./node_modules/core-js/internals/engine-v8-version.js","webpack://KonomiTV/./node_modules/core-js/internals/enum-bug-keys.js","webpack://KonomiTV/./node_modules/core-js/internals/export.js","webpack://KonomiTV/./node_modules/core-js/internals/fails.js","webpack://KonomiTV/./node_modules/core-js/internals/function-bind-native.js","webpack://KonomiTV/./node_modules/core-js/internals/function-call.js","webpack://KonomiTV/./node_modules/core-js/internals/function-name.js","webpack://KonomiTV/./node_modules/core-js/internals/function-uncurry-this-accessor.js","webpack://KonomiTV/./node_modules/core-js/internals/function-uncurry-this.js","webpack://KonomiTV/./node_modules/core-js/internals/get-built-in.js","webpack://KonomiTV/./node_modules/core-js/internals/get-method.js","webpack://KonomiTV/./node_modules/core-js/internals/global.js","webpack://KonomiTV/./node_modules/core-js/internals/has-own-property.js","webpack://KonomiTV/./node_modules/core-js/internals/hidden-keys.js","webpack://KonomiTV/./node_modules/core-js/internals/ie8-dom-define.js","webpack://KonomiTV/./node_modules/core-js/internals/indexed-object.js","webpack://KonomiTV/./node_modules/core-js/internals/inspect-source.js","webpack://KonomiTV/./node_modules/core-js/internals/internal-state.js","webpack://KonomiTV/./node_modules/core-js/internals/is-array.js","webpack://KonomiTV/./node_modules/core-js/internals/is-big-int-array.js","webpack://KonomiTV/./node_modules/core-js/internals/is-callable.js","webpack://KonomiTV/./node_modules/core-js/internals/is-forced.js","webpack://KonomiTV/./node_modules/core-js/internals/is-null-or-undefined.js","webpack://KonomiTV/./node_modules/core-js/internals/is-object.js","webpack://KonomiTV/./node_modules/core-js/internals/is-pure.js","webpack://KonomiTV/./node_modules/core-js/internals/is-symbol.js","webpack://KonomiTV/./node_modules/core-js/internals/length-of-array-like.js","webpack://KonomiTV/./node_modules/core-js/internals/make-built-in.js","webpack://KonomiTV/./node_modules/core-js/internals/math-trunc.js","webpack://KonomiTV/./node_modules/core-js/internals/object-get-own-property-descriptor.js","webpack://KonomiTV/./node_modules/core-js/internals/object-get-own-property-names.js","webpack://KonomiTV/./node_modules/core-js/internals/object-get-own-property-symbols.js","webpack://KonomiTV/./node_modules/core-js/internals/object-get-prototype-of.js","webpack://KonomiTV/./node_modules/core-js/internals/object-is-prototype-of.js","webpack://KonomiTV/./node_modules/core-js/internals/object-keys-internal.js","webpack://KonomiTV/./node_modules/core-js/internals/object-property-is-enumerable.js","webpack://KonomiTV/./node_modules/core-js/internals/object-set-prototype-of.js","webpack://KonomiTV/./node_modules/core-js/internals/ordinary-to-primitive.js","webpack://KonomiTV/./node_modules/core-js/internals/own-keys.js","webpack://KonomiTV/./node_modules/core-js/internals/require-object-coercible.js","webpack://KonomiTV/./node_modules/core-js/internals/shared-key.js","webpack://KonomiTV/./node_modules/core-js/internals/shared-store.js","webpack://KonomiTV/./node_modules/core-js/internals/shared.js","webpack://KonomiTV/./node_modules/core-js/internals/symbol-constructor-detection.js","webpack://KonomiTV/./node_modules/core-js/internals/to-absolute-index.js","webpack://KonomiTV/./node_modules/core-js/internals/to-big-int.js","webpack://KonomiTV/./node_modules/core-js/internals/to-indexed-object.js","webpack://KonomiTV/./node_modules/core-js/internals/to-integer-or-infinity.js","webpack://KonomiTV/./node_modules/core-js/internals/to-length.js","webpack://KonomiTV/./node_modules/core-js/internals/to-object.js","webpack://KonomiTV/./node_modules/core-js/internals/to-primitive.js","webpack://KonomiTV/./node_modules/core-js/internals/to-property-key.js","webpack://KonomiTV/./node_modules/core-js/internals/to-string-tag-support.js","webpack://KonomiTV/./node_modules/core-js/internals/to-string.js","webpack://KonomiTV/./node_modules/core-js/internals/try-to-string.js","webpack://KonomiTV/./node_modules/core-js/internals/uid.js","webpack://KonomiTV/./node_modules/core-js/internals/use-symbol-as-uid.js","webpack://KonomiTV/./node_modules/core-js/internals/v8-prototype-define-bug.js","webpack://KonomiTV/./node_modules/core-js/internals/validate-arguments-length.js","webpack://KonomiTV/./node_modules/core-js/internals/weak-map-basic-detection.js","webpack://KonomiTV/./node_modules/core-js/internals/well-known-symbol.js","webpack://KonomiTV/./node_modules/core-js/modules/es.array.push.js","webpack://KonomiTV/./node_modules/core-js/modules/es.typed-array.to-reversed.js","webpack://KonomiTV/./node_modules/core-js/modules/es.typed-array.to-sorted.js","webpack://KonomiTV/./node_modules/core-js/modules/es.typed-array.with.js","webpack://KonomiTV/./node_modules/core-js/modules/web.url-search-params.delete.js","webpack://KonomiTV/./node_modules/core-js/modules/web.url-search-params.has.js","webpack://KonomiTV/./node_modules/core-js/modules/web.url-search-params.size.js","webpack://KonomiTV/./node_modules/axios/index.js","webpack://KonomiTV/./node_modules/axios/lib/helpers/bind.js","webpack://KonomiTV/./node_modules/axios/lib/utils.js","webpack://KonomiTV/./node_modules/axios/lib/core/AxiosError.js","webpack://KonomiTV/./node_modules/axios/lib/helpers/null.js","webpack://KonomiTV/./node_modules/axios/lib/helpers/toFormData.js","webpack://KonomiTV/./node_modules/axios/lib/helpers/AxiosURLSearchParams.js","webpack://KonomiTV/./node_modules/axios/lib/helpers/buildURL.js","webpack://KonomiTV/./node_modules/axios/lib/core/InterceptorManager.js","webpack://KonomiTV/./node_modules/axios/lib/defaults/transitional.js","webpack://KonomiTV/./node_modules/axios/lib/platform/browser/classes/URLSearchParams.js","webpack://KonomiTV/./node_modules/axios/lib/platform/browser/classes/FormData.js","webpack://KonomiTV/./node_modules/axios/lib/platform/browser/classes/Blob.js","webpack://KonomiTV/./node_modules/axios/lib/platform/browser/index.js","webpack://KonomiTV/./node_modules/axios/lib/platform/common/utils.js","webpack://KonomiTV/./node_modules/axios/lib/platform/index.js","webpack://KonomiTV/./node_modules/axios/lib/helpers/toURLEncodedForm.js","webpack://KonomiTV/./node_modules/axios/lib/helpers/formDataToJSON.js","webpack://KonomiTV/./node_modules/axios/lib/defaults/index.js","webpack://KonomiTV/./node_modules/axios/lib/helpers/parseHeaders.js","webpack://KonomiTV/./node_modules/axios/lib/core/AxiosHeaders.js","webpack://KonomiTV/./node_modules/axios/lib/core/transformData.js","webpack://KonomiTV/./node_modules/axios/lib/cancel/isCancel.js","webpack://KonomiTV/./node_modules/axios/lib/cancel/CanceledError.js","webpack://KonomiTV/./node_modules/axios/lib/core/settle.js","webpack://KonomiTV/./node_modules/axios/lib/helpers/cookies.js","webpack://KonomiTV/./node_modules/axios/lib/helpers/isAbsoluteURL.js","webpack://KonomiTV/./node_modules/axios/lib/helpers/combineURLs.js","webpack://KonomiTV/./node_modules/axios/lib/core/buildFullPath.js","webpack://KonomiTV/./node_modules/axios/lib/helpers/isURLSameOrigin.js","webpack://KonomiTV/./node_modules/axios/lib/helpers/parseProtocol.js","webpack://KonomiTV/./node_modules/axios/lib/helpers/speedometer.js","webpack://KonomiTV/./node_modules/axios/lib/adapters/xhr.js","webpack://KonomiTV/./node_modules/axios/lib/adapters/adapters.js","webpack://KonomiTV/./node_modules/axios/lib/core/dispatchRequest.js","webpack://KonomiTV/./node_modules/axios/lib/core/mergeConfig.js","webpack://KonomiTV/./node_modules/axios/lib/env/data.js","webpack://KonomiTV/./node_modules/axios/lib/helpers/validator.js","webpack://KonomiTV/./node_modules/axios/lib/core/Axios.js","webpack://KonomiTV/./node_modules/axios/lib/cancel/CancelToken.js","webpack://KonomiTV/./node_modules/axios/lib/helpers/spread.js","webpack://KonomiTV/./node_modules/axios/lib/helpers/isAxiosError.js","webpack://KonomiTV/./node_modules/axios/lib/helpers/HttpStatusCode.js","webpack://KonomiTV/./node_modules/axios/lib/axios.js","webpack://KonomiTV/./node_modules/@babel/runtime/helpers/esm/typeof.js","webpack://KonomiTV/./node_modules/@babel/runtime/helpers/esm/toPrimitive.js","webpack://KonomiTV/./node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","webpack://KonomiTV/./node_modules/@babel/runtime/helpers/esm/defineProperty.js","webpack://KonomiTV/./node_modules/comlink/dist/esm/comlink.mjs","webpack://KonomiTV/./node_modules/vue-demi/lib/index.mjs","webpack://KonomiTV/./node_modules/pinia/dist/pinia.mjs"],"sourcesContent":["// Currently in sync with Node.js lib/assert.js\n// https://github.com/nodejs/node/commit/2a51ae424a513ec9a6aa3466baa0cc1d55dd4f3b\n\n// Originally from narwhal.js (http://narwhaljs.org)\n// Copyright (c) 2009 Thomas Robinson <280north.com>\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the 'Software'), to\n// deal in the Software without restriction, including without limitation the\n// rights to use, copy, modify, merge, publish, distribute, sublicense, and/or\n// sell copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN\n// ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION\n// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n'use strict';\n\nfunction _typeof(o) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o; }, _typeof(o); }\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (_typeof(input) !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (_typeof(res) !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\nvar _require = require('./internal/errors'),\n _require$codes = _require.codes,\n ERR_AMBIGUOUS_ARGUMENT = _require$codes.ERR_AMBIGUOUS_ARGUMENT,\n ERR_INVALID_ARG_TYPE = _require$codes.ERR_INVALID_ARG_TYPE,\n ERR_INVALID_ARG_VALUE = _require$codes.ERR_INVALID_ARG_VALUE,\n ERR_INVALID_RETURN_VALUE = _require$codes.ERR_INVALID_RETURN_VALUE,\n ERR_MISSING_ARGS = _require$codes.ERR_MISSING_ARGS;\nvar AssertionError = require('./internal/assert/assertion_error');\nvar _require2 = require('util/'),\n inspect = _require2.inspect;\nvar _require$types = require('util/').types,\n isPromise = _require$types.isPromise,\n isRegExp = _require$types.isRegExp;\nvar objectAssign = require('object.assign/polyfill')();\nvar objectIs = require('object-is/polyfill')();\nvar RegExpPrototypeTest = require('call-bind/callBound')('RegExp.prototype.test');\nvar errorCache = new Map();\nvar isDeepEqual;\nvar isDeepStrictEqual;\nvar parseExpressionAt;\nvar findNodeAround;\nvar decoder;\nfunction lazyLoadComparison() {\n var comparison = require('./internal/util/comparisons');\n isDeepEqual = comparison.isDeepEqual;\n isDeepStrictEqual = comparison.isDeepStrictEqual;\n}\n\n// Escape control characters but not \\n and \\t to keep the line breaks and\n// indentation intact.\n// eslint-disable-next-line no-control-regex\nvar escapeSequencesRegExp = /[\\x00-\\x08\\x0b\\x0c\\x0e-\\x1f]/g;\nvar meta = [\"\\\\u0000\", \"\\\\u0001\", \"\\\\u0002\", \"\\\\u0003\", \"\\\\u0004\", \"\\\\u0005\", \"\\\\u0006\", \"\\\\u0007\", '\\\\b', '', '', \"\\\\u000b\", '\\\\f', '', \"\\\\u000e\", \"\\\\u000f\", \"\\\\u0010\", \"\\\\u0011\", \"\\\\u0012\", \"\\\\u0013\", \"\\\\u0014\", \"\\\\u0015\", \"\\\\u0016\", \"\\\\u0017\", \"\\\\u0018\", \"\\\\u0019\", \"\\\\u001a\", \"\\\\u001b\", \"\\\\u001c\", \"\\\\u001d\", \"\\\\u001e\", \"\\\\u001f\"];\nvar escapeFn = function escapeFn(str) {\n return meta[str.charCodeAt(0)];\n};\nvar warned = false;\n\n// The assert module provides functions that throw\n// AssertionError's when particular conditions are not met. The\n// assert module must conform to the following interface.\n\nvar assert = module.exports = ok;\nvar NO_EXCEPTION_SENTINEL = {};\n\n// All of the following functions must throw an AssertionError\n// when a corresponding condition is not met, with a message that\n// may be undefined if not provided. All assertion methods provide\n// both the actual and expected values to the assertion error for\n// display purposes.\n\nfunction innerFail(obj) {\n if (obj.message instanceof Error) throw obj.message;\n throw new AssertionError(obj);\n}\nfunction fail(actual, expected, message, operator, stackStartFn) {\n var argsLen = arguments.length;\n var internalMessage;\n if (argsLen === 0) {\n internalMessage = 'Failed';\n } else if (argsLen === 1) {\n message = actual;\n actual = undefined;\n } else {\n if (warned === false) {\n warned = true;\n var warn = process.emitWarning ? process.emitWarning : console.warn.bind(console);\n warn('assert.fail() with more than one argument is deprecated. ' + 'Please use assert.strictEqual() instead or only pass a message.', 'DeprecationWarning', 'DEP0094');\n }\n if (argsLen === 2) operator = '!=';\n }\n if (message instanceof Error) throw message;\n var errArgs = {\n actual: actual,\n expected: expected,\n operator: operator === undefined ? 'fail' : operator,\n stackStartFn: stackStartFn || fail\n };\n if (message !== undefined) {\n errArgs.message = message;\n }\n var err = new AssertionError(errArgs);\n if (internalMessage) {\n err.message = internalMessage;\n err.generatedMessage = true;\n }\n throw err;\n}\nassert.fail = fail;\n\n// The AssertionError is defined in internal/error.\nassert.AssertionError = AssertionError;\nfunction innerOk(fn, argLen, value, message) {\n if (!value) {\n var generatedMessage = false;\n if (argLen === 0) {\n generatedMessage = true;\n message = 'No value argument passed to `assert.ok()`';\n } else if (message instanceof Error) {\n throw message;\n }\n var err = new AssertionError({\n actual: value,\n expected: true,\n message: message,\n operator: '==',\n stackStartFn: fn\n });\n err.generatedMessage = generatedMessage;\n throw err;\n }\n}\n\n// Pure assertion tests whether a value is truthy, as determined\n// by !!value.\nfunction ok() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n innerOk.apply(void 0, [ok, args.length].concat(args));\n}\nassert.ok = ok;\n\n// The equality assertion tests shallow, coercive equality with ==.\n/* eslint-disable no-restricted-properties */\nassert.equal = function equal(actual, expected, message) {\n if (arguments.length < 2) {\n throw new ERR_MISSING_ARGS('actual', 'expected');\n }\n // eslint-disable-next-line eqeqeq\n if (actual != expected) {\n innerFail({\n actual: actual,\n expected: expected,\n message: message,\n operator: '==',\n stackStartFn: equal\n });\n }\n};\n\n// The non-equality assertion tests for whether two objects are not\n// equal with !=.\nassert.notEqual = function notEqual(actual, expected, message) {\n if (arguments.length < 2) {\n throw new ERR_MISSING_ARGS('actual', 'expected');\n }\n // eslint-disable-next-line eqeqeq\n if (actual == expected) {\n innerFail({\n actual: actual,\n expected: expected,\n message: message,\n operator: '!=',\n stackStartFn: notEqual\n });\n }\n};\n\n// The equivalence assertion tests a deep equality relation.\nassert.deepEqual = function deepEqual(actual, expected, message) {\n if (arguments.length < 2) {\n throw new ERR_MISSING_ARGS('actual', 'expected');\n }\n if (isDeepEqual === undefined) lazyLoadComparison();\n if (!isDeepEqual(actual, expected)) {\n innerFail({\n actual: actual,\n expected: expected,\n message: message,\n operator: 'deepEqual',\n stackStartFn: deepEqual\n });\n }\n};\n\n// The non-equivalence assertion tests for any deep inequality.\nassert.notDeepEqual = function notDeepEqual(actual, expected, message) {\n if (arguments.length < 2) {\n throw new ERR_MISSING_ARGS('actual', 'expected');\n }\n if (isDeepEqual === undefined) lazyLoadComparison();\n if (isDeepEqual(actual, expected)) {\n innerFail({\n actual: actual,\n expected: expected,\n message: message,\n operator: 'notDeepEqual',\n stackStartFn: notDeepEqual\n });\n }\n};\n/* eslint-enable */\n\nassert.deepStrictEqual = function deepStrictEqual(actual, expected, message) {\n if (arguments.length < 2) {\n throw new ERR_MISSING_ARGS('actual', 'expected');\n }\n if (isDeepEqual === undefined) lazyLoadComparison();\n if (!isDeepStrictEqual(actual, expected)) {\n innerFail({\n actual: actual,\n expected: expected,\n message: message,\n operator: 'deepStrictEqual',\n stackStartFn: deepStrictEqual\n });\n }\n};\nassert.notDeepStrictEqual = notDeepStrictEqual;\nfunction notDeepStrictEqual(actual, expected, message) {\n if (arguments.length < 2) {\n throw new ERR_MISSING_ARGS('actual', 'expected');\n }\n if (isDeepEqual === undefined) lazyLoadComparison();\n if (isDeepStrictEqual(actual, expected)) {\n innerFail({\n actual: actual,\n expected: expected,\n message: message,\n operator: 'notDeepStrictEqual',\n stackStartFn: notDeepStrictEqual\n });\n }\n}\nassert.strictEqual = function strictEqual(actual, expected, message) {\n if (arguments.length < 2) {\n throw new ERR_MISSING_ARGS('actual', 'expected');\n }\n if (!objectIs(actual, expected)) {\n innerFail({\n actual: actual,\n expected: expected,\n message: message,\n operator: 'strictEqual',\n stackStartFn: strictEqual\n });\n }\n};\nassert.notStrictEqual = function notStrictEqual(actual, expected, message) {\n if (arguments.length < 2) {\n throw new ERR_MISSING_ARGS('actual', 'expected');\n }\n if (objectIs(actual, expected)) {\n innerFail({\n actual: actual,\n expected: expected,\n message: message,\n operator: 'notStrictEqual',\n stackStartFn: notStrictEqual\n });\n }\n};\nvar Comparison = /*#__PURE__*/_createClass(function Comparison(obj, keys, actual) {\n var _this = this;\n _classCallCheck(this, Comparison);\n keys.forEach(function (key) {\n if (key in obj) {\n if (actual !== undefined && typeof actual[key] === 'string' && isRegExp(obj[key]) && RegExpPrototypeTest(obj[key], actual[key])) {\n _this[key] = actual[key];\n } else {\n _this[key] = obj[key];\n }\n }\n });\n});\nfunction compareExceptionKey(actual, expected, key, message, keys, fn) {\n if (!(key in actual) || !isDeepStrictEqual(actual[key], expected[key])) {\n if (!message) {\n // Create placeholder objects to create a nice output.\n var a = new Comparison(actual, keys);\n var b = new Comparison(expected, keys, actual);\n var err = new AssertionError({\n actual: a,\n expected: b,\n operator: 'deepStrictEqual',\n stackStartFn: fn\n });\n err.actual = actual;\n err.expected = expected;\n err.operator = fn.name;\n throw err;\n }\n innerFail({\n actual: actual,\n expected: expected,\n message: message,\n operator: fn.name,\n stackStartFn: fn\n });\n }\n}\nfunction expectedException(actual, expected, msg, fn) {\n if (typeof expected !== 'function') {\n if (isRegExp(expected)) return RegExpPrototypeTest(expected, actual);\n // assert.doesNotThrow does not accept objects.\n if (arguments.length === 2) {\n throw new ERR_INVALID_ARG_TYPE('expected', ['Function', 'RegExp'], expected);\n }\n\n // Handle primitives properly.\n if (_typeof(actual) !== 'object' || actual === null) {\n var err = new AssertionError({\n actual: actual,\n expected: expected,\n message: msg,\n operator: 'deepStrictEqual',\n stackStartFn: fn\n });\n err.operator = fn.name;\n throw err;\n }\n var keys = Object.keys(expected);\n // Special handle errors to make sure the name and the message are compared\n // as well.\n if (expected instanceof Error) {\n keys.push('name', 'message');\n } else if (keys.length === 0) {\n throw new ERR_INVALID_ARG_VALUE('error', expected, 'may not be an empty object');\n }\n if (isDeepEqual === undefined) lazyLoadComparison();\n keys.forEach(function (key) {\n if (typeof actual[key] === 'string' && isRegExp(expected[key]) && RegExpPrototypeTest(expected[key], actual[key])) {\n return;\n }\n compareExceptionKey(actual, expected, key, msg, keys, fn);\n });\n return true;\n }\n // Guard instanceof against arrow functions as they don't have a prototype.\n if (expected.prototype !== undefined && actual instanceof expected) {\n return true;\n }\n if (Error.isPrototypeOf(expected)) {\n return false;\n }\n return expected.call({}, actual) === true;\n}\nfunction getActual(fn) {\n if (typeof fn !== 'function') {\n throw new ERR_INVALID_ARG_TYPE('fn', 'Function', fn);\n }\n try {\n fn();\n } catch (e) {\n return e;\n }\n return NO_EXCEPTION_SENTINEL;\n}\nfunction checkIsPromise(obj) {\n // Accept native ES6 promises and promises that are implemented in a similar\n // way. Do not accept thenables that use a function as `obj` and that have no\n // `catch` handler.\n\n // TODO: thenables are checked up until they have the correct methods,\n // but according to documentation, the `then` method should receive\n // the `fulfill` and `reject` arguments as well or it may be never resolved.\n\n return isPromise(obj) || obj !== null && _typeof(obj) === 'object' && typeof obj.then === 'function' && typeof obj.catch === 'function';\n}\nfunction waitForActual(promiseFn) {\n return Promise.resolve().then(function () {\n var resultPromise;\n if (typeof promiseFn === 'function') {\n // Return a rejected promise if `promiseFn` throws synchronously.\n resultPromise = promiseFn();\n // Fail in case no promise is returned.\n if (!checkIsPromise(resultPromise)) {\n throw new ERR_INVALID_RETURN_VALUE('instance of Promise', 'promiseFn', resultPromise);\n }\n } else if (checkIsPromise(promiseFn)) {\n resultPromise = promiseFn;\n } else {\n throw new ERR_INVALID_ARG_TYPE('promiseFn', ['Function', 'Promise'], promiseFn);\n }\n return Promise.resolve().then(function () {\n return resultPromise;\n }).then(function () {\n return NO_EXCEPTION_SENTINEL;\n }).catch(function (e) {\n return e;\n });\n });\n}\nfunction expectsError(stackStartFn, actual, error, message) {\n if (typeof error === 'string') {\n if (arguments.length === 4) {\n throw new ERR_INVALID_ARG_TYPE('error', ['Object', 'Error', 'Function', 'RegExp'], error);\n }\n if (_typeof(actual) === 'object' && actual !== null) {\n if (actual.message === error) {\n throw new ERR_AMBIGUOUS_ARGUMENT('error/message', \"The error message \\\"\".concat(actual.message, \"\\\" is identical to the message.\"));\n }\n } else if (actual === error) {\n throw new ERR_AMBIGUOUS_ARGUMENT('error/message', \"The error \\\"\".concat(actual, \"\\\" is identical to the message.\"));\n }\n message = error;\n error = undefined;\n } else if (error != null && _typeof(error) !== 'object' && typeof error !== 'function') {\n throw new ERR_INVALID_ARG_TYPE('error', ['Object', 'Error', 'Function', 'RegExp'], error);\n }\n if (actual === NO_EXCEPTION_SENTINEL) {\n var details = '';\n if (error && error.name) {\n details += \" (\".concat(error.name, \")\");\n }\n details += message ? \": \".concat(message) : '.';\n var fnType = stackStartFn.name === 'rejects' ? 'rejection' : 'exception';\n innerFail({\n actual: undefined,\n expected: error,\n operator: stackStartFn.name,\n message: \"Missing expected \".concat(fnType).concat(details),\n stackStartFn: stackStartFn\n });\n }\n if (error && !expectedException(actual, error, message, stackStartFn)) {\n throw actual;\n }\n}\nfunction expectsNoError(stackStartFn, actual, error, message) {\n if (actual === NO_EXCEPTION_SENTINEL) return;\n if (typeof error === 'string') {\n message = error;\n error = undefined;\n }\n if (!error || expectedException(actual, error)) {\n var details = message ? \": \".concat(message) : '.';\n var fnType = stackStartFn.name === 'doesNotReject' ? 'rejection' : 'exception';\n innerFail({\n actual: actual,\n expected: error,\n operator: stackStartFn.name,\n message: \"Got unwanted \".concat(fnType).concat(details, \"\\n\") + \"Actual message: \\\"\".concat(actual && actual.message, \"\\\"\"),\n stackStartFn: stackStartFn\n });\n }\n throw actual;\n}\nassert.throws = function throws(promiseFn) {\n for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {\n args[_key2 - 1] = arguments[_key2];\n }\n expectsError.apply(void 0, [throws, getActual(promiseFn)].concat(args));\n};\nassert.rejects = function rejects(promiseFn) {\n for (var _len3 = arguments.length, args = new Array(_len3 > 1 ? _len3 - 1 : 0), _key3 = 1; _key3 < _len3; _key3++) {\n args[_key3 - 1] = arguments[_key3];\n }\n return waitForActual(promiseFn).then(function (result) {\n return expectsError.apply(void 0, [rejects, result].concat(args));\n });\n};\nassert.doesNotThrow = function doesNotThrow(fn) {\n for (var _len4 = arguments.length, args = new Array(_len4 > 1 ? _len4 - 1 : 0), _key4 = 1; _key4 < _len4; _key4++) {\n args[_key4 - 1] = arguments[_key4];\n }\n expectsNoError.apply(void 0, [doesNotThrow, getActual(fn)].concat(args));\n};\nassert.doesNotReject = function doesNotReject(fn) {\n for (var _len5 = arguments.length, args = new Array(_len5 > 1 ? _len5 - 1 : 0), _key5 = 1; _key5 < _len5; _key5++) {\n args[_key5 - 1] = arguments[_key5];\n }\n return waitForActual(fn).then(function (result) {\n return expectsNoError.apply(void 0, [doesNotReject, result].concat(args));\n });\n};\nassert.ifError = function ifError(err) {\n if (err !== null && err !== undefined) {\n var message = 'ifError got unwanted exception: ';\n if (_typeof(err) === 'object' && typeof err.message === 'string') {\n if (err.message.length === 0 && err.constructor) {\n message += err.constructor.name;\n } else {\n message += err.message;\n }\n } else {\n message += inspect(err);\n }\n var newErr = new AssertionError({\n actual: err,\n expected: null,\n operator: 'ifError',\n message: message,\n stackStartFn: ifError\n });\n\n // Make sure we actually have a stack trace!\n var origStack = err.stack;\n if (typeof origStack === 'string') {\n // This will remove any duplicated frames from the error frames taken\n // from within `ifError` and add the original error frames to the newly\n // created ones.\n var tmp2 = origStack.split('\\n');\n tmp2.shift();\n // Filter all frames existing in err.stack.\n var tmp1 = newErr.stack.split('\\n');\n for (var i = 0; i < tmp2.length; i++) {\n // Find the first occurrence of the frame.\n var pos = tmp1.indexOf(tmp2[i]);\n if (pos !== -1) {\n // Only keep new frames.\n tmp1 = tmp1.slice(0, pos);\n break;\n }\n }\n newErr.stack = \"\".concat(tmp1.join('\\n'), \"\\n\").concat(tmp2.join('\\n'));\n }\n throw newErr;\n }\n};\n\n// Currently in sync with Node.js lib/assert.js\n// https://github.com/nodejs/node/commit/2a871df3dfb8ea663ef5e1f8f62701ec51384ecb\nfunction internalMatch(string, regexp, message, fn, fnName) {\n if (!isRegExp(regexp)) {\n throw new ERR_INVALID_ARG_TYPE('regexp', 'RegExp', regexp);\n }\n var match = fnName === 'match';\n if (typeof string !== 'string' || RegExpPrototypeTest(regexp, string) !== match) {\n if (message instanceof Error) {\n throw message;\n }\n var generatedMessage = !message;\n\n // 'The input was expected to not match the regular expression ' +\n message = message || (typeof string !== 'string' ? 'The \"string\" argument must be of type string. Received type ' + \"\".concat(_typeof(string), \" (\").concat(inspect(string), \")\") : (match ? 'The input did not match the regular expression ' : 'The input was expected to not match the regular expression ') + \"\".concat(inspect(regexp), \". Input:\\n\\n\").concat(inspect(string), \"\\n\"));\n var err = new AssertionError({\n actual: string,\n expected: regexp,\n message: message,\n operator: fnName,\n stackStartFn: fn\n });\n err.generatedMessage = generatedMessage;\n throw err;\n }\n}\nassert.match = function match(string, regexp, message) {\n internalMatch(string, regexp, message, match, 'match');\n};\nassert.doesNotMatch = function doesNotMatch(string, regexp, message) {\n internalMatch(string, regexp, message, doesNotMatch, 'doesNotMatch');\n};\n\n// Expose a strict only variant of assert\nfunction strict() {\n for (var _len6 = arguments.length, args = new Array(_len6), _key6 = 0; _key6 < _len6; _key6++) {\n args[_key6] = arguments[_key6];\n }\n innerOk.apply(void 0, [strict, args.length].concat(args));\n}\nassert.strict = objectAssign(strict, assert, {\n equal: assert.strictEqual,\n deepEqual: assert.deepStrictEqual,\n notEqual: assert.notStrictEqual,\n notDeepEqual: assert.notDeepStrictEqual\n});\nassert.strict.strict = assert.strict;","// Currently in sync with Node.js lib/internal/assert/assertion_error.js\n// https://github.com/nodejs/node/commit/0817840f775032169ddd70c85ac059f18ffcc81c\n\n'use strict';\n\nfunction ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (_typeof(input) !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (_typeof(res) !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, \"prototype\", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } else if (call !== void 0) { throw new TypeError(\"Derived constructors may only return object or undefined\"); } return _assertThisInitialized(self); }\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\nfunction _wrapNativeSuper(Class) { var _cache = typeof Map === \"function\" ? new Map() : undefined; _wrapNativeSuper = function _wrapNativeSuper(Class) { if (Class === null || !_isNativeFunction(Class)) return Class; if (typeof Class !== \"function\") { throw new TypeError(\"Super expression must either be null or a function\"); } if (typeof _cache !== \"undefined\") { if (_cache.has(Class)) return _cache.get(Class); _cache.set(Class, Wrapper); } function Wrapper() { return _construct(Class, arguments, _getPrototypeOf(this).constructor); } Wrapper.prototype = Object.create(Class.prototype, { constructor: { value: Wrapper, enumerable: false, writable: true, configurable: true } }); return _setPrototypeOf(Wrapper, Class); }; return _wrapNativeSuper(Class); }\nfunction _construct(Parent, args, Class) { if (_isNativeReflectConstruct()) { _construct = Reflect.construct.bind(); } else { _construct = function _construct(Parent, args, Class) { var a = [null]; a.push.apply(a, args); var Constructor = Function.bind.apply(Parent, a); var instance = new Constructor(); if (Class) _setPrototypeOf(instance, Class.prototype); return instance; }; } return _construct.apply(null, arguments); }\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\nfunction _isNativeFunction(fn) { return Function.toString.call(fn).indexOf(\"[native code]\") !== -1; }\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\nfunction _typeof(o) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o; }, _typeof(o); }\nvar _require = require('util/'),\n inspect = _require.inspect;\nvar _require2 = require('../errors'),\n ERR_INVALID_ARG_TYPE = _require2.codes.ERR_INVALID_ARG_TYPE;\n\n// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/endsWith\nfunction endsWith(str, search, this_len) {\n if (this_len === undefined || this_len > str.length) {\n this_len = str.length;\n }\n return str.substring(this_len - search.length, this_len) === search;\n}\n\n// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/repeat\nfunction repeat(str, count) {\n count = Math.floor(count);\n if (str.length == 0 || count == 0) return '';\n var maxCount = str.length * count;\n count = Math.floor(Math.log(count) / Math.log(2));\n while (count) {\n str += str;\n count--;\n }\n str += str.substring(0, maxCount - str.length);\n return str;\n}\nvar blue = '';\nvar green = '';\nvar red = '';\nvar white = '';\nvar kReadableOperator = {\n deepStrictEqual: 'Expected values to be strictly deep-equal:',\n strictEqual: 'Expected values to be strictly equal:',\n strictEqualObject: 'Expected \"actual\" to be reference-equal to \"expected\":',\n deepEqual: 'Expected values to be loosely deep-equal:',\n equal: 'Expected values to be loosely equal:',\n notDeepStrictEqual: 'Expected \"actual\" not to be strictly deep-equal to:',\n notStrictEqual: 'Expected \"actual\" to be strictly unequal to:',\n notStrictEqualObject: 'Expected \"actual\" not to be reference-equal to \"expected\":',\n notDeepEqual: 'Expected \"actual\" not to be loosely deep-equal to:',\n notEqual: 'Expected \"actual\" to be loosely unequal to:',\n notIdentical: 'Values identical but not reference-equal:'\n};\n\n// Comparing short primitives should just show === / !== instead of using the\n// diff.\nvar kMaxShortLength = 10;\nfunction copyError(source) {\n var keys = Object.keys(source);\n var target = Object.create(Object.getPrototypeOf(source));\n keys.forEach(function (key) {\n target[key] = source[key];\n });\n Object.defineProperty(target, 'message', {\n value: source.message\n });\n return target;\n}\nfunction inspectValue(val) {\n // The util.inspect default values could be changed. This makes sure the\n // error messages contain the necessary information nevertheless.\n return inspect(val, {\n compact: false,\n customInspect: false,\n depth: 1000,\n maxArrayLength: Infinity,\n // Assert compares only enumerable properties (with a few exceptions).\n showHidden: false,\n // Having a long line as error is better than wrapping the line for\n // comparison for now.\n // TODO(BridgeAR): `breakLength` should be limited as soon as soon as we\n // have meta information about the inspected properties (i.e., know where\n // in what line the property starts and ends).\n breakLength: Infinity,\n // Assert does not detect proxies currently.\n showProxy: false,\n sorted: true,\n // Inspect getters as we also check them when comparing entries.\n getters: true\n });\n}\nfunction createErrDiff(actual, expected, operator) {\n var other = '';\n var res = '';\n var lastPos = 0;\n var end = '';\n var skipped = false;\n var actualInspected = inspectValue(actual);\n var actualLines = actualInspected.split('\\n');\n var expectedLines = inspectValue(expected).split('\\n');\n var i = 0;\n var indicator = '';\n\n // In case both values are objects explicitly mark them as not reference equal\n // for the `strictEqual` operator.\n if (operator === 'strictEqual' && _typeof(actual) === 'object' && _typeof(expected) === 'object' && actual !== null && expected !== null) {\n operator = 'strictEqualObject';\n }\n\n // If \"actual\" and \"expected\" fit on a single line and they are not strictly\n // equal, check further special handling.\n if (actualLines.length === 1 && expectedLines.length === 1 && actualLines[0] !== expectedLines[0]) {\n var inputLength = actualLines[0].length + expectedLines[0].length;\n // If the character length of \"actual\" and \"expected\" together is less than\n // kMaxShortLength and if neither is an object and at least one of them is\n // not `zero`, use the strict equal comparison to visualize the output.\n if (inputLength <= kMaxShortLength) {\n if ((_typeof(actual) !== 'object' || actual === null) && (_typeof(expected) !== 'object' || expected === null) && (actual !== 0 || expected !== 0)) {\n // -0 === +0\n return \"\".concat(kReadableOperator[operator], \"\\n\\n\") + \"\".concat(actualLines[0], \" !== \").concat(expectedLines[0], \"\\n\");\n }\n } else if (operator !== 'strictEqualObject') {\n // If the stderr is a tty and the input length is lower than the current\n // columns per line, add a mismatch indicator below the output. If it is\n // not a tty, use a default value of 80 characters.\n var maxLength = process.stderr && process.stderr.isTTY ? process.stderr.columns : 80;\n if (inputLength < maxLength) {\n while (actualLines[0][i] === expectedLines[0][i]) {\n i++;\n }\n // Ignore the first characters.\n if (i > 2) {\n // Add position indicator for the first mismatch in case it is a\n // single line and the input length is less than the column length.\n indicator = \"\\n \".concat(repeat(' ', i), \"^\");\n i = 0;\n }\n }\n }\n }\n\n // Remove all ending lines that match (this optimizes the output for\n // readability by reducing the number of total changed lines).\n var a = actualLines[actualLines.length - 1];\n var b = expectedLines[expectedLines.length - 1];\n while (a === b) {\n if (i++ < 2) {\n end = \"\\n \".concat(a).concat(end);\n } else {\n other = a;\n }\n actualLines.pop();\n expectedLines.pop();\n if (actualLines.length === 0 || expectedLines.length === 0) break;\n a = actualLines[actualLines.length - 1];\n b = expectedLines[expectedLines.length - 1];\n }\n var maxLines = Math.max(actualLines.length, expectedLines.length);\n // Strict equal with identical objects that are not identical by reference.\n // E.g., assert.deepStrictEqual({ a: Symbol() }, { a: Symbol() })\n if (maxLines === 0) {\n // We have to get the result again. The lines were all removed before.\n var _actualLines = actualInspected.split('\\n');\n\n // Only remove lines in case it makes sense to collapse those.\n // TODO: Accept env to always show the full error.\n if (_actualLines.length > 30) {\n _actualLines[26] = \"\".concat(blue, \"...\").concat(white);\n while (_actualLines.length > 27) {\n _actualLines.pop();\n }\n }\n return \"\".concat(kReadableOperator.notIdentical, \"\\n\\n\").concat(_actualLines.join('\\n'), \"\\n\");\n }\n if (i > 3) {\n end = \"\\n\".concat(blue, \"...\").concat(white).concat(end);\n skipped = true;\n }\n if (other !== '') {\n end = \"\\n \".concat(other).concat(end);\n other = '';\n }\n var printedLines = 0;\n var msg = kReadableOperator[operator] + \"\\n\".concat(green, \"+ actual\").concat(white, \" \").concat(red, \"- expected\").concat(white);\n var skippedMsg = \" \".concat(blue, \"...\").concat(white, \" Lines skipped\");\n for (i = 0; i < maxLines; i++) {\n // Only extra expected lines exist\n var cur = i - lastPos;\n if (actualLines.length < i + 1) {\n // If the last diverging line is more than one line above and the\n // current line is at least line three, add some of the former lines and\n // also add dots to indicate skipped entries.\n if (cur > 1 && i > 2) {\n if (cur > 4) {\n res += \"\\n\".concat(blue, \"...\").concat(white);\n skipped = true;\n } else if (cur > 3) {\n res += \"\\n \".concat(expectedLines[i - 2]);\n printedLines++;\n }\n res += \"\\n \".concat(expectedLines[i - 1]);\n printedLines++;\n }\n // Mark the current line as the last diverging one.\n lastPos = i;\n // Add the expected line to the cache.\n other += \"\\n\".concat(red, \"-\").concat(white, \" \").concat(expectedLines[i]);\n printedLines++;\n // Only extra actual lines exist\n } else if (expectedLines.length < i + 1) {\n // If the last diverging line is more than one line above and the\n // current line is at least line three, add some of the former lines and\n // also add dots to indicate skipped entries.\n if (cur > 1 && i > 2) {\n if (cur > 4) {\n res += \"\\n\".concat(blue, \"...\").concat(white);\n skipped = true;\n } else if (cur > 3) {\n res += \"\\n \".concat(actualLines[i - 2]);\n printedLines++;\n }\n res += \"\\n \".concat(actualLines[i - 1]);\n printedLines++;\n }\n // Mark the current line as the last diverging one.\n lastPos = i;\n // Add the actual line to the result.\n res += \"\\n\".concat(green, \"+\").concat(white, \" \").concat(actualLines[i]);\n printedLines++;\n // Lines diverge\n } else {\n var expectedLine = expectedLines[i];\n var actualLine = actualLines[i];\n // If the lines diverge, specifically check for lines that only diverge by\n // a trailing comma. In that case it is actually identical and we should\n // mark it as such.\n var divergingLines = actualLine !== expectedLine && (!endsWith(actualLine, ',') || actualLine.slice(0, -1) !== expectedLine);\n // If the expected line has a trailing comma but is otherwise identical,\n // add a comma at the end of the actual line. Otherwise the output could\n // look weird as in:\n //\n // [\n // 1 // No comma at the end!\n // + 2\n // ]\n //\n if (divergingLines && endsWith(expectedLine, ',') && expectedLine.slice(0, -1) === actualLine) {\n divergingLines = false;\n actualLine += ',';\n }\n if (divergingLines) {\n // If the last diverging line is more than one line above and the\n // current line is at least line three, add some of the former lines and\n // also add dots to indicate skipped entries.\n if (cur > 1 && i > 2) {\n if (cur > 4) {\n res += \"\\n\".concat(blue, \"...\").concat(white);\n skipped = true;\n } else if (cur > 3) {\n res += \"\\n \".concat(actualLines[i - 2]);\n printedLines++;\n }\n res += \"\\n \".concat(actualLines[i - 1]);\n printedLines++;\n }\n // Mark the current line as the last diverging one.\n lastPos = i;\n // Add the actual line to the result and cache the expected diverging\n // line so consecutive diverging lines show up as +++--- and not +-+-+-.\n res += \"\\n\".concat(green, \"+\").concat(white, \" \").concat(actualLine);\n other += \"\\n\".concat(red, \"-\").concat(white, \" \").concat(expectedLine);\n printedLines += 2;\n // Lines are identical\n } else {\n // Add all cached information to the result before adding other things\n // and reset the cache.\n res += other;\n other = '';\n // If the last diverging line is exactly one line above or if it is the\n // very first line, add the line to the result.\n if (cur === 1 || i === 0) {\n res += \"\\n \".concat(actualLine);\n printedLines++;\n }\n }\n }\n // Inspected object to big (Show ~20 rows max)\n if (printedLines > 20 && i < maxLines - 2) {\n return \"\".concat(msg).concat(skippedMsg, \"\\n\").concat(res, \"\\n\").concat(blue, \"...\").concat(white).concat(other, \"\\n\") + \"\".concat(blue, \"...\").concat(white);\n }\n }\n return \"\".concat(msg).concat(skipped ? skippedMsg : '', \"\\n\").concat(res).concat(other).concat(end).concat(indicator);\n}\nvar AssertionError = /*#__PURE__*/function (_Error, _inspect$custom) {\n _inherits(AssertionError, _Error);\n var _super = _createSuper(AssertionError);\n function AssertionError(options) {\n var _this;\n _classCallCheck(this, AssertionError);\n if (_typeof(options) !== 'object' || options === null) {\n throw new ERR_INVALID_ARG_TYPE('options', 'Object', options);\n }\n var message = options.message,\n operator = options.operator,\n stackStartFn = options.stackStartFn;\n var actual = options.actual,\n expected = options.expected;\n var limit = Error.stackTraceLimit;\n Error.stackTraceLimit = 0;\n if (message != null) {\n _this = _super.call(this, String(message));\n } else {\n if (process.stderr && process.stderr.isTTY) {\n // Reset on each call to make sure we handle dynamically set environment\n // variables correct.\n if (process.stderr && process.stderr.getColorDepth && process.stderr.getColorDepth() !== 1) {\n blue = \"\\x1B[34m\";\n green = \"\\x1B[32m\";\n white = \"\\x1B[39m\";\n red = \"\\x1B[31m\";\n } else {\n blue = '';\n green = '';\n white = '';\n red = '';\n }\n }\n // Prevent the error stack from being visible by duplicating the error\n // in a very close way to the original in case both sides are actually\n // instances of Error.\n if (_typeof(actual) === 'object' && actual !== null && _typeof(expected) === 'object' && expected !== null && 'stack' in actual && actual instanceof Error && 'stack' in expected && expected instanceof Error) {\n actual = copyError(actual);\n expected = copyError(expected);\n }\n if (operator === 'deepStrictEqual' || operator === 'strictEqual') {\n _this = _super.call(this, createErrDiff(actual, expected, operator));\n } else if (operator === 'notDeepStrictEqual' || operator === 'notStrictEqual') {\n // In case the objects are equal but the operator requires unequal, show\n // the first object and say A equals B\n var base = kReadableOperator[operator];\n var res = inspectValue(actual).split('\\n');\n\n // In case \"actual\" is an object, it should not be reference equal.\n if (operator === 'notStrictEqual' && _typeof(actual) === 'object' && actual !== null) {\n base = kReadableOperator.notStrictEqualObject;\n }\n\n // Only remove lines in case it makes sense to collapse those.\n // TODO: Accept env to always show the full error.\n if (res.length > 30) {\n res[26] = \"\".concat(blue, \"...\").concat(white);\n while (res.length > 27) {\n res.pop();\n }\n }\n\n // Only print a single input.\n if (res.length === 1) {\n _this = _super.call(this, \"\".concat(base, \" \").concat(res[0]));\n } else {\n _this = _super.call(this, \"\".concat(base, \"\\n\\n\").concat(res.join('\\n'), \"\\n\"));\n }\n } else {\n var _res = inspectValue(actual);\n var other = '';\n var knownOperators = kReadableOperator[operator];\n if (operator === 'notDeepEqual' || operator === 'notEqual') {\n _res = \"\".concat(kReadableOperator[operator], \"\\n\\n\").concat(_res);\n if (_res.length > 1024) {\n _res = \"\".concat(_res.slice(0, 1021), \"...\");\n }\n } else {\n other = \"\".concat(inspectValue(expected));\n if (_res.length > 512) {\n _res = \"\".concat(_res.slice(0, 509), \"...\");\n }\n if (other.length > 512) {\n other = \"\".concat(other.slice(0, 509), \"...\");\n }\n if (operator === 'deepEqual' || operator === 'equal') {\n _res = \"\".concat(knownOperators, \"\\n\\n\").concat(_res, \"\\n\\nshould equal\\n\\n\");\n } else {\n other = \" \".concat(operator, \" \").concat(other);\n }\n }\n _this = _super.call(this, \"\".concat(_res).concat(other));\n }\n }\n Error.stackTraceLimit = limit;\n _this.generatedMessage = !message;\n Object.defineProperty(_assertThisInitialized(_this), 'name', {\n value: 'AssertionError [ERR_ASSERTION]',\n enumerable: false,\n writable: true,\n configurable: true\n });\n _this.code = 'ERR_ASSERTION';\n _this.actual = actual;\n _this.expected = expected;\n _this.operator = operator;\n if (Error.captureStackTrace) {\n // eslint-disable-next-line no-restricted-syntax\n Error.captureStackTrace(_assertThisInitialized(_this), stackStartFn);\n }\n // Create error message including the error code in the name.\n _this.stack;\n // Reset the name.\n _this.name = 'AssertionError';\n return _possibleConstructorReturn(_this);\n }\n _createClass(AssertionError, [{\n key: \"toString\",\n value: function toString() {\n return \"\".concat(this.name, \" [\").concat(this.code, \"]: \").concat(this.message);\n }\n }, {\n key: _inspect$custom,\n value: function value(recurseTimes, ctx) {\n // This limits the `actual` and `expected` property default inspection to\n // the minimum depth. Otherwise those values would be too verbose compared\n // to the actual error message which contains a combined view of these two\n // input values.\n return inspect(this, _objectSpread(_objectSpread({}, ctx), {}, {\n customInspect: false,\n depth: 0\n }));\n }\n }]);\n return AssertionError;\n}( /*#__PURE__*/_wrapNativeSuper(Error), inspect.custom);\nmodule.exports = AssertionError;","// Currently in sync with Node.js lib/internal/errors.js\n// https://github.com/nodejs/node/commit/3b044962c48fe313905877a96b5d0894a5404f6f\n\n/* eslint node-core/documented-errors: \"error\" */\n/* eslint node-core/alphabetize-errors: \"error\" */\n/* eslint node-core/prefer-util-format-errors: \"error\" */\n\n'use strict';\n\n// The whole point behind this internal module is to allow Node.js to no\n// longer be forced to treat every error message change as a semver-major\n// change. The NodeError classes here all expose a `code` property whose\n// value statically and permanently identifies the error. While the error\n// message may change, the code should not.\nfunction _typeof(o) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o; }, _typeof(o); }\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (_typeof(input) !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (_typeof(res) !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, \"prototype\", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } else if (call !== void 0) { throw new TypeError(\"Derived constructors may only return object or undefined\"); } return _assertThisInitialized(self); }\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\nvar codes = {};\n\n// Lazy loaded\nvar assert;\nvar util;\nfunction createErrorType(code, message, Base) {\n if (!Base) {\n Base = Error;\n }\n function getMessage(arg1, arg2, arg3) {\n if (typeof message === 'string') {\n return message;\n } else {\n return message(arg1, arg2, arg3);\n }\n }\n var NodeError = /*#__PURE__*/function (_Base) {\n _inherits(NodeError, _Base);\n var _super = _createSuper(NodeError);\n function NodeError(arg1, arg2, arg3) {\n var _this;\n _classCallCheck(this, NodeError);\n _this = _super.call(this, getMessage(arg1, arg2, arg3));\n _this.code = code;\n return _this;\n }\n return _createClass(NodeError);\n }(Base);\n codes[code] = NodeError;\n}\n\n// https://github.com/nodejs/node/blob/v10.8.0/lib/internal/errors.js\nfunction oneOf(expected, thing) {\n if (Array.isArray(expected)) {\n var len = expected.length;\n expected = expected.map(function (i) {\n return String(i);\n });\n if (len > 2) {\n return \"one of \".concat(thing, \" \").concat(expected.slice(0, len - 1).join(', '), \", or \") + expected[len - 1];\n } else if (len === 2) {\n return \"one of \".concat(thing, \" \").concat(expected[0], \" or \").concat(expected[1]);\n } else {\n return \"of \".concat(thing, \" \").concat(expected[0]);\n }\n } else {\n return \"of \".concat(thing, \" \").concat(String(expected));\n }\n}\n\n// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/startsWith\nfunction startsWith(str, search, pos) {\n return str.substr(!pos || pos < 0 ? 0 : +pos, search.length) === search;\n}\n\n// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/endsWith\nfunction endsWith(str, search, this_len) {\n if (this_len === undefined || this_len > str.length) {\n this_len = str.length;\n }\n return str.substring(this_len - search.length, this_len) === search;\n}\n\n// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/includes\nfunction includes(str, search, start) {\n if (typeof start !== 'number') {\n start = 0;\n }\n if (start + search.length > str.length) {\n return false;\n } else {\n return str.indexOf(search, start) !== -1;\n }\n}\ncreateErrorType('ERR_AMBIGUOUS_ARGUMENT', 'The \"%s\" argument is ambiguous. %s', TypeError);\ncreateErrorType('ERR_INVALID_ARG_TYPE', function (name, expected, actual) {\n if (assert === undefined) assert = require('../assert');\n assert(typeof name === 'string', \"'name' must be a string\");\n\n // determiner: 'must be' or 'must not be'\n var determiner;\n if (typeof expected === 'string' && startsWith(expected, 'not ')) {\n determiner = 'must not be';\n expected = expected.replace(/^not /, '');\n } else {\n determiner = 'must be';\n }\n var msg;\n if (endsWith(name, ' argument')) {\n // For cases like 'first argument'\n msg = \"The \".concat(name, \" \").concat(determiner, \" \").concat(oneOf(expected, 'type'));\n } else {\n var type = includes(name, '.') ? 'property' : 'argument';\n msg = \"The \\\"\".concat(name, \"\\\" \").concat(type, \" \").concat(determiner, \" \").concat(oneOf(expected, 'type'));\n }\n\n // TODO(BridgeAR): Improve the output by showing `null` and similar.\n msg += \". Received type \".concat(_typeof(actual));\n return msg;\n}, TypeError);\ncreateErrorType('ERR_INVALID_ARG_VALUE', function (name, value) {\n var reason = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'is invalid';\n if (util === undefined) util = require('util/');\n var inspected = util.inspect(value);\n if (inspected.length > 128) {\n inspected = \"\".concat(inspected.slice(0, 128), \"...\");\n }\n return \"The argument '\".concat(name, \"' \").concat(reason, \". Received \").concat(inspected);\n}, TypeError, RangeError);\ncreateErrorType('ERR_INVALID_RETURN_VALUE', function (input, name, value) {\n var type;\n if (value && value.constructor && value.constructor.name) {\n type = \"instance of \".concat(value.constructor.name);\n } else {\n type = \"type \".concat(_typeof(value));\n }\n return \"Expected \".concat(input, \" to be returned from the \\\"\").concat(name, \"\\\"\") + \" function but got \".concat(type, \".\");\n}, TypeError);\ncreateErrorType('ERR_MISSING_ARGS', function () {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n if (assert === undefined) assert = require('../assert');\n assert(args.length > 0, 'At least one arg needs to be specified');\n var msg = 'The ';\n var len = args.length;\n args = args.map(function (a) {\n return \"\\\"\".concat(a, \"\\\"\");\n });\n switch (len) {\n case 1:\n msg += \"\".concat(args[0], \" argument\");\n break;\n case 2:\n msg += \"\".concat(args[0], \" and \").concat(args[1], \" arguments\");\n break;\n default:\n msg += args.slice(0, len - 1).join(', ');\n msg += \", and \".concat(args[len - 1], \" arguments\");\n break;\n }\n return \"\".concat(msg, \" must be specified\");\n}, TypeError);\nmodule.exports.codes = codes;","// Currently in sync with Node.js lib/internal/util/comparisons.js\n// https://github.com/nodejs/node/commit/112cc7c27551254aa2b17098fb774867f05ed0d9\n\n'use strict';\n\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }\nfunction _iterableToArrayLimit(r, l) { var t = null == r ? null : \"undefined\" != typeof Symbol && r[Symbol.iterator] || r[\"@@iterator\"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\nfunction _typeof(o) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o; }, _typeof(o); }\nvar regexFlagsSupported = /a/g.flags !== undefined;\nvar arrayFromSet = function arrayFromSet(set) {\n var array = [];\n set.forEach(function (value) {\n return array.push(value);\n });\n return array;\n};\nvar arrayFromMap = function arrayFromMap(map) {\n var array = [];\n map.forEach(function (value, key) {\n return array.push([key, value]);\n });\n return array;\n};\nvar objectIs = Object.is ? Object.is : require('object-is');\nvar objectGetOwnPropertySymbols = Object.getOwnPropertySymbols ? Object.getOwnPropertySymbols : function () {\n return [];\n};\nvar numberIsNaN = Number.isNaN ? Number.isNaN : require('is-nan');\nfunction uncurryThis(f) {\n return f.call.bind(f);\n}\nvar hasOwnProperty = uncurryThis(Object.prototype.hasOwnProperty);\nvar propertyIsEnumerable = uncurryThis(Object.prototype.propertyIsEnumerable);\nvar objectToString = uncurryThis(Object.prototype.toString);\nvar _require$types = require('util/').types,\n isAnyArrayBuffer = _require$types.isAnyArrayBuffer,\n isArrayBufferView = _require$types.isArrayBufferView,\n isDate = _require$types.isDate,\n isMap = _require$types.isMap,\n isRegExp = _require$types.isRegExp,\n isSet = _require$types.isSet,\n isNativeError = _require$types.isNativeError,\n isBoxedPrimitive = _require$types.isBoxedPrimitive,\n isNumberObject = _require$types.isNumberObject,\n isStringObject = _require$types.isStringObject,\n isBooleanObject = _require$types.isBooleanObject,\n isBigIntObject = _require$types.isBigIntObject,\n isSymbolObject = _require$types.isSymbolObject,\n isFloat32Array = _require$types.isFloat32Array,\n isFloat64Array = _require$types.isFloat64Array;\nfunction isNonIndex(key) {\n if (key.length === 0 || key.length > 10) return true;\n for (var i = 0; i < key.length; i++) {\n var code = key.charCodeAt(i);\n if (code < 48 || code > 57) return true;\n }\n // The maximum size for an array is 2 ** 32 -1.\n return key.length === 10 && key >= Math.pow(2, 32);\n}\nfunction getOwnNonIndexProperties(value) {\n return Object.keys(value).filter(isNonIndex).concat(objectGetOwnPropertySymbols(value).filter(Object.prototype.propertyIsEnumerable.bind(value)));\n}\n\n// Taken from https://github.com/feross/buffer/blob/680e9e5e488f22aac27599a57dc844a6315928dd/index.js\n// original notice:\n/*!\n * The buffer module from node.js, for the browser.\n *\n * @author Feross Aboukhadijeh \n * @license MIT\n */\nfunction compare(a, b) {\n if (a === b) {\n return 0;\n }\n var x = a.length;\n var y = b.length;\n for (var i = 0, len = Math.min(x, y); i < len; ++i) {\n if (a[i] !== b[i]) {\n x = a[i];\n y = b[i];\n break;\n }\n }\n if (x < y) {\n return -1;\n }\n if (y < x) {\n return 1;\n }\n return 0;\n}\nvar ONLY_ENUMERABLE = undefined;\nvar kStrict = true;\nvar kLoose = false;\nvar kNoIterator = 0;\nvar kIsArray = 1;\nvar kIsSet = 2;\nvar kIsMap = 3;\n\n// Check if they have the same source and flags\nfunction areSimilarRegExps(a, b) {\n return regexFlagsSupported ? a.source === b.source && a.flags === b.flags : RegExp.prototype.toString.call(a) === RegExp.prototype.toString.call(b);\n}\nfunction areSimilarFloatArrays(a, b) {\n if (a.byteLength !== b.byteLength) {\n return false;\n }\n for (var offset = 0; offset < a.byteLength; offset++) {\n if (a[offset] !== b[offset]) {\n return false;\n }\n }\n return true;\n}\nfunction areSimilarTypedArrays(a, b) {\n if (a.byteLength !== b.byteLength) {\n return false;\n }\n return compare(new Uint8Array(a.buffer, a.byteOffset, a.byteLength), new Uint8Array(b.buffer, b.byteOffset, b.byteLength)) === 0;\n}\nfunction areEqualArrayBuffers(buf1, buf2) {\n return buf1.byteLength === buf2.byteLength && compare(new Uint8Array(buf1), new Uint8Array(buf2)) === 0;\n}\nfunction isEqualBoxedPrimitive(val1, val2) {\n if (isNumberObject(val1)) {\n return isNumberObject(val2) && objectIs(Number.prototype.valueOf.call(val1), Number.prototype.valueOf.call(val2));\n }\n if (isStringObject(val1)) {\n return isStringObject(val2) && String.prototype.valueOf.call(val1) === String.prototype.valueOf.call(val2);\n }\n if (isBooleanObject(val1)) {\n return isBooleanObject(val2) && Boolean.prototype.valueOf.call(val1) === Boolean.prototype.valueOf.call(val2);\n }\n if (isBigIntObject(val1)) {\n return isBigIntObject(val2) && BigInt.prototype.valueOf.call(val1) === BigInt.prototype.valueOf.call(val2);\n }\n return isSymbolObject(val2) && Symbol.prototype.valueOf.call(val1) === Symbol.prototype.valueOf.call(val2);\n}\n\n// Notes: Type tags are historical [[Class]] properties that can be set by\n// FunctionTemplate::SetClassName() in C++ or Symbol.toStringTag in JS\n// and retrieved using Object.prototype.toString.call(obj) in JS\n// See https://tc39.github.io/ecma262/#sec-object.prototype.tostring\n// for a list of tags pre-defined in the spec.\n// There are some unspecified tags in the wild too (e.g. typed array tags).\n// Since tags can be altered, they only serve fast failures\n//\n// Typed arrays and buffers are checked by comparing the content in their\n// underlying ArrayBuffer. This optimization requires that it's\n// reasonable to interpret their underlying memory in the same way,\n// which is checked by comparing their type tags.\n// (e.g. a Uint8Array and a Uint16Array with the same memory content\n// could still be different because they will be interpreted differently).\n//\n// For strict comparison, objects should have\n// a) The same built-in type tags\n// b) The same prototypes.\n\nfunction innerDeepEqual(val1, val2, strict, memos) {\n // All identical values are equivalent, as determined by ===.\n if (val1 === val2) {\n if (val1 !== 0) return true;\n return strict ? objectIs(val1, val2) : true;\n }\n\n // Check more closely if val1 and val2 are equal.\n if (strict) {\n if (_typeof(val1) !== 'object') {\n return typeof val1 === 'number' && numberIsNaN(val1) && numberIsNaN(val2);\n }\n if (_typeof(val2) !== 'object' || val1 === null || val2 === null) {\n return false;\n }\n if (Object.getPrototypeOf(val1) !== Object.getPrototypeOf(val2)) {\n return false;\n }\n } else {\n if (val1 === null || _typeof(val1) !== 'object') {\n if (val2 === null || _typeof(val2) !== 'object') {\n // eslint-disable-next-line eqeqeq\n return val1 == val2;\n }\n return false;\n }\n if (val2 === null || _typeof(val2) !== 'object') {\n return false;\n }\n }\n var val1Tag = objectToString(val1);\n var val2Tag = objectToString(val2);\n if (val1Tag !== val2Tag) {\n return false;\n }\n if (Array.isArray(val1)) {\n // Check for sparse arrays and general fast path\n if (val1.length !== val2.length) {\n return false;\n }\n var keys1 = getOwnNonIndexProperties(val1, ONLY_ENUMERABLE);\n var keys2 = getOwnNonIndexProperties(val2, ONLY_ENUMERABLE);\n if (keys1.length !== keys2.length) {\n return false;\n }\n return keyCheck(val1, val2, strict, memos, kIsArray, keys1);\n }\n // [browserify] This triggers on certain types in IE (Map/Set) so we don't\n // wan't to early return out of the rest of the checks. However we can check\n // if the second value is one of these values and the first isn't.\n if (val1Tag === '[object Object]') {\n // return keyCheck(val1, val2, strict, memos, kNoIterator);\n if (!isMap(val1) && isMap(val2) || !isSet(val1) && isSet(val2)) {\n return false;\n }\n }\n if (isDate(val1)) {\n if (!isDate(val2) || Date.prototype.getTime.call(val1) !== Date.prototype.getTime.call(val2)) {\n return false;\n }\n } else if (isRegExp(val1)) {\n if (!isRegExp(val2) || !areSimilarRegExps(val1, val2)) {\n return false;\n }\n } else if (isNativeError(val1) || val1 instanceof Error) {\n // Do not compare the stack as it might differ even though the error itself\n // is otherwise identical.\n if (val1.message !== val2.message || val1.name !== val2.name) {\n return false;\n }\n } else if (isArrayBufferView(val1)) {\n if (!strict && (isFloat32Array(val1) || isFloat64Array(val1))) {\n if (!areSimilarFloatArrays(val1, val2)) {\n return false;\n }\n } else if (!areSimilarTypedArrays(val1, val2)) {\n return false;\n }\n // Buffer.compare returns true, so val1.length === val2.length. If they both\n // only contain numeric keys, we don't need to exam further than checking\n // the symbols.\n var _keys = getOwnNonIndexProperties(val1, ONLY_ENUMERABLE);\n var _keys2 = getOwnNonIndexProperties(val2, ONLY_ENUMERABLE);\n if (_keys.length !== _keys2.length) {\n return false;\n }\n return keyCheck(val1, val2, strict, memos, kNoIterator, _keys);\n } else if (isSet(val1)) {\n if (!isSet(val2) || val1.size !== val2.size) {\n return false;\n }\n return keyCheck(val1, val2, strict, memos, kIsSet);\n } else if (isMap(val1)) {\n if (!isMap(val2) || val1.size !== val2.size) {\n return false;\n }\n return keyCheck(val1, val2, strict, memos, kIsMap);\n } else if (isAnyArrayBuffer(val1)) {\n if (!areEqualArrayBuffers(val1, val2)) {\n return false;\n }\n } else if (isBoxedPrimitive(val1) && !isEqualBoxedPrimitive(val1, val2)) {\n return false;\n }\n return keyCheck(val1, val2, strict, memos, kNoIterator);\n}\nfunction getEnumerables(val, keys) {\n return keys.filter(function (k) {\n return propertyIsEnumerable(val, k);\n });\n}\nfunction keyCheck(val1, val2, strict, memos, iterationType, aKeys) {\n // For all remaining Object pairs, including Array, objects and Maps,\n // equivalence is determined by having:\n // a) The same number of owned enumerable properties\n // b) The same set of keys/indexes (although not necessarily the same order)\n // c) Equivalent values for every corresponding key/index\n // d) For Sets and Maps, equal contents\n // Note: this accounts for both named and indexed properties on Arrays.\n if (arguments.length === 5) {\n aKeys = Object.keys(val1);\n var bKeys = Object.keys(val2);\n\n // The pair must have the same number of owned properties.\n if (aKeys.length !== bKeys.length) {\n return false;\n }\n }\n\n // Cheap key test\n var i = 0;\n for (; i < aKeys.length; i++) {\n if (!hasOwnProperty(val2, aKeys[i])) {\n return false;\n }\n }\n if (strict && arguments.length === 5) {\n var symbolKeysA = objectGetOwnPropertySymbols(val1);\n if (symbolKeysA.length !== 0) {\n var count = 0;\n for (i = 0; i < symbolKeysA.length; i++) {\n var key = symbolKeysA[i];\n if (propertyIsEnumerable(val1, key)) {\n if (!propertyIsEnumerable(val2, key)) {\n return false;\n }\n aKeys.push(key);\n count++;\n } else if (propertyIsEnumerable(val2, key)) {\n return false;\n }\n }\n var symbolKeysB = objectGetOwnPropertySymbols(val2);\n if (symbolKeysA.length !== symbolKeysB.length && getEnumerables(val2, symbolKeysB).length !== count) {\n return false;\n }\n } else {\n var _symbolKeysB = objectGetOwnPropertySymbols(val2);\n if (_symbolKeysB.length !== 0 && getEnumerables(val2, _symbolKeysB).length !== 0) {\n return false;\n }\n }\n }\n if (aKeys.length === 0 && (iterationType === kNoIterator || iterationType === kIsArray && val1.length === 0 || val1.size === 0)) {\n return true;\n }\n\n // Use memos to handle cycles.\n if (memos === undefined) {\n memos = {\n val1: new Map(),\n val2: new Map(),\n position: 0\n };\n } else {\n // We prevent up to two map.has(x) calls by directly retrieving the value\n // and checking for undefined. The map can only contain numbers, so it is\n // safe to check for undefined only.\n var val2MemoA = memos.val1.get(val1);\n if (val2MemoA !== undefined) {\n var val2MemoB = memos.val2.get(val2);\n if (val2MemoB !== undefined) {\n return val2MemoA === val2MemoB;\n }\n }\n memos.position++;\n }\n memos.val1.set(val1, memos.position);\n memos.val2.set(val2, memos.position);\n var areEq = objEquiv(val1, val2, strict, aKeys, memos, iterationType);\n memos.val1.delete(val1);\n memos.val2.delete(val2);\n return areEq;\n}\nfunction setHasEqualElement(set, val1, strict, memo) {\n // Go looking.\n var setValues = arrayFromSet(set);\n for (var i = 0; i < setValues.length; i++) {\n var val2 = setValues[i];\n if (innerDeepEqual(val1, val2, strict, memo)) {\n // Remove the matching element to make sure we do not check that again.\n set.delete(val2);\n return true;\n }\n }\n return false;\n}\n\n// See https://developer.mozilla.org/en-US/docs/Web/JavaScript/Equality_comparisons_and_sameness#Loose_equality_using\n// Sadly it is not possible to detect corresponding values properly in case the\n// type is a string, number, bigint or boolean. The reason is that those values\n// can match lots of different string values (e.g., 1n == '+00001').\nfunction findLooseMatchingPrimitives(prim) {\n switch (_typeof(prim)) {\n case 'undefined':\n return null;\n case 'object':\n // Only pass in null as object!\n return undefined;\n case 'symbol':\n return false;\n case 'string':\n prim = +prim;\n // Loose equal entries exist only if the string is possible to convert to\n // a regular number and not NaN.\n // Fall through\n case 'number':\n if (numberIsNaN(prim)) {\n return false;\n }\n }\n return true;\n}\nfunction setMightHaveLoosePrim(a, b, prim) {\n var altValue = findLooseMatchingPrimitives(prim);\n if (altValue != null) return altValue;\n return b.has(altValue) && !a.has(altValue);\n}\nfunction mapMightHaveLoosePrim(a, b, prim, item, memo) {\n var altValue = findLooseMatchingPrimitives(prim);\n if (altValue != null) {\n return altValue;\n }\n var curB = b.get(altValue);\n if (curB === undefined && !b.has(altValue) || !innerDeepEqual(item, curB, false, memo)) {\n return false;\n }\n return !a.has(altValue) && innerDeepEqual(item, curB, false, memo);\n}\nfunction setEquiv(a, b, strict, memo) {\n // This is a lazily initiated Set of entries which have to be compared\n // pairwise.\n var set = null;\n var aValues = arrayFromSet(a);\n for (var i = 0; i < aValues.length; i++) {\n var val = aValues[i];\n // Note: Checking for the objects first improves the performance for object\n // heavy sets but it is a minor slow down for primitives. As they are fast\n // to check this improves the worst case scenario instead.\n if (_typeof(val) === 'object' && val !== null) {\n if (set === null) {\n set = new Set();\n }\n // If the specified value doesn't exist in the second set its an not null\n // object (or non strict only: a not matching primitive) we'll need to go\n // hunting for something thats deep-(strict-)equal to it. To make this\n // O(n log n) complexity we have to copy these values in a new set first.\n set.add(val);\n } else if (!b.has(val)) {\n if (strict) return false;\n\n // Fast path to detect missing string, symbol, undefined and null values.\n if (!setMightHaveLoosePrim(a, b, val)) {\n return false;\n }\n if (set === null) {\n set = new Set();\n }\n set.add(val);\n }\n }\n if (set !== null) {\n var bValues = arrayFromSet(b);\n for (var _i = 0; _i < bValues.length; _i++) {\n var _val = bValues[_i];\n // We have to check if a primitive value is already\n // matching and only if it's not, go hunting for it.\n if (_typeof(_val) === 'object' && _val !== null) {\n if (!setHasEqualElement(set, _val, strict, memo)) return false;\n } else if (!strict && !a.has(_val) && !setHasEqualElement(set, _val, strict, memo)) {\n return false;\n }\n }\n return set.size === 0;\n }\n return true;\n}\nfunction mapHasEqualEntry(set, map, key1, item1, strict, memo) {\n // To be able to handle cases like:\n // Map([[{}, 'a'], [{}, 'b']]) vs Map([[{}, 'b'], [{}, 'a']])\n // ... we need to consider *all* matching keys, not just the first we find.\n var setValues = arrayFromSet(set);\n for (var i = 0; i < setValues.length; i++) {\n var key2 = setValues[i];\n if (innerDeepEqual(key1, key2, strict, memo) && innerDeepEqual(item1, map.get(key2), strict, memo)) {\n set.delete(key2);\n return true;\n }\n }\n return false;\n}\nfunction mapEquiv(a, b, strict, memo) {\n var set = null;\n var aEntries = arrayFromMap(a);\n for (var i = 0; i < aEntries.length; i++) {\n var _aEntries$i = _slicedToArray(aEntries[i], 2),\n key = _aEntries$i[0],\n item1 = _aEntries$i[1];\n if (_typeof(key) === 'object' && key !== null) {\n if (set === null) {\n set = new Set();\n }\n set.add(key);\n } else {\n // By directly retrieving the value we prevent another b.has(key) check in\n // almost all possible cases.\n var item2 = b.get(key);\n if (item2 === undefined && !b.has(key) || !innerDeepEqual(item1, item2, strict, memo)) {\n if (strict) return false;\n // Fast path to detect missing string, symbol, undefined and null\n // keys.\n if (!mapMightHaveLoosePrim(a, b, key, item1, memo)) return false;\n if (set === null) {\n set = new Set();\n }\n set.add(key);\n }\n }\n }\n if (set !== null) {\n var bEntries = arrayFromMap(b);\n for (var _i2 = 0; _i2 < bEntries.length; _i2++) {\n var _bEntries$_i = _slicedToArray(bEntries[_i2], 2),\n _key = _bEntries$_i[0],\n item = _bEntries$_i[1];\n if (_typeof(_key) === 'object' && _key !== null) {\n if (!mapHasEqualEntry(set, a, _key, item, strict, memo)) return false;\n } else if (!strict && (!a.has(_key) || !innerDeepEqual(a.get(_key), item, false, memo)) && !mapHasEqualEntry(set, a, _key, item, false, memo)) {\n return false;\n }\n }\n return set.size === 0;\n }\n return true;\n}\nfunction objEquiv(a, b, strict, keys, memos, iterationType) {\n // Sets and maps don't have their entries accessible via normal object\n // properties.\n var i = 0;\n if (iterationType === kIsSet) {\n if (!setEquiv(a, b, strict, memos)) {\n return false;\n }\n } else if (iterationType === kIsMap) {\n if (!mapEquiv(a, b, strict, memos)) {\n return false;\n }\n } else if (iterationType === kIsArray) {\n for (; i < a.length; i++) {\n if (hasOwnProperty(a, i)) {\n if (!hasOwnProperty(b, i) || !innerDeepEqual(a[i], b[i], strict, memos)) {\n return false;\n }\n } else if (hasOwnProperty(b, i)) {\n return false;\n } else {\n // Array is sparse.\n var keysA = Object.keys(a);\n for (; i < keysA.length; i++) {\n var key = keysA[i];\n if (!hasOwnProperty(b, key) || !innerDeepEqual(a[key], b[key], strict, memos)) {\n return false;\n }\n }\n if (keysA.length !== Object.keys(b).length) {\n return false;\n }\n return true;\n }\n }\n }\n\n // The pair must have equivalent values for every corresponding key.\n // Possibly expensive deep test:\n for (i = 0; i < keys.length; i++) {\n var _key2 = keys[i];\n if (!innerDeepEqual(a[_key2], b[_key2], strict, memos)) {\n return false;\n }\n }\n return true;\n}\nfunction isDeepEqual(val1, val2) {\n return innerDeepEqual(val1, val2, kLoose);\n}\nfunction isDeepStrictEqual(val1, val2) {\n return innerDeepEqual(val1, val2, kStrict);\n}\nmodule.exports = {\n isDeepEqual: isDeepEqual,\n isDeepStrictEqual: isDeepStrictEqual\n};","'use strict'\n\nexports.byteLength = byteLength\nexports.toByteArray = toByteArray\nexports.fromByteArray = fromByteArray\n\nvar lookup = []\nvar revLookup = []\nvar Arr = typeof Uint8Array !== 'undefined' ? Uint8Array : Array\n\nvar code = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'\nfor (var i = 0, len = code.length; i < len; ++i) {\n lookup[i] = code[i]\n revLookup[code.charCodeAt(i)] = i\n}\n\n// Support decoding URL-safe base64 strings, as Node.js does.\n// See: https://en.wikipedia.org/wiki/Base64#URL_applications\nrevLookup['-'.charCodeAt(0)] = 62\nrevLookup['_'.charCodeAt(0)] = 63\n\nfunction getLens (b64) {\n var len = b64.length\n\n if (len % 4 > 0) {\n throw new Error('Invalid string. Length must be a multiple of 4')\n }\n\n // Trim off extra bytes after placeholder bytes are found\n // See: https://github.com/beatgammit/base64-js/issues/42\n var validLen = b64.indexOf('=')\n if (validLen === -1) validLen = len\n\n var placeHoldersLen = validLen === len\n ? 0\n : 4 - (validLen % 4)\n\n return [validLen, placeHoldersLen]\n}\n\n// base64 is 4/3 + up to two characters of the original data\nfunction byteLength (b64) {\n var lens = getLens(b64)\n var validLen = lens[0]\n var placeHoldersLen = lens[1]\n return ((validLen + placeHoldersLen) * 3 / 4) - placeHoldersLen\n}\n\nfunction _byteLength (b64, validLen, placeHoldersLen) {\n return ((validLen + placeHoldersLen) * 3 / 4) - placeHoldersLen\n}\n\nfunction toByteArray (b64) {\n var tmp\n var lens = getLens(b64)\n var validLen = lens[0]\n var placeHoldersLen = lens[1]\n\n var arr = new Arr(_byteLength(b64, validLen, placeHoldersLen))\n\n var curByte = 0\n\n // if there are placeholders, only get up to the last complete 4 chars\n var len = placeHoldersLen > 0\n ? validLen - 4\n : validLen\n\n var i\n for (i = 0; i < len; i += 4) {\n tmp =\n (revLookup[b64.charCodeAt(i)] << 18) |\n (revLookup[b64.charCodeAt(i + 1)] << 12) |\n (revLookup[b64.charCodeAt(i + 2)] << 6) |\n revLookup[b64.charCodeAt(i + 3)]\n arr[curByte++] = (tmp >> 16) & 0xFF\n arr[curByte++] = (tmp >> 8) & 0xFF\n arr[curByte++] = tmp & 0xFF\n }\n\n if (placeHoldersLen === 2) {\n tmp =\n (revLookup[b64.charCodeAt(i)] << 2) |\n (revLookup[b64.charCodeAt(i + 1)] >> 4)\n arr[curByte++] = tmp & 0xFF\n }\n\n if (placeHoldersLen === 1) {\n tmp =\n (revLookup[b64.charCodeAt(i)] << 10) |\n (revLookup[b64.charCodeAt(i + 1)] << 4) |\n (revLookup[b64.charCodeAt(i + 2)] >> 2)\n arr[curByte++] = (tmp >> 8) & 0xFF\n arr[curByte++] = tmp & 0xFF\n }\n\n return arr\n}\n\nfunction tripletToBase64 (num) {\n return lookup[num >> 18 & 0x3F] +\n lookup[num >> 12 & 0x3F] +\n lookup[num >> 6 & 0x3F] +\n lookup[num & 0x3F]\n}\n\nfunction encodeChunk (uint8, start, end) {\n var tmp\n var output = []\n for (var i = start; i < end; i += 3) {\n tmp =\n ((uint8[i] << 16) & 0xFF0000) +\n ((uint8[i + 1] << 8) & 0xFF00) +\n (uint8[i + 2] & 0xFF)\n output.push(tripletToBase64(tmp))\n }\n return output.join('')\n}\n\nfunction fromByteArray (uint8) {\n var tmp\n var len = uint8.length\n var extraBytes = len % 3 // if we have 1 byte left, pad 2 bytes\n var parts = []\n var maxChunkLength = 16383 // must be multiple of 3\n\n // go through the array every three bytes, we'll deal with trailing stuff later\n for (var i = 0, len2 = len - extraBytes; i < len2; i += maxChunkLength) {\n parts.push(encodeChunk(uint8, i, (i + maxChunkLength) > len2 ? len2 : (i + maxChunkLength)))\n }\n\n // pad the end with zeros, but make sure to not forget the extra bytes\n if (extraBytes === 1) {\n tmp = uint8[len - 1]\n parts.push(\n lookup[tmp >> 2] +\n lookup[(tmp << 4) & 0x3F] +\n '=='\n )\n } else if (extraBytes === 2) {\n tmp = (uint8[len - 2] << 8) + uint8[len - 1]\n parts.push(\n lookup[tmp >> 10] +\n lookup[(tmp >> 4) & 0x3F] +\n lookup[(tmp << 2) & 0x3F] +\n '='\n )\n }\n\n return parts.join('')\n}\n","\nimport { MessageOption, MessageType } from 'vuetify-message-snackbar/src/message';\n\n\ninterface MessageReturnValue {\n close(): void;\n again(): void;\n}\n\n// Vue コンポーネント以外からも this.$message を使えるようにするための (強引な) ラッパー\n// …だったのだが、defineComponent に移行した結果 this.$message が使えなくなったので結局こっちに統一した\n// 将来的にはちゃんと実装する予定\nexport default {\n success(message: MessageType | MessageOption): MessageReturnValue {\n // @ts-ignore\n return window.KonomiTVVueInstance?.$message.success(message);\n },\n info(message: MessageType | MessageOption): MessageReturnValue {\n // @ts-ignore\n return window.KonomiTVVueInstance?.$message.info(message);\n },\n warning(message: MessageType | MessageOption): MessageReturnValue {\n // @ts-ignore\n return window.KonomiTVVueInstance?.$message.warning(message);\n },\n error(message: MessageType | MessageOption): MessageReturnValue {\n // @ts-ignore\n return window.KonomiTVVueInstance?.$message.error(message);\n },\n show(message: MessageType | MessageOption): MessageReturnValue {\n // @ts-ignore\n return window.KonomiTVVueInstance?.$message.show(message);\n }\n};\n","\n/**\n * services/ 直下の各クラスは、KonomiTV サーバーへの API リクエストを抽象化し、\n * API レスポンスの受け取りと、エラーが発生した際のエラーハンドリング (エラーメッセージ表示) までを責務として負う\n */\n\nimport axios, { AxiosError, AxiosRequestConfig, AxiosResponse } from 'axios';\n\nimport Message from '@/message';\nimport useUserStore from '@/stores/UserStore';\nimport Utils from '@/utils';\n\n\n/** API リクエスト成功時のレスポンスを表すインターフェイス */\nexport interface ISuccessResponse {\n type: 'success';\n status: number;\n data: T;\n}\n\n/** API リクエスト失敗時のレスポンスを表すインターフェイス */\nexport interface IErrorResponse {\n type: 'error';\n status: number;\n data: IErrorResponseData;\n error: AxiosError;\n}\n\n/**\n * API リクエスト失敗時にサーバーから返されるエラーレスポンスを表すインターフェイス\n * HTTP リクエスト自体が失敗した場合は、detail に AxiosError のエラーメッセージが入る\n */\nexport interface IErrorResponseData {\n detail: string | {\n type: string;\n loc: (string | number)[];\n msg: string;\n input?: any;\n url?: string;\n }\n}\n\n\n/**\n * services/ 以下の各クラスから呼び出される、Axios の薄いラッパー\n * エラーハンドリングを容易にするために、レスポンスを ISuccessResponse と IErrorResponse に分けて返す\n * ref: https://zenn.dev/engineer_titan/articles/291c9fccb338e2\n */\nclass APIClient {\n\n /**\n * Axios で HTTP リクエストを送信し、レスポンスを受け取る\n * @param request AxiosRequestConfig\n * @returns 成功なら ISuccessResponse 、失敗なら IErrorResponse を返す\n */\n static async request(request: AxiosRequestConfig): Promise | IErrorResponse> {\n\n // API のベース URL を設定 (config.baseURL が指定されていない場合のみ)\n if (request.baseURL === undefined) {\n request.baseURL = Utils.api_base_url;\n }\n\n // リクエストヘッダーが指定されていない場合は空のオブジェクトを設定\n if (request.headers === undefined) {\n request.headers = {};\n }\n\n // 外部サイトへの HTTP/HTTPS リクエストでは実行しない\n if (request.url?.startsWith('http') === false) {\n\n // アクセストークンが取得できたら (=ログインされていれば)\n // 取得したアクセストークンを Authorization ヘッダーに Bearer トークンとしてセット\n // これを忘れると当然ながらログインしていない扱いになる\n const access_token = Utils.getAccessToken();\n if (access_token !== null) {\n request.headers['Authorization'] = `Bearer ${access_token}`;\n }\n\n // KonomiTV クライアントのバージョンを設定\n // 今のところ使わないが、将来的にクライアントとサーバーを分離することを見据えて念のため\n request.headers['X-KonomiTV-Version'] = Utils.version;\n }\n\n // リクエストのタイムアウト時間を30秒に設定\n request.timeout = 30 * 1000;\n\n // リクエストのタイムアウト時に、一般的な ECONNABORTED の代わりに ETIMEDOUT を送出する\n request.transitional = {\n clarifyTimeoutError: true,\n };\n\n // Axios で HTTP リクエストを送信し、レスポンスを受け取る\n const result: AxiosResponse | AxiosError = await axios.request(request).catch((error) => error);\n\n // エラーが発生した場合は IErrorResponse を返す\n if (result instanceof AxiosError) {\n console.error(result);\n\n // エラーレスポンスがあれば、エラー内容と AxiosError を IErrorResponse に入れて返す\n if (result.response) {\n return {\n type: 'error',\n status: result.response.status,\n data: result.response.data, // data には IErrorResponseData が入る\n error: result, // AxiosError をそのまま入れる\n };\n\n // エラーレスポンスがない場合は、AxiosError のみを IErrorResponse に入れて返す\n } else {\n return {\n type: 'error',\n status: NaN, // ステータスコードは取得できないので NaN にする\n data: {detail: result.message}, // data.detail に AxiosError のエラーメッセージを入れる\n error: result, // AxiosError をそのまま入れる\n };\n }\n\n // 正常にレスポンスが返ってきた場合は ISuccessResponse を返す\n } else {\n return {\n type: 'success',\n status: result.status,\n data: result.data,\n };\n }\n }\n\n\n /**\n * GET リクエストを送信する\n * @param url リクエスト先の URL\n * @returns 成功なら ISuccessResponse 、失敗なら IErrorResponse を返す\n */\n static async get(url: string, config?: AxiosRequestConfig): Promise | IErrorResponse> {\n const request: AxiosRequestConfig = {\n url: url,\n method: 'GET',\n ...config,\n };\n return await APIClient.request(request);\n }\n\n\n /**\n * POST リクエストを送信する\n * @param url リクエスト先の URL\n * @returns 成功なら ISuccessResponse 、失敗なら IErrorResponse を返す\n */\n static async post(url: string, data?: D, config?: AxiosRequestConfig): Promise | IErrorResponse> {\n const request: AxiosRequestConfig = {\n url: url,\n method: 'POST',\n data: data,\n ...config,\n };\n return await APIClient.request(request);\n }\n\n\n /**\n * PUT リクエストを送信する\n * @param url リクエスト先の URL\n * @returns 成功なら ISuccessResponse 、失敗なら IErrorResponse を返す\n */\n static async put(url: string, data?: D, config?: AxiosRequestConfig): Promise | IErrorResponse> {\n const request: AxiosRequestConfig = {\n url: url,\n method: 'PUT',\n data: data,\n ...config,\n };\n return await APIClient.request(request);\n }\n\n\n /**\n * DELETE リクエストを送信する\n * @param url リクエスト先の URL\n * @returns 成功なら ISuccessResponse 、失敗なら IErrorResponse を返す\n */\n static async delete(url: string, config?: AxiosRequestConfig): Promise | IErrorResponse> {\n const request: AxiosRequestConfig = {\n url: url,\n method: 'DELETE',\n ...config,\n };\n return await APIClient.request(request);\n }\n\n\n /**\n * 一般的なエラーメッセージの共通処理\n * エラーメッセージを SnackBar で表示する\n * @param error_response API から返されたエラーレスポンス\n * @param template エラーメッセージのテンプレート(「アカウント情報を取得できませんでした。」など)\n */\n static showGenericError(error_response: IErrorResponse, template: string): void {\n const user_store = useUserStore();\n switch (error_response.data.detail) {\n case 'Not authenticated': {\n user_store.logout(true);\n Message.error(`${template}\\nログインし直してください。`);\n return;\n }\n case 'Access token data is invalid': {\n user_store.logout(true);\n Message.error(`${template}\\nログインセッションが不正です。もう一度ログインし直してください。`);\n return;\n }\n case 'Access token is invalid': {\n user_store.logout(true);\n Message.error(`${template}\\nログインセッションの有効期限が切れています。もう一度ログインし直してください。`);\n return;\n }\n case 'User associated with access token does not exist': {\n user_store.logout(true);\n Message.error(`${template}\\nログインセッションに紐づくユーザーが存在しないか、削除されています。`);\n return;\n }\n default: {\n if (Number.isNaN(error_response.status)) {\n // HTTP リクエスト自体が失敗し、HTTP ステータスコードが取得できなかった場合\n if (error_response.error.code === AxiosError.ECONNABORTED) {\n // ネットワーク接続エラーの場合\n Message.error(`${template}\\nサーバーへの接続が切断されました。(${error_response.error.message})`);\n } else if (error_response.error.code === AxiosError.ETIMEDOUT) {\n // タイムアウトの場合\n Message.error(`${template}\\nサーバーへの接続がタイムアウトしました。(${error_response.error.message})`);\n } else if (error_response.error.code === AxiosError.ERR_NETWORK) {\n // 予期しないネットワークエラーの場合\n Message.error(`${template}\\n予期しないネットワークエラーが発生しました。(${error_response.error.message})`);\n } else {\n // それ以外のエラーの場合\n Message.error(`${template}(${error_response.error.message})`);\n }\n } else {\n // HTTP リクエスト自体は成功したが、API からエラーレスポンスが返ってきた場合\n Message.error(`${template}(HTTP Error ${error_response.status} / ${error_response.data.detail})`);\n }\n return;\n }\n }\n }\n}\n\nexport default APIClient;\n","\nimport APIClient from '@/services/APIClient';\n\n\n/**\n * サーバーに保存されるクライアント設定を表すインターフェース\n * サーバー側の app.schemas.ClientSettings と\n * client/src/stores/SettingsStore.ts 内の sync_settings_keys で定義されているものと同じ\n */\nexport interface IClientSettings {\n pinned_channel_ids: string[];\n // showed_panel_last_time: 同期無効\n // selected_twitter_account_id: 同期無効\n saved_twitter_hashtags: string[];\n panel_display_state: 'RestorePreviousState' | 'AlwaysDisplay' | 'AlwaysFold';\n tv_panel_active_tab: 'Program' | 'Channel' | 'Comment' | 'Twitter';\n video_panel_active_tab: 'RecordedProgram' | 'Series' | 'Comment' | 'Twitter';\n tv_channel_selection_requires_alt_key: boolean;\n // tv_streaming_quality: 同期無効\n // tv_streaming_quality_cellular: 同期無効\n // tv_data_saver_mode: 同期無効\n // tv_data_saver_mode_cellular: 同期無効\n // tv_low_latency_mode: 同期無効\n // tv_low_latency_mode_cellular: 同期無効\n // video_streaming_quality: 同期無効\n // video_streaming_quality_cellular: 同期無効\n // video_data_saver_mode: 同期無効\n // video_data_saver_mode_cellular: 同期無効\n caption_font: string;\n always_border_caption_text: boolean;\n specify_caption_opacity: boolean;\n caption_opacity: number;\n tv_show_superimpose: boolean;\n video_show_superimpose: boolean;\n // tv_show_data_broadcasting: 同期無効\n // capture_copy_to_clipboard: 同期無効\n capture_save_mode: 'Browser' | 'UploadServer' | 'Both';\n capture_caption_mode: 'VideoOnly' | 'CompositingCaption' | 'Both';\n // sync_settings: 同期無効\n comment_speed_rate: number;\n comment_font_size: number;\n close_comment_form_after_sending: boolean;\n muted_comment_keywords: IMutedCommentKeywords[];\n muted_niconico_user_ids: string[];\n mute_vulgar_comments: boolean;\n mute_abusive_discriminatory_prejudiced_comments: boolean;\n mute_big_size_comments: boolean;\n mute_fixed_comments: boolean;\n mute_colored_comments: boolean;\n mute_consecutive_same_characters_comments: boolean;\n fold_panel_after_sending_tweet: boolean;\n reset_hashtag_when_program_switches: boolean;\n auto_add_watching_channel_hashtag: boolean;\n twitter_active_tab: 'Search' | 'Timeline' | 'Capture';\n tweet_hashtag_position: 'Prepend' | 'Append' | 'PrependWithLineBreak' | 'AppendWithLineBreak';\n tweet_capture_watermark_position: 'None' | 'TopLeft' | 'TopRight' | 'BottomLeft' | 'BottomRight';\n}\n\n/**\n * ミュート対象のコメントのキーワードのインターフェイス\n */\nexport interface IMutedCommentKeywords {\n match: 'partial' | 'forward' | 'backward' | 'exact' | 'regex';\n pattern: string;\n}\n\n\nclass Settings {\n\n /**\n * クライアント設定を取得する\n * @return クライアント設定 (取得に失敗した場合は null)\n */\n static async fetchClientSettings(): Promise {\n\n // API リクエストを実行\n const response = await APIClient.get('/settings/client');\n\n // エラー処理 (基本起こらないはず & 実行できなくても後続の処理に影響しないため何もしない)\n if (response.type === 'error') {\n return null;\n }\n\n return response.data;\n }\n\n\n /**\n * クライアント設定を更新する\n * @param settings クライアント設定\n */\n static async updateClientSettings(settings: IClientSettings): Promise {\n\n // API リクエストを実行\n // 正常時は 204 No Content が返るし、エラーは基本起こらないはずなので何もしない\n await APIClient.put('/settings/client', settings);\n }\n}\n\nexport default Settings;\n","\nimport Message from '@/message';\nimport APIClient from '@/services/APIClient';\n\n\n/** ユーザーアカウントの情報を表すインターフェイス */\nexport interface IUser {\n id: number;\n name: string;\n is_admin: boolean;\n niconico_user_id: number | null;\n niconico_user_name: string | null;\n niconico_user_premium: boolean | null;\n twitter_accounts: ITwitterAccount[];\n created_at: string;\n updated_at: string;\n}\n\n/** ユーザーアカウントに紐づく Twitter アカウントの情報を表すインターフェイス */\nexport interface ITwitterAccount {\n id: number;\n name: string;\n screen_name: string;\n icon_url: string;\n is_oauth_session: boolean;\n created_at: string;\n updated_at: string;\n}\n\n/** ユーザーアカウントのアクセストークンを表すインターフェイス */\nexport interface IUserAccessToken {\n access_token: string;\n token_type: string;\n}\n\nexport interface IUserCreateRequest {\n username: string;\n password: string;\n}\nexport interface IUserUpdateRequest {\n username?: string;\n password?: string;\n}\nexport interface IUserUpdateRequestForAdmin {\n username?: string;\n password?: string;\n is_admin?: boolean;\n}\n\n\nclass Users {\n\n /**\n * ユーザーアカウントを作成する\n * @param user_create_request ユーザー名とパスワード\n * @returns 作成したユーザーアカウントの情報 or アカウント作成に失敗した場合は null\n */\n static async createUser(user_create_request: IUserCreateRequest): Promise {\n\n // API リクエストを実行\n const response = await APIClient.post('/users', user_create_request);\n\n // エラー処理\n if (response.type === 'error') {\n switch (response.data.detail) {\n case 'Specified username is duplicated': {\n Message.error('ユーザー名が重複しています。');\n break;\n }\n case 'Specified username is not accepted due to system limitations': {\n Message.error('ユーザー名に token と me は使えません。');\n break;\n }\n default: {\n APIClient.showGenericError(response, 'アカウントを作成できませんでした。');\n break;\n }\n }\n return null;\n }\n\n return response.data;\n }\n\n\n /**\n * ユーザーアカウントのアクセストークンを発行する\n * @param username ユーザー名\n * @param password パスワード\n * @returns 発行したアクセストークン or ログインに失敗した場合は null\n */\n static async createUserAccessToken(username: string, password: string): Promise {\n\n // API リクエストを実行\n const response = await APIClient.post('/users/token', new URLSearchParams({username, password}));\n\n // エラー処理\n if (response.type === 'error') {\n switch (response.data.detail) {\n case 'Incorrect username': {\n Message.error('ログインできませんでした。そのユーザー名のアカウントは存在しません。');\n break;\n }\n case 'Incorrect password': {\n Message.error('ログインできませんでした。パスワードを間違えていませんか?');\n break;\n }\n default: {\n APIClient.showGenericError(response, 'ログインできませんでした。');\n break;\n }\n }\n return null;\n }\n\n return response.data;\n }\n\n\n /**\n * 現在ログイン中のユーザーアカウントの情報を取得する\n * @returns ログイン中のユーザーアカウントの情報 or ログインしていない場合は null\n */\n static async fetchUser(): Promise {\n\n // API リクエストを実行\n const response = await APIClient.get('/users/me');\n\n // エラー処理\n if (response.type === 'error') {\n APIClient.showGenericError(response, 'アカウント情報を取得できませんでした。');\n return null;\n }\n\n return response.data;\n }\n\n\n /**\n * 現在ログイン中のユーザーアカウントのアイコンを取得する\n * @returns ログイン中のユーザーアカウントのアイコンの Blob URL or ログインしていない場合は null\n */\n static async fetchUserIcon(): Promise {\n\n // API リクエストを実行\n const response = await APIClient.get('/users/me/icon', {responseType: 'blob'});\n\n // エラー処理\n if (response.type === 'error') {\n APIClient.showGenericError(response, 'アイコン画像を取得できませんでした。');\n return null;\n }\n\n return URL.createObjectURL(response.data);\n }\n\n\n /**\n * 現在ログイン中のユーザーアカウントの情報を更新する\n * @param user_update_request ユーザー名 or パスワード\n */\n static async updateUser(user_update_request: IUserUpdateRequest): Promise {\n\n // API リクエストを実行\n const response = await APIClient.put('/users/me', user_update_request);\n\n // エラー処理\n if (response.type === 'error') {\n switch (response.data.detail) {\n case 'Specified username is duplicated': {\n Message.error('ユーザー名が重複しています。');\n break;\n }\n case 'Specified username is not accepted due to system limitations': {\n Message.error('ユーザー名に token と me は使えません。');\n break;\n }\n default: {\n APIClient.showGenericError(response, 'アカウント情報を更新できませんでした。');\n break;\n }\n }\n return;\n }\n }\n\n\n /**\n * 現在ログイン中のユーザーアカウントのアイコン画像を更新する\n * @param icon アイコンの File オブジェクト\n */\n static async updateUserIcon(icon: File): Promise {\n\n // アイコン画像の File オブジェクト (= Blob) を FormData に入れる\n // multipart/form-data で送るために必要\n // ref: https://r17n.page/2020/02/04/nodejs-axios-file-upload-api/\n const form_data = new FormData();\n form_data.append('image', icon);\n\n // API リクエストを実行\n const response = await APIClient.put('/users/me/icon', form_data, {headers: {'Content-Type': 'multipart/form-data'}});\n\n // エラー処理\n if (response.type === 'error') {\n switch (response.data.detail) {\n case 'Please upload JPEG or PNG image': {\n Message.error('JPEG または PNG 画像をアップロードしてください。');\n break;\n }\n default: {\n APIClient.showGenericError(response, 'アイコン画像を更新できませんでした。');\n break;\n }\n }\n return;\n }\n }\n\n\n /**\n * 現在ログイン中のユーザーアカウントを削除する\n */\n static async deleteUser(): Promise {\n\n // API リクエストを実行\n const response = await APIClient.delete('/users/me');\n\n // エラー処理\n if (response.type === 'error') {\n APIClient.showGenericError(response, 'アカウントを削除できませんでした。');\n return;\n }\n }\n}\n\nexport default Users;\n","\nimport { defineStore } from 'pinia';\n\nimport Settings, { IClientSettings, IMutedCommentKeywords } from '@/services/Settings';\nimport Utils from '@/utils';\n\n\n// 選択可能な画質の種類\nexport type LiveStreamingQuality = '1080p-60fps' | '1080p' | '810p' | '720p' | '540p' | '480p' | '360p' | '240p';\nexport const LIVE_STREAMING_QUALITIES: LiveStreamingQuality[] = ['1080p-60fps', '1080p', '810p', '720p', '540p', '480p', '360p', '240p'];\nexport type VideoStreamingQuality = '1080p-60fps' | '1080p' | '810p' | '720p' | '540p' | '480p' | '360p' | '240p';\nexport const VIDEO_STREAMING_QUALITIES: VideoStreamingQuality[] = ['1080p-60fps', '1080p', '810p', '720p', '540p', '480p', '360p', '240p'];\n\n// LocalStorage に保存される KonomiTV の設定データ\ninterface ILocalClientSettings {\n pinned_channel_ids: string[];\n showed_panel_last_time: boolean;\n selected_twitter_account_id: number | null;\n saved_twitter_hashtags: string[];\n panel_display_state: 'RestorePreviousState' | 'AlwaysDisplay' | 'AlwaysFold';\n tv_panel_active_tab: 'Program' | 'Channel' | 'Comment' | 'Twitter';\n video_panel_active_tab: 'RecordedProgram' | 'Series' | 'Comment' | 'Twitter';\n tv_channel_selection_requires_alt_key: boolean;\n tv_streaming_quality: LiveStreamingQuality;\n tv_streaming_quality_cellular: LiveStreamingQuality;\n tv_data_saver_mode: boolean;\n tv_data_saver_mode_cellular: boolean;\n tv_low_latency_mode: boolean;\n tv_low_latency_mode_cellular: boolean;\n video_streaming_quality: VideoStreamingQuality;\n video_streaming_quality_cellular: VideoStreamingQuality;\n video_data_saver_mode: boolean;\n video_data_saver_mode_cellular: boolean;\n caption_font: string;\n always_border_caption_text: boolean;\n specify_caption_opacity: boolean;\n caption_opacity: number;\n tv_show_superimpose: boolean;\n video_show_superimpose: boolean;\n tv_show_data_broadcasting: boolean;\n capture_copy_to_clipboard: boolean;\n capture_save_mode: 'Browser' | 'UploadServer' | 'Both';\n capture_caption_mode: 'VideoOnly' | 'CompositingCaption' | 'Both';\n sync_settings: boolean;\n comment_speed_rate: number;\n comment_font_size: number;\n close_comment_form_after_sending: boolean;\n muted_comment_keywords: IMutedCommentKeywords[];\n muted_niconico_user_ids: string[];\n mute_vulgar_comments: boolean;\n mute_abusive_discriminatory_prejudiced_comments: boolean;\n mute_big_size_comments: boolean;\n mute_fixed_comments: boolean;\n mute_colored_comments: boolean;\n mute_consecutive_same_characters_comments: boolean;\n fold_panel_after_sending_tweet: boolean;\n reset_hashtag_when_program_switches: boolean;\n auto_add_watching_channel_hashtag: boolean;\n twitter_active_tab: 'Search' | 'Timeline' | 'Capture';\n tweet_hashtag_position: 'Prepend' | 'Append' | 'PrependWithLineBreak' | 'AppendWithLineBreak';\n tweet_capture_watermark_position: 'None' | 'TopLeft' | 'TopRight' | 'BottomLeft' | 'BottomRight';\n}\n\n// 設定データのうち、同期対象の設定キー\n// サーバー側の app.schemas.ClientSettings と\n// client/src/services/Settings.ts 内の IClientSettings で定義されているものと同じ\nconst sync_settings_keys = [\n 'pinned_channel_ids',\n // showed_panel_last_time: 同期無効\n // selected_twitter_account_id: 同期無効\n 'saved_twitter_hashtags',\n 'panel_display_state',\n 'tv_panel_active_tab',\n 'video_panel_active_tab',\n 'tv_channel_selection_requires_alt_key',\n // tv_streaming_quality: 同期無効\n // tv_streaming_quality_cellular: 同期無効\n // tv_data_saver_mode: 同期無効\n // tv_data_saver_mode_cellular: 同期無効\n // tv_low_latency_mode: 同期無効\n // tv_low_latency_mode_cellular: 同期無効\n // video_streaming_quality: 同期無効\n // video_streaming_quality_cellular: 同期無効\n // video_data_saver_mode: 同期無効\n // video_data_saver_mode_cellular: 同期無効\n 'caption_font',\n 'always_border_caption_text',\n 'specify_caption_opacity',\n 'caption_opacity',\n 'tv_show_superimpose',\n 'video_show_superimpose',\n // tv_show_data_broadcasting: 同期無効\n // capture_copy_to_clipboard: 同期無効\n 'capture_save_mode',\n 'capture_caption_mode',\n // sync_settings: 同期無効\n 'comment_speed_rate',\n 'comment_font_size',\n 'close_comment_form_after_sending',\n 'muted_comment_keywords',\n 'muted_niconico_user_ids',\n 'mute_vulgar_comments',\n 'mute_abusive_discriminatory_prejudiced_comments',\n 'mute_big_size_comments',\n 'mute_fixed_comments',\n 'mute_colored_comments',\n 'mute_consecutive_same_characters_comments',\n 'fold_panel_after_sending_tweet',\n 'reset_hashtag_when_program_switches',\n 'auto_add_watching_channel_hashtag',\n 'twitter_active_tab',\n 'tweet_hashtag_position',\n 'tweet_capture_watermark_position',\n];\n\n// LocalStorage に保存される KonomiTV の設定データのデフォルト値\nconst default_settings: ILocalClientSettings = {\n\n // ***** 設定画面から直接変更できない設定値 *****\n\n // ピン留めしているチャンネルの ID (ex: gr011) が入るリスト\n pinned_channel_ids: [],\n // 前回視聴画面を開いた際にパネルが表示されていたかどうか (同期無効)\n showed_panel_last_time: true,\n // 現在ツイート対象として選択されている Twitter アカウントの ID (同期無効)\n selected_twitter_account_id: null,\n // 保存している Twitter のハッシュタグが入るリスト\n saved_twitter_hashtags: [],\n\n // ***** 設定 → 全般 *****\n\n // デフォルトのパネルの表示状態 (Default: 前回の状態を復元する)\n panel_display_state: 'RestorePreviousState',\n // テレビをみるときにデフォルトで表示されるパネルのタブ (Default: 番組情報タブ)\n tv_panel_active_tab: 'Program',\n // ビデオをみるときにデフォルトで表示されるパネルのタブ (Default: 番組情報タブ)\n video_panel_active_tab: 'RecordedProgram',\n // チャンネル選局のキーボードショートカットを Alt or Option + 数字キー/テンキーに変更する (Default: オフ)\n tv_channel_selection_requires_alt_key: false,\n\n // ***** 設定 → 画質 *****\n\n // テレビのデフォルトのストリーミング画質 (Wi-Fi 回線時) (Default: 1080p) (同期無効)\n tv_streaming_quality: '1080p',\n // テレビのデフォルトのストリーミング画質 (モバイル回線時) (Default: 480p) (同期無効)\n tv_streaming_quality_cellular: '480p',\n // テレビを通信節約モードで視聴する (Wi-Fi 回線時) (Default: オフ) (同期無効)\n tv_data_saver_mode: false,\n // テレビを通信節約モードで視聴する (モバイル回線時) (Default: オン) (同期無効)\n tv_data_saver_mode_cellular: true,\n // テレビを低遅延で視聴する (Wi-Fi 回線時) (Default: 低遅延で視聴する) (同期無効)\n tv_low_latency_mode: true,\n // テレビを低遅延で視聴する (モバイル回線時) (Default: 低遅延で視聴しない) (同期無効)\n tv_low_latency_mode_cellular: false,\n\n // ビデオのデフォルトのストリーミング画質 (Wi-Fi 回線時) (Default: 1080p) (同期無効)\n video_streaming_quality: '1080p',\n // ビデオのデフォルトのストリーミング画質 (モバイル回線時) (Default: 480p) (同期無効)\n video_streaming_quality_cellular: '480p',\n // ビデオを通信節約モードで視聴する (Wi-Fi 回線時) (Default: オフ) (同期無効)\n video_data_saver_mode: false,\n // ビデオを通信節約モードで視聴する (モバイル回線時) (Default: オン) (同期無効)\n video_data_saver_mode_cellular: true,\n\n // ***** 設定 → 字幕 *****\n\n // 字幕のフォント (Default: Windows TV 丸ゴシック)\n caption_font: 'Windows TV MaruGothic',\n // 字幕の文字を常に縁取って描画する (Default: 常に縁取る)\n always_border_caption_text: true,\n // 字幕の不透明度を指定する (Default: 指定しない)\n specify_caption_opacity: false,\n // 字幕の不透明度 (Default: 50%)\n caption_opacity: 0.5,\n // テレビをみるときに文字スーパーを表示する (Default: 表示する)\n tv_show_superimpose: true,\n // ビデオをみるときに文字スーパーを表示する (Default: 表示しない)\n video_show_superimpose: false,\n\n // ***** 設定 → データ放送 *****\n\n // テレビをみるときにデータ放送を表示する (Default: 表示する) (同期無効)\n tv_show_data_broadcasting: true,\n\n // ***** 設定 → キャプチャ *****\n\n // キャプチャをクリップボードにコピーする (Default: 無効) (同期無効)\n capture_copy_to_clipboard: false,\n // キャプチャの保存先 (Default: KonomiTV サーバーにアップロード)\n capture_save_mode: 'UploadServer',\n // 字幕が表示されているときのキャプチャの保存モード (Default: 映像のみのキャプチャと、字幕を合成したキャプチャを両方保存する)\n capture_caption_mode: 'Both',\n\n // ***** 設定 → アカウント *****\n\n // 設定を同期する (Default: 同期しない) (同期無効)\n sync_settings: false,\n\n // ***** 設定 → ニコニコ実況 *****\n\n // コメントの速さ (Default: 1倍)\n comment_speed_rate: 1,\n // コメントのフォントサイズ (Default: 34px)\n comment_font_size: 34,\n // コメント送信後にコメント入力フォームを閉じる (Default: オン)\n close_comment_form_after_sending: true,\n\n // ***** 設定 → ニコニコ実況 (ミュート設定) *****\n\n // ミュート済みのコメントのキーワードが入るリスト\n muted_comment_keywords: [],\n // ミュート済みのニコニコユーザー ID が入るリスト\n muted_niconico_user_ids: [],\n // 露骨な表現を含むコメントをミュートする (Default: ミュートする)\n mute_vulgar_comments: true,\n // 罵倒や誹謗中傷、差別的な表現、政治的に偏った表現を含むコメントをミュートする (Default: ミュートする)\n mute_abusive_discriminatory_prejudiced_comments: true,\n // 文字サイズが大きいコメントをミュートする (Default: ミュートする)\n mute_big_size_comments: true,\n // 映像の上下に固定表示されるコメントをミュートする (Default: ミュートしない)\n mute_fixed_comments: false,\n // 色付きのコメントをミュートする (Default: ミュートしない)\n mute_colored_comments: false,\n // 8文字以上同じ文字が連続しているコメントをミュートする (Default: ミュートしない)\n mute_consecutive_same_characters_comments: false,\n\n // ***** 設定 → Twitter *****\n\n // ツイート送信後にパネルを折りたたむ (Default: オフ)\n fold_panel_after_sending_tweet: false,\n // 番組が切り替わったときにハッシュタグフォームをリセットする (Default: オン)\n reset_hashtag_when_program_switches: true,\n // 視聴中のチャンネルに対応する局タグを自動で追加する (Default: オン)\n auto_add_watching_channel_hashtag: true,\n // デフォルトで表示される Twitter タブ内のタブ (Default: キャプチャタブ)\n twitter_active_tab: 'Capture',\n // ツイートにつけるハッシュタグの位置 (Default: ツイート本文の後に追加する)\n tweet_hashtag_position: 'Append',\n // ツイートするキャプチャに番組名の透かしを描画する (Default: 透かしを描画しない)\n tweet_capture_watermark_position: 'None',\n};\n\n/**\n * LocalStorage の KonomiTV-Settings キーから設定データを取得する\n * @returns 設定データ\n */\nexport function getLocalStorageSettings(): {[key: string]: any} {\n const settings = localStorage.getItem('KonomiTV-Settings');\n if (settings !== null) {\n return JSON.parse(settings);\n } else {\n // もし LocalStorage に KonomiTV-Settings キーがまだない場合、あらかじめデフォルトの設定値を保存しておく\n setLocalStorageSettings(default_settings);\n return default_settings;\n }\n}\n\n/**\n * LocalStorage の KonomiTV-Settings キーに設定データを保存する\n * @param settings 設定データ\n */\nexport function setLocalStorageSettings(settings: {[key: string]: any}): void {\n localStorage.setItem('KonomiTV-Settings', JSON.stringify(settings));\n}\n\n/**\n * 与えられた設定データを並び替えたり足りない設定キーを補完したり不要な設定キーを削除したりと整形して返す\n * @param settings 設定データ\n */\nfunction getNormalizedSettings(settings: {[key: string]: any}): ILocalClientSettings {\n\n // (名前が変わった、廃止されたなどの理由で) 現在の default_settings に存在しない設定キーを排除した上で並び替え\n // 並び替えられていないと設定データの比較がうまくいかない\n const new_settings: {[key: string]: any} = {};\n for (const default_settings_key of Object.keys(default_settings)) {\n if (default_settings_key in settings) {\n new_settings[default_settings_key] = settings[default_settings_key];\n } else {\n // 後のバージョンで追加されたなどの理由で現状の KonomiTV-Settings に存在しない設定キーの場合\n // その設定キーのデフォルト値を取得する\n new_settings[default_settings_key] = default_settings[default_settings_key];\n }\n }\n\n // この状態の新しい設定データを返す\n return new_settings as ILocalClientSettings;\n}\n\n/**\n * 設定データを共有するストア\n */\nconst useSettingsStore = defineStore('settings', {\n state: () => {\n\n // ref: https://www.vuemastery.com/blog/refresh-proof-your-pinia-stores/\n\n // LocalStorage から設定データを取得する\n const settings = getLocalStorageSettings();\n\n // (名前が変わった、廃止されたなどの理由で) 現在の default_settings に存在しない設定キーを排除した上で並び替え\n const new_settings = getNormalizedSettings(settings);\n\n // この状態の新しい設定データを LocalStorage に保存する\n setLocalStorageSettings(new_settings);\n\n // 設定データを Store の state のデフォルト値として返す\n return {\n settings: new_settings as ILocalClientSettings,\n };\n },\n actions: {\n\n /**\n * エクスポートした JSON ファイルから設定データをインポートする (既存の設定はすべて上書きされる)\n * @param file エクスポートした JSON ファイル\n * @returns インポートに成功したかどうか\n */\n async importClientSettings(file: File): Promise {\n\n // JSON ファイルを読み込む\n const settings_json = await file.text();\n\n // JSON ファイルをパースする\n let settings = {};\n try {\n settings = JSON.parse(settings_json);\n } catch (error) {\n return false;\n }\n\n // (名前が変わった、廃止されたなどの理由で) 現在の default_settings に存在しない設定キーを排除した上で並び替え\n const new_settings = getNormalizedSettings(settings);\n\n // この状態の新しい設定データを LocalStorage に保存し、Store の state に反映する\n // このとき、既存の設定データはすべて上書きされる\n setLocalStorageSettings(new_settings);\n this.settings = new_settings;\n\n // 設定データをサーバーに同期する\n await this.syncClientSettingsToServer();\n\n return true;\n },\n\n /**\n * 設定データを初期状態にリセットする\n */\n async resetClientSettings(): Promise {\n\n // デフォルトの設定に現在設定の同期がオンになっているかだけ反映した設定データ\n const default_settings_modified: ILocalClientSettings = {\n ...default_settings,\n sync_settings: this.settings.sync_settings,\n };\n\n // デフォルト値の設定データを LocalStorage に保存し、Store の state に反映する\n setLocalStorageSettings(default_settings_modified);\n this.settings = default_settings_modified;\n\n // 設定データをサーバーに同期する\n await this.syncClientSettingsToServer();\n },\n\n /**\n * 設定データのうち、サーバーへの同期対象の設定キーのみで構成されたオブジェクト (IClientSettings と一致する) を返す\n * @returns サーバーへの同期対象の設定キーのみで構成されたオブジェクト\n */\n getSyncableClientSettings(): IClientSettings {\n\n // 同期対象の設定キーのみで設定データをまとめ直す\n // sync_settings には同期対象外の設定は含まれない\n const sync_settings: {[key: string]: any} = {};\n for (const sync_settings_key of sync_settings_keys) {\n if (sync_settings_key in this.settings) {\n sync_settings[sync_settings_key] = this.settings[sync_settings_key];\n } else {\n // 後から追加された設定キーなどの理由で設定キーが現状の KonomiTV-Settings に存在しない場合\n // その設定キーのデフォルト値を取得する\n sync_settings[sync_settings_key] = default_settings[sync_settings_key];\n }\n }\n\n return sync_settings as IClientSettings;\n },\n\n /**\n * ログイン時かつ同期が有効な場合、サーバーに保存されている設定データをこのクライアントに同期する\n * @param force ログイン中なら同期が有効かに関わらず実行する (デフォルト: false)\n */\n async syncClientSettingsFromServer(force: boolean = false): Promise {\n\n // ログインしていない時、同期が無効なときは実行しない\n if (Utils.getAccessToken() === null || (this.settings.sync_settings === false && force === false)) {\n return;\n }\n\n // サーバーから設定データをダウンロード\n const settings_server = await Settings.fetchClientSettings();\n if (settings_server === null) {\n return; // 取得できなくても後続の処理には影響しないので、サイレントに失敗する\n }\n\n // クライアントの設定データをサーバーからの設定データで上書き\n // 両者の値に変更がある場合のみ上書きする\n // さもなければ、実際にはサーバー側で値が変更されていない場合でも定義されているストアに紐づく全てのコンポーネントの再描画が発生してしまう (?)\n for (const [settings_server_key, settings_server_value] of Object.entries(settings_server)) {\n if (JSON.stringify(this.settings[settings_server_key]) !== JSON.stringify(settings_server_value)) {\n this.settings[settings_server_key] = settings_server_value;\n }\n }\n },\n\n /**\n * ログイン時かつ同期が有効な場合、このクライアントの設定をサーバーに同期する\n * @param force ログイン中なら同期が有効かに関わらず実行する (デフォルト: false)\n */\n async syncClientSettingsToServer(force: boolean = false): Promise {\n\n // ログインしていない時、同期が無効なときは実行しない\n if (Utils.getAccessToken() === null || (this.settings.sync_settings === false && force === false)) {\n return;\n }\n\n // 同期対象の設定キーのみで設定データをまとめ直す\n const sync_settings = this.getSyncableClientSettings();\n\n // サーバーに設定データをアップロード\n await Settings.updateClientSettings(sync_settings);\n }\n }\n});\n\nexport default useSettingsStore;\n","\nimport { defineStore } from 'pinia';\n\nimport Message from '@/message';\nimport Users, { IUser, IUserUpdateRequest } from '@/services/Users';\nimport useSettingsStore from '@/stores/SettingsStore';\nimport Utils from '@/utils';\n\n\n/**\n * 現在ログイン中のユーザーアカウントの情報を共有するストア\n */\nconst useUserStore = defineStore('user', {\n state: () => ({\n\n // 現在ログイン中かどうか\n is_logged_in: false as boolean,\n\n // ログイン済みのユーザーの情報\n user: null as IUser | null,\n\n // ログイン済みのユーザーのアイコン画像の Blob URL\n user_icon_url: null as string | null,\n }),\n getters: {\n\n /**\n * ログイン済みのユーザーのニコニコアカウントのユーザーアイコンの URL (ニコニコアカウントと連携されている場合のみ)\n */\n user_niconico_icon_url(): string | null {\n if (this.user === null || this.user.niconico_user_id === null) {\n return null;\n }\n const user_id_slice = this.user.niconico_user_id.toString().slice(0, 4);\n return `https://secure-dcdn.cdn.nimg.jp/nicoaccount/usericon/${user_id_slice}/${this.user.niconico_user_id}.jpg`;\n }\n },\n actions: {\n\n /**\n * アカウントを作成する\n * @param username ユーザー名\n * @param password パスワード\n * @returns アカウント作成に成功した場合は true\n */\n async register(username: string, password: string): Promise {\n\n // アカウントを作成\n const result = await Users.createUser({username, password});\n if (result === null) {\n console.log('Register failed.');\n return false; // アカウント作成失敗 (エラーハンドリングは services 層で行われる)\n }\n\n // 作成したアカウントでログイン\n await this.login(username, password, true);\n console.log('Register successful.');\n Message.success('アカウントを作成しました。');\n return true;\n },\n\n /**\n * ログイン処理を行う\n * @param username ユーザー名\n * @param password パスワード\n * @param silent ログインしたことをメッセージで通知しない場合は true\n * @returns ログインに成功した場合は true\n */\n async login(username: string, password: string, silent: boolean = false): Promise {\n\n // アクセストークンを発行\n const access_token = await Users.createUserAccessToken(username, password);\n if (access_token === null) {\n console.log('Login failed.');\n this.logout(true);\n return false; // ログイン失敗 (エラーハンドリングは services 層で行われる)\n }\n\n // 取得したアクセストークンを保存\n console.log('Login successful.');\n Utils.saveAccessToken(access_token.access_token);\n this.is_logged_in = true;\n\n // ユーザーアカウントの情報を取得\n await this.fetchUser(true);\n\n if (silent === false) {\n Message.success('ログインしました。');\n }\n\n return true;\n },\n\n /**\n * ログアウト処理を行う\n * @param silent ログアウトしたことをメッセージで通知しない場合は true\n */\n logout(silent: boolean = false): void {\n\n // 設定の同期を無効化\n const settings_store = useSettingsStore();\n settings_store.settings.sync_settings = false;\n\n // ブラウザからアクセストークンを削除\n // これをもってログアウトしたことになる(それ以降の Axios のリクエストにはアクセストークンが含まれなくなる)\n Utils.deleteAccessToken();\n\n // 未ログイン状態に設定\n this.is_logged_in = false;\n this.user = null;\n this.user_icon_url = '';\n\n if (silent === false) {\n Message.success('ログアウトしました。');\n }\n },\n\n /**\n * 現在ログイン中のユーザーアカウントの情報を取得する\n * すでに取得済みの情報がある場合は API リクエストを行わずにそれを返す\n * @param force 強制的に API リクエストを行う場合は true\n * @returns ログイン中のユーザーアカウントの情報 or ログインしていない場合は null\n */\n async fetchUser(force: boolean = false): Promise {\n\n // LocalStorage にアクセストークンが保存されていない場合 (= 非ログイン状態) は常に null を返す\n if (Utils.getAccessToken() === null) {\n return null;\n }\n\n // すでにログイン済みのユーザーアカウントの情報がある場合はそれを返す\n // force が true の場合は無視される\n if (this.user !== null && force === false) {\n return this.user;\n }\n\n // ユーザーアカウントの情報を取得する\n const user = await Users.fetchUser();\n if (user === null) {\n // この時点で無効などの理由でアクセストークンが削除されている場合、ログアウトする\n if (Utils.getAccessToken() === null) {\n this.logout(true);\n }\n return null;\n }\n this.is_logged_in = true;\n this.user = user;\n\n // ユーザーアカウントのアイコン画像の Blob URL を取得する\n const user_icon_url = await Users.fetchUserIcon();\n if (user_icon_url === null) {\n return null;\n }\n this.user_icon_url = user_icon_url;\n\n return this.user;\n },\n\n /**\n * 現在ログイン中のユーザーアカウントの情報を更新する\n * @param user_update_request ユーザー名 or パスワード\n */\n async updateUser(user_update_request: IUserUpdateRequest): Promise {\n\n // ユーザーアカウントの情報を更新する\n await Users.updateUser(user_update_request);\n\n // ユーザーアカウントの情報を再取得する\n await this.fetchUser(true);\n\n if (user_update_request.username !== undefined) {\n Message.show('ユーザー名を更新しました。');\n } else if (user_update_request.password !== undefined) {\n Message.show('パスワードを更新しました。');\n }\n },\n\n /**\n * 現在ログイン中のユーザーアカウントのアイコン画像を更新する\n * @param icon アイコンの File オブジェクト\n */\n async updateUserIcon(icon: File): Promise {\n\n // ユーザーアカウントのアイコン画像を更新する\n await Users.updateUserIcon(icon);\n\n // ユーザーアカウントの情報を再取得する\n await this.fetchUser(true);\n\n Message.show('アイコン画像を更新しました。');\n },\n\n /**\n * 現在ログイン中のユーザーアカウントを削除する\n */\n async deleteUser(): Promise {\n\n // ユーザーアカウントを削除する\n await Users.deleteUser();\n\n // ログアウトする\n this.logout(true);\n\n Message.show('アカウントを削除しました。');\n }\n }\n});\n\nexport default useUserStore;\n","\nimport { Buffer } from 'buffer';\n\nimport useSettingsStore from '@/stores/SettingsStore';\n\n\n/**\n * コメント周りのユーティリティ\n */\nexport class CommentUtils {\n\n // 「露骨な表現を含むコメントをミュートする」のフィルタ正規表現\n private static readonly mute_vulgar_comments_pattern = new RegExp(Buffer.from('XChpXCl8XChVXCl8cHJwcnzvvZDvvZLvvZDvvZJ8U0VYfFPjgIdYfFPil69YfFPil4tYfFPil49YfO+8s++8pe+8uHzvvLPjgIfvvLh877yz4pev77y4fO+8s+KXi++8uHzvvLPil4/vvLh844Ki44OA44Or44OIfOOCouOCveOCs3zjgqLjg4rjgqV844Ki44OK44OrfOOCpOOCq+iHrXzjgqTjgY9844Kk44Oz44OdfOOBhuOCk+OBk3zjgqbjg7PjgrN844GG44KT44GhfOOCpuODs+ODgXzjgqjjgq3jg5t844GI44Gh44GI44GhfOOBiOOBo+OBoXzjgqjjg4Pjg4F844GI44Gj44KNfOOCqOODg+ODrXxe44GI44KNfOOCqOODrXzlt6Xlj6N844Kq44Kr44K6fOOBiuOBleOCj+OCiuOBvuOCk3zjgYrjgZfjgaPjgZN844Kq44K344OD44KzfOOCquODg+OCteODs3zjgYrjgaPjgbHjgYR844Kq44OD44OR44KkfOOCquODiuODi+ODvHzjgYrjgarjgbt844Kq44OK44ObfOOBiuOBseOBhHzjgqrjg5HjgqR844GK44KB44GTfOOCquODoeOCs3zjgYpwfOOBiu+9kHzjgqrjg5Xjg5HjgrN844Ks44OB44Og44OBfOOCreODoeOCu+OCr3zjgq3jg7Pjgr/jg55844GP44Gx44GCfOOBj+OBseOBgXzjgq/jg6rjg4jjg6rjgrl844Kv44Oz44OLfOOBlOOBj+OBlOOBj+OBlOOBj+OBlOOBj3zjgrPjg7Pjg4njg7zjg6B844GR44Gk44GC44GqfOOCseODhOOCouODinzjgrHjg4TnqbR844K244O844Oh44OzfOOCt+OCs3zjgZfjgZPjgZfjgZN844K344Kz44K344KzfOOBmeOBkeOBmeOBkXzjgZvjgYTjgYjjgY1844Gb44GE44KKfOOBm+ODvOOCinzjgZnjgYXjgYXjgYV844GZ44GG44GG44GGfOOCu+OCr+ODreOCuXzjgrvjg4Pjgq/jgrl844K744OV44OsfOOBoeOBo+OBseOBhHzjgaHjgaPjg5HjgqR844OB44OD44OR44KkfOOBoeOCk+OBk3zjgaHjgIfjgZN844Gh4pev44GTfOOBoeKXi+OBk3zjgaHil4/jgZN844OB44Oz44KzfOODgeOAh+OCs3zjg4Hil6/jgrN844OB4peL44KzfOODgeKXj+OCs3zjgaHjgpPjgb1844Gh44CH44G9fOOBoeKXr+OBvXzjgaHil4vjgb1844Gh4peP44G9fOODgeODs+ODnXzjg4HjgIfjg51844OB4pev44OdfOODgeKXi+ODnXzjg4Hil4/jg51844Gh44KT44Gh44KTfOODgeODs+ODgeODs3zjgabjgYPjgpPjgabjgYPjgpN844OG44Kj44Oz44OG44Kj44OzfOOBpuOBg+OCk+OBvXzjg4bjgqPjg7Pjg51844OH44Kr44GEfOODh+OCq+ODgeODs3zjg4fjg6rjg5jjg6t844Gq44GL44Gg44GXfOOBquOBi+OAh+OBl3zjgarjgYvil6/jgZd844Gq44GL4peL44GXfOOBquOBi+KXj+OBl3zohLHjgZJ844OM44GEfOODjOOBi3zjg4zjgqt844OM44GNfOODjOOCrXzjg4zjgY9844OM44KvfOODjOOBkXzjg4zjgrF844OM44GTfOODjOOCs3zjgbHjgYTjgoLjgb9844Gx44GE44Ga44KKfOODkeODs+ODhuOCo3zjg5HjgqTjgrrjg6p844OR44Kk44OR44OzfOODkOOCpOODlnzjg5Hjg5HmtLt844OP44OhfOODlOOCueODiOODs3zjg5Pjg4Pjg4F844G144GG44O7fOOBteOBhuKApnzjgbXjgYV8776M772pfOOBteOBj+OCieOBv3zjgbXjgY/jgonjgpPjgad844G644Gj44GffOOBuuOCjeOBuuOCjXzjg5rjg63jg5rjg618776N776f776b776N776f776bfOODleOCp+ODqXzjgbvjgYbjgZHjgYR844G844Gj44GNfOODneODq+ODjnzjgbzjgo3jgpN844Oc44Ot44OzfO++ju++nu++m+++nXzjgb3jgo3jgop844Od44Ot44OqfO++ju++n+++m+++mHzjg57jg7PjgY3jgaR844Oe44Oz44Kt44OEfOOBvuOCk+OBk3zjgb7jgIfjgZN844G+4pev44GTfOOBvuKXi+OBk3zjgb7il4/jgZN844Oe44Oz44KzfOODnuOAh+OCs3zjg57il6/jgrN844Oe4peL44KzfOODnuKXj+OCs3zjgb7jgpPjgZXjgpN844KC44Gj44GT44KKfOODouODg+OCs+ODqnzjgoLjgb/jgoLjgb9844Oi44Of44Oi44OffOODpOOBo+OBn3zjg6TjgaPjgaZ844Ok44KJfOOChOOCieOBm+OCjXzjg6Tjgop844Ok44OqfOODpOOCi3zjg6Tjgox844Ok44KNfOODqeODluODm3zjg6/jg6zjg6F85oSb5rayfOWSpXzllph86Zmw5qC4fOmZsOiMjnzpmbDllId85rerfOmaoOavm3zpmbDmr5t855Sj44KB44KLfOWls+OBruWtkOOBruaXpXzmsZrjgaPjgZXjgpN85aemfOmojuS5l+S9jXzlt6jkubN85beo5qC5fOW3qOWwu3zlt6jjg4Hjg7N85beo54+NfOmHkeeOiXzmnIjntYx85b6M6IOM5L2NfOWtkOeornzlrZDkvZzjgop85bCE57K+fOa9ruWQuXzkv6HogIV857K+5rayfOmAj+OBkXzmgKfkuqR857K+5a2QfOato+W4uOS9jXzmgKflvrR85oCn55qEfOeUn+eQhnzntbblgKt85a+45q2i44KBfOe0oOadkHzmirHjgYR85oqx44GLfOaKseOBjXzmirHjgY985oqx44GRfOaKseOBk3zkvZPmtrJ85Lmz6aaWfOaBpeWeonznj43mo5J85Lit44Gg44GXfOS4reWHuuOBl3zlsL985oqc44GEfOaKnOOBkeOBquOBhHzmipzjgZHjgot85oqc44GR44KMfOaOkuS+v3zniq/nj4186Iao44KJfOWMheiMjnzli4Potbd86IacfOaRqee+hXzprZTnvoV85o+J44G+fOaPieOBv3zmj4njgoB85o+J44KBfOa8q+a5lnzjgIfvvZ584pev772efOKXi++9nnzil4/vvZ5844CHfnzil69+fOKXi3584pePfnzjgIfjg4Pjgq/jgrl84pev44OD44Kv44K5fOKXi+ODg+OCr+OCuXzil4/jg4Pjgq/jgrk=', 'base64').toString());\n\n // 「ネガティブな表現、差別的な表現、政治的に偏った表現を含むコメントをミュートする」のフィルタ正規表現\n private static readonly mute_abusive_discriminatory_prejudiced_comments_pattern = new RegExp(Buffer.from('44CCfOOCouODi+ODl+ODrOOBj+OCk3zjgqLjg4vjg5fjg6zlkJt844Ki44K544OafOOBguOBu3zjgqLjg5t86Zi/5ZGGfOOCpOOCq+OCjHzjgYTjgb7jgYTjgaF844Kk44Oe44Kk44OBfOOCpOODqeOBpOOBj3zjgqbjgrh844Km44O844OofOOCpuODqHzjgqbjg6jjgq9844Km44OyfOOBjeOCguOBhHzjgq3jg6LjgqR844Kt44Oi44GEfOOCrS/jg6Av44OBfOOCrOOCpOOCuHzvvbbvvp7vvbLvvbzvvp5844Ks44Kk44K444OzfOOCrOOCrXzjgqvjgrl844Kt44OD44K6fOOBjeOBoeOBjOOBhHzjgq3jg4HjgqzjgqR844Kt44Og44OBfOOBjeOCieOBhHzjgq3jg6njgqR85auM44GEfOOCr+OCvXzns55844K344OKfOOCueODhuODnnzjgaTjgb7jgonjgap844Gk44G+44KJ44KTfOODgeODp+ODg+ODkeODqnzjg4Hjg6fjg7N85Y2D44On44OzfOOBpOOCk+OBvHzjg4Tjg7Pjg5x844ON44OI44Km44OofOOBq+OBoOOBguOBgnzjg4vjg4B85LqM44OAfO++hu++gO++nnzjg5Hjg7zjg6h844OR44OofOODkeODqOOCr3xe44G044O8JHxe44OU44O8JHzjgbbjgaPjgZV844OW44OD44K1fOOBtuOBleOBhHzjg5bjgrXjgqR844OY44Kk44OI44K544OU44O844OBfOODm+ODonzjgb7jgazjgZF844Oh44Kv44OpfOODkOOCq3zjg6DjgqvjgaTjgY986I2S44KJ44GXfOm6u+eUn+OCu+ODoeODs+ODiHzlj7Pnv7x85rGa54mpfOaFsOWuieWppnzlrrPlhZB85aSW5a2XfOWnpuWbvXzpn5Plm7186Z+T5LitfOmfk+aXpXzln7rlnLDlpJZ85rCX54uC44GEfOawl+mBleOBhHzliIfjgaPjgZ985YiH44Gj44GmfOawl+aMgeOBoeaCqnzoh6185bGRfOWbveS6pOaWree1tnzlm73nsY185Zu944Gr5biw44KMfOWbveOBuOW4sOOCjHzlt6bnv7x85q66fOmgg3zpoIPjgZd86aCD44GZfOmgg+OBm3xe5ZyofOWcqOaXpXzlnKjml6XnibnmqKl85Zyo54m55LyafOWPguaUv+aoqXznsr7npZ7nlbDluLjogIV85q2744GtfOawj+OBrXzvvoDvvot85q255YyVfOatueODknzmrbvliJF844K344Kx44KkfOOBl+OBkeOBhHzlpLHpgJ986Zqc5a6zfOWkp+adseS6nHzmlq3kuqR86YCa5ZCNfOS4remfk3zmnJ3prq585b6055So5belfOWjunzlo7d85aO8fOaXpemfk3zml6XluJ1857KY552AfOWNiuWztnzlj43ml6V85Y+N5rCR5pePfOmmrOm5v3znmbrni4J855m66YGUfOactHzlo7Llm7185LiN5b+rfOS9teWQiHzplpPmipzjgZF854Sh6IO9fOaWh+WPpXzpnZblm7186YeO6YOO', 'base64').toString());\n\n // 「8文字以上同じ文字が連続しているコメントをミュートする」のフィルタ正規表現\n private static readonly mute_consecutive_same_characters_comments_pattern = /(.)\\1{7,}/;\n\n // ニコ生の特殊コマンド付きコメントのフィルタ正規表現\n private static readonly special_command_comments_pattern = /\\/[a-z]+ /;\n\n // 迷惑な統計コメントのフィルタ正規表現\n private static readonly annoying_statistical_comments_pattern = /最高\\d+米\\/|計\\d+ID|総\\d+米/;\n\n // ニコニコの色指定を 16 進数カラーコードに置換するテーブル\n private static readonly color_table: {[key: string]: string} = {\n 'white': '#FFEAEA',\n 'red': '#F02840',\n 'pink': '#FD7E80',\n 'orange': '#FDA708',\n 'yellow': '#FFE133',\n 'green': '#64DD17',\n 'cyan': '#00D4F5',\n 'blue': '#4763FF',\n 'purple': '#D500F9',\n 'black': '#1E1310',\n 'white2': '#CCCC99',\n 'niconicowhite': '#CCCC99',\n 'red2': '#CC0033',\n 'truered': '#CC0033',\n 'pink2': '#FF33CC',\n 'orange2': '#FF6600',\n 'passionorange': '#FF6600',\n 'yellow2': '#999900',\n 'madyellow': '#999900',\n 'green2': '#00CC66',\n 'elementalgreen': '#00CC66',\n 'cyan2': '#00CCCC',\n 'blue2': '#3399FF',\n 'marineblue': '#3399FF',\n 'purple2': '#6633CC',\n 'nobleviolet': '#6633CC',\n 'black2': '#666666',\n };\n\n\n /**\n * ニコニコの色指定を 16 進数カラーコードに置換する\n * @param color ニコニコの色指定\n * @return 16 進数カラーコード\n */\n static getCommentColor(color: string): string | null {\n return this.color_table[color] || null;\n }\n\n\n /**\n * ニコニコの位置指定を DPlayer の位置指定に置換する\n * @param position ニコニコの位置指定\n * @return DPlayer の位置指定\n */\n static getCommentPosition(position: string): 'top' | 'right' | 'bottom' | null {\n switch (position) {\n case 'ue':\n return 'top';\n case 'naka':\n return 'right';\n case 'shita':\n return 'bottom';\n default:\n return null;\n }\n }\n\n\n /**\n * ニコニコのサイズ指定を DPlayer のサイズ指定に置換する\n * @param size ニコニコのサイズ指定\n * @returns DPlayer のサイズ指定\n */\n static getCommentSize(size: string): 'big' | 'medium' | 'small' | null {\n switch (size) {\n case 'big':\n case 'medium':\n case 'small':\n return size;\n default:\n return null;\n }\n }\n\n\n /**\n * ニコニコのコメントコマンドを解析する\n * @param comment_mail ニコニコのコメントコマンド\n * @returns コメントの色、位置、サイズ\n */\n static parseCommentCommand(comment_mail: string | null | undefined): {\n color: string;\n position: 'top' | 'right' | 'bottom';\n size: 'big' | 'medium' | 'small';\n } {\n let color = '#FFEAEA';\n let position: 'top' | 'right' | 'bottom' = 'right';\n let size: 'big' | 'medium' | 'small' = 'medium';\n\n if (comment_mail !== undefined && comment_mail !== null) {\n const commands = comment_mail.replace('184', '').split(' ');\n\n for (const command of commands) {\n const parsed_color = CommentUtils.getCommentColor(command);\n const parsed_position = CommentUtils.getCommentPosition(command);\n const parsed_size = CommentUtils.getCommentSize(command);\n if (parsed_color !== null) {\n color = parsed_color;\n }\n if (parsed_position !== null) {\n position = parsed_position;\n }\n if (parsed_size !== null) {\n size = parsed_size;\n }\n }\n }\n\n return {color, position, size};\n }\n\n\n /**\n * ミュート対象のコメントかどうかを判断する\n * @param comment コメント\n * @param user_id コメントを投稿したユーザーの ID\n * @param color コメントの色\n * @param position コメントの位置\n * @param size コメントのサイズ\n * @return ミュート対象のコメントなら true を返す\n */\n static isMutedComment(\n comment: string,\n user_id: string,\n color?: string,\n position?: 'top' | 'right' | 'bottom',\n size?: 'big' | 'medium' | 'small',\n ): boolean {\n\n const settings_store = useSettingsStore();\n\n // ユーザー ID ミュート処理\n if (settings_store.settings.muted_niconico_user_ids.includes(user_id)) {\n return true;\n }\n\n // ニコ生の特殊コマンド付きコメント (/nicoad, /emotion など) を一括で弾く\n if (CommentUtils.special_command_comments_pattern.test(comment)) {\n return true;\n }\n\n // 「映像の上下に固定表示されるコメントをミュートする」がオンの場合\n // コメントの位置が top (上固定) もしくは bottom (下固定) のときは弾く\n if (settings_store.settings.mute_fixed_comments === true && (position === 'top' || position === 'bottom')) {\n console.log('[CommentUtils] Muted comment (fixed_comments): ' + comment);\n return true;\n }\n\n // 「色付きのコメントをミュートする」がオンの場合\n // コメントの色が #FFEAEA (デフォルト) 以外のときは弾く\n if (settings_store.settings.mute_colored_comments === true && color !== '#FFEAEA') {\n console.log('[CommentUtils] Muted comment (colored_comments): ' + comment);\n return true;\n }\n\n // 「文字サイズが大きいコメントをミュートする」がオンの場合\n // コメントのサイズが big のときは弾く\n if (settings_store.settings.mute_big_size_comments === true && size === 'big') {\n console.log('[CommentUtils] Muted comment (big_size_comments): ' + comment);\n return true;\n }\n\n // 「露骨な表現を含むコメントをミュートする」がオンの場合\n if ((settings_store.settings.mute_vulgar_comments === true) &&\n (CommentUtils.mute_vulgar_comments_pattern.test(comment))) {\n console.log('[CommentUtils] Muted comment (vulgar_comments): ' + comment);\n return true;\n }\n\n // 「ネガティブな表現、差別的な表現、政治的に偏った表現を含むコメントをミュートする」がオンの場合\n if ((settings_store.settings.mute_abusive_discriminatory_prejudiced_comments === true) &&\n (CommentUtils.mute_abusive_discriminatory_prejudiced_comments_pattern.test(comment))) {\n console.log('[CommentUtils] Muted comment (abusive_discriminatory_prejudiced_comments): ' + comment);\n return true;\n }\n\n // 「8文字以上同じ文字が連続しているコメントをミュートする」がオンの場合\n if ((settings_store.settings.mute_consecutive_same_characters_comments === true &&\n (CommentUtils.mute_consecutive_same_characters_comments_pattern.test(comment)))) {\n console.log('[CommentUtils] Muted comment (consecutive_same_characters_comments): ' + comment);\n return true;\n }\n\n // キーワードミュート処理\n for (const muted_comment_keyword of settings_store.settings.muted_comment_keywords) {\n if (muted_comment_keyword.pattern === '') continue; // キーワードが空文字のときは無視\n switch (muted_comment_keyword.match) {\n // 部分一致\n case 'partial':\n if (comment.includes(muted_comment_keyword.pattern)) {\n console.log('[CommentUtils] Muted comment (partial): ' + comment);\n return true;\n }\n break;\n // 前方一致\n case 'forward':\n if (comment.startsWith(muted_comment_keyword.pattern)) {\n console.log('[CommentUtils] Muted comment (forward): ' + comment);\n return true;\n }\n break;\n // 後方一致\n case 'backward':\n if (comment.endsWith(muted_comment_keyword.pattern)) {\n console.log('[CommentUtils] Muted comment (backward): ' + comment);\n return true;\n }\n break;\n // 完全一致\n case 'exact':\n if (comment === muted_comment_keyword.pattern) {\n console.log('[CommentUtils] Muted comment (exact): ' + comment);\n return true;\n }\n break;\n // 正規表現\n case 'regex':\n if (new RegExp(muted_comment_keyword.pattern).test(comment)) {\n console.log('[CommentUtils] Muted comment (regex): ' + comment);\n return true;\n }\n break;\n }\n }\n\n // 「NHK→計1447ID/内プレ425ID/総33372米 ◆ Eテレ → 計73ID/内プレ19ID/総941米」のような\n // 迷惑コメントを一括で弾く (あえてミュートしたくないユースケースが思い浮かばないのでデフォルトで弾く)\n // 一番最後なのは、この迷惑コメント自体の頻度が低いため\n if (CommentUtils.annoying_statistical_comments_pattern.test(comment)) {\n return true;\n }\n\n // いずれのミュート処理にも引っかからなかった (ミュート対象ではない)\n return false;\n }\n\n\n /**\n * ミュート済みキーワードリストに追加する (完全一致)\n * @param comment コメント文字列\n */\n static addMutedKeywords(comment: string): void {\n\n // すでにまったく同じミュート済みキーワードが追加済みの場合は何もしない\n const settings_store = useSettingsStore();\n for (const muted_comment_keyword of settings_store.settings.muted_comment_keywords) {\n if (muted_comment_keyword.match === 'exact' && muted_comment_keyword.pattern === comment) {\n return;\n }\n }\n\n // ミュート済みキーワードリストに追加\n settings_store.settings.muted_comment_keywords.push({\n match: 'exact',\n pattern: comment,\n });\n }\n\n\n /**\n * ミュート済みニコニコユーザー ID リストに追加する\n * @param user_id ニコニコユーザー ID\n */\n static addMutedNiconicoUserIDs(user_id: string): void {\n\n // すでに追加済みの場合は何もしない\n const settings_store = useSettingsStore();\n if (settings_store.settings.muted_niconico_user_ids.includes(user_id)) {\n return;\n }\n\n // ミュート済みニコニコユーザー ID リストに追加\n settings_store.settings.muted_niconico_user_ids.push(user_id);\n }\n}\n","\n/**\n * 共通ユーティリティ\n */\nexport default class Utils {\n\n // バージョン情報\n // ビルド時の環境変数 (vue.config.js に記載) から取得\n static readonly version: string = process.env.VUE_APP_VERSION as string;\n\n // バックエンドの API のベース URL\n // Worker からも参照できるように self.location を使う\n static readonly api_base_url = (() => {\n if (process.env.NODE_ENV === 'development') {\n // デバッグ時はポートを 7000 に強制する\n return `${self.location.protocol}//${self.location.hostname}:7000/api`;\n } else {\n // ビルド後は同じポートを使う\n return `${self.location.protocol}//${self.location.host}/api`;\n }\n })();\n\n\n /**\n * アクセストークンを LocalStorage から取得する\n * @returns JWT アクセストークン(ログインしていない場合は null が返る)\n */\n static getAccessToken(): string | null {\n\n // LocalStorage の取得結果をそのまま返す\n // LocalStorage.getItem() はキーが存在しなければ(=ログインしていなければ)null を返す\n return localStorage.getItem('KonomiTV-AccessToken');\n }\n\n\n /**\n * アクセストークンを LocalStorage に保存する\n * @param access_token 発行された JWT アクセストークン\n */\n static saveAccessToken(access_token: string): void {\n\n // そのまま LocalStorage に保存\n localStorage.setItem('KonomiTV-AccessToken', access_token);\n }\n\n\n /**\n * アクセストークンを LocalStorage から削除する\n * アクセストークンを削除することで、ログアウト相当になる\n */\n static deleteAccessToken(): void {\n\n // LocalStorage に KonomiTV-AccessToken キーが存在しない\n if (localStorage.getItem('KonomiTV-AccessToken') === null) return;\n\n // KonomiTV-AccessToken キーを削除\n localStorage.removeItem('KonomiTV-AccessToken');\n }\n\n\n /**\n * ブラウザが実行されている OS に応じて、\"Alt\" または \"Option\" を返す\n * キーボードショートカットのコンビネーションキーの説明を OS によって分けるために使う\n * @returns ブラウザが実行されている OS が macOS なら Option を、それ以外なら Alt を返す\n */\n static AltOrOption(): 'Alt' | 'Option' {\n return Utils.isMacOS() ? 'Option' : 'Alt';\n }\n\n\n /**\n * ブラウザが実行されている OS に応じて、\"Ctrl\" または \"Cmd\" を返す\n * キーボードショートカットのコンビネーションキーの説明を OS によって分けるために使う\n * @returns ブラウザが実行されている OS が macOS なら Cmd を、それ以外なら Ctrl を返す\n */\n static CtrlOrCmd(): 'Ctrl' | 'Cmd' {\n return Utils.isMacOS() ? 'Cmd' : 'Ctrl';\n }\n\n\n /**\n * 再帰的にオブジェクトを凍結する\n * ref: https://unyacat.net/2021/01/20/vue-freeze-faster/\n * @param object 凍結するオブジェクト\n * @returns 再帰的に凍結されたオブジェクト\n */\n static deepObjectFreeze(object: T): T {\n Object.keys(object).forEach(prop => {\n if (typeof object[prop] === 'object' && !Object.isFrozen(object[prop])) Utils.deepObjectFreeze(object[prop]);\n });\n return Object.freeze(object);\n }\n\n\n /**\n * Blob に格納されているデータをブラウザにダウンロードさせる\n * @param blob Blob オブジェクト\n * @param filename 保存するファイル名\n */\n static downloadBlobData(blob: Blob, filename: string): void {\n\n // Blob URL を発行\n const blob_url = URL.createObjectURL(blob);\n\n // 画像をダウンロード\n const link = document.createElement('a');\n link.download = filename;\n link.href = blob_url;\n link.click();\n\n // Blob URL を破棄\n URL.revokeObjectURL(blob_url);\n }\n\n\n /**\n * innerHTML しても問題ないように HTML の特殊文字をエスケープする\n * PHP の htmlspecialchars() と似たようなもの\n * @param content HTML エスケープされてないテキスト\n * @returns HTML エスケープされたテキスト\n */\n static escapeHTML(content: string): string {\n\n // HTML エスケープが必要な文字\n // ref: https://www.php.net/manual/ja/function.htmlspecialchars.php\n const html_escape_table = {\n '&': '&',\n '\"': '"',\n '\\'': ''',\n '<': '<',\n '>': '>',\n };\n\n // ref: https://qiita.com/noriaki/items/4bfef8d7cf85dc1035b3\n return content.replace(/[&\"'<>]/g, (match) => {\n return html_escape_table[match];\n });\n }\n\n\n /**\n * OAuth 連携時のポップアップを画面中央に表示するための windowFeatures 文字列を取得する\n * ref: https://qiita.com/catatsuy/items/babce8726ea78f5d25b1\n * @returns window.open() で使う windowFeatures 文字列\n */\n static getWindowFeatures(): string {\n\n // ポップアップウインドウのサイズ\n const popupSizeWidth = 650;\n const popupSizeHeight = window.screen.height >= 800 ? 800 : window.screen.height - 100;\n\n // ポップアップウインドウの位置\n const posTop = (window.screen.height - popupSizeHeight) / 2;\n const posLeft = (window.screen.width - popupSizeWidth) / 2;\n\n return `toolbar=0,status=0,top=${posTop},left=${posLeft},width=${popupSizeWidth},height=${popupSizeHeight},modal=yes,alwaysRaised=yes`;\n }\n\n\n /**\n * 現在フォーカスを持っている要素に指定された CSS クラスが付与されているか\n * @param class_name 存在を確認する CSS クラス名\n * @returns document.activeElement が class_name で指定したクラスを持っているかどうか\n */\n static hasActiveElementClass(class_name: string): boolean {\n if (document.activeElement === null) return false;\n return document.activeElement.classList.contains(class_name);\n }\n\n\n /**\n * ブラウザが Firefox かどうか\n * @returns ブラウザが Firefox なら true を返す\n */\n static isFirefox(): boolean {\n return /Firefox/i.test(navigator.userAgent);\n }\n\n\n /**\n * デバイスの OS が macOS かどうか\n * キーボードショートカットで使うキーを OS によって分けるために使う\n * @returns デバイスの OS が macOS なら true を返す\n */\n static isMacOS(): boolean {\n // iPhone・iPad で純正キーボードを接続した場合も一応想定して、iPhone・iPad も含める\n return /iPhone|iPad|Macintosh/i.test(navigator.userAgent);\n }\n\n\n /**\n * ブラウザが Safari かどうか\n * @returns ブラウザが Safari なら true を返す\n */\n static isSafari(): boolean {\n return /Safari/i.test(navigator.userAgent) && !/Chrome/i.test(navigator.userAgent);\n }\n\n\n /**\n * モバイルデバイス (スマホ・タブレット) かどうか\n * @returns モバイルデバイス (スマホ・タブレット) なら true を返す\n */\n static isMobileDevice(): boolean {\n // Macintosh が入っているのは、iPadOS は既定でデスクトップ表示モードが有効になっていて、UA だけでは Mac と判別できないため\n // Mac にタッチパネル付きの機種は存在しないので、'ontouchend' in document で判定できる\n // Windows タブレットはマウスやキーボードを付けたら普通の PC になるケースもあって判断が非常に難しく、需要も少ないため除外している\n return /iPhone|iPad|iPod|Macintosh|Android|Mobile/i.test(navigator.userAgent) && 'ontouchend' in document;\n }\n\n\n /**\n * 表示画面がスマホ横画面かどうか\n * @returns スマホ横画面なら true を返す\n */\n static isSmartphoneHorizontal(): boolean {\n return window.matchMedia('(max-width: 1000px) and (max-height: 425px)').matches;\n }\n\n\n /**\n * 表示画面がスマホ縦画面かどうか\n * @returns スマホ縦画面なら true を返す\n */\n static isSmartphoneVertical(): boolean {\n return window.matchMedia('(max-width: 600px) and (min-height: 375.01px)').matches;\n }\n\n\n /**\n * 表示画面がタブレット横画面かどうか\n * @returns タブレット横画面なら true を返す\n */\n static isTabletHorizontal(): boolean {\n return window.matchMedia('(max-width: 1264px) and (max-height: 850px)').matches;\n }\n\n\n /**\n * 表示画面がタブレット縦画面かどうか\n * @returns タブレット縦画面なら true を返す\n */\n static isTabletVertical(): boolean {\n return window.matchMedia('(max-width: 850px) and (min-height: 850.01px)').matches;\n }\n\n\n /**\n * 表示端末がタッチデバイスかどうか (Utils.isMobileDevice() とは異なり、モバイルデバイスかどうかは問わない)\n * おそらく Windows タブレットや Chromebook なども含まれる\n * @returns タッチデバイスなら true を返す\n */\n static isTouchDevice(): boolean {\n return window.matchMedia('(hover: none)').matches;\n }\n\n\n /**\n * 任意の桁で切り捨てする\n * ref: https://qiita.com/nagito25/items/0293bc317067d9e6c560#comment-87f0855f388953843037\n * @param value 切り捨てする数値\n * @param base どの桁で切り捨てするか (-1 → 10の位 / 3 → 小数第3位)\n * @return 切り捨てした値\n */\n static mathFloor(value: number, base: number = 0): number {\n return Math.floor(value * (10**base)) / (10**base);\n }\n\n\n /**\n * async/await でスリープ的なもの\n * @param seconds 待機する秒数 (ミリ秒単位ではないので注意)\n * @returns Promise を返すので、await sleep(1); のように使う\n */\n static async sleep(seconds: number): Promise {\n return await new Promise(resolve => setTimeout(resolve, seconds * 1000));\n }\n\n\n /**\n * 現在時刻の UNIX タイムスタンプ (秒単位) を取得する (デバッグ用)\n * @returns 現在時刻の UNIX タイムスタンプ (秒単位)\n */\n static time(): number {\n return Date.now() / 1000;\n }\n\n\n /**\n * 指定された値の型の名前を取得する\n * ref: https://qiita.com/amamamaou/items/ef0b797156b324bb4ef3\n * @returns 指定された値の型の名前\n */\n static typeof(value: any): string {\n return Object.prototype.toString.call(value).slice(8, -1).toLowerCase();\n }\n\n\n /**\n * 文字列中に含まれる URL をリンクの HTML に置き換える\n * @param text 置換対象の文字列\n * @returns URL をリンクに置換した文字列\n */\n static URLtoLink(text: string): string {\n\n // HTML の特殊文字で表示がバグらないように、事前に HTML エスケープしておく\n text = Utils.escapeHTML(text);\n\n // ref: https://www.softel.co.jp/blogs/tech/archives/6099\n const pattern = /(https?:\\/\\/[-A-Z0-9+&@#/%?=~_|!:,.;]*[-A-Z0-9+&@#/%=~_|])/ig;\n return text.replace(pattern, '$1');\n }\n\n\n /**\n * デバイスがオンラインになるまで待機する\n * @returns Promise を返すので、await waitUntilOnline(); のように使う\n */\n static async waitUntilOnline(): Promise {\n return await new Promise(resolve => {\n window.addEventListener('online', () => resolve());\n });\n }\n}\n","'use strict';\n\nvar GetIntrinsic = require('get-intrinsic');\n\nvar callBind = require('./');\n\nvar $indexOf = callBind(GetIntrinsic('String.prototype.indexOf'));\n\nmodule.exports = function callBoundIntrinsic(name, allowMissing) {\n\tvar intrinsic = GetIntrinsic(name, !!allowMissing);\n\tif (typeof intrinsic === 'function' && $indexOf(name, '.prototype.') > -1) {\n\t\treturn callBind(intrinsic);\n\t}\n\treturn intrinsic;\n};\n","'use strict';\n\nvar bind = require('function-bind');\nvar GetIntrinsic = require('get-intrinsic');\nvar setFunctionLength = require('set-function-length');\n\nvar $TypeError = GetIntrinsic('%TypeError%');\nvar $apply = GetIntrinsic('%Function.prototype.apply%');\nvar $call = GetIntrinsic('%Function.prototype.call%');\nvar $reflectApply = GetIntrinsic('%Reflect.apply%', true) || bind.call($call, $apply);\n\nvar $defineProperty = GetIntrinsic('%Object.defineProperty%', true);\nvar $max = GetIntrinsic('%Math.max%');\n\nif ($defineProperty) {\n\ttry {\n\t\t$defineProperty({}, 'a', { value: 1 });\n\t} catch (e) {\n\t\t// IE 8 has a broken defineProperty\n\t\t$defineProperty = null;\n\t}\n}\n\nmodule.exports = function callBind(originalFunction) {\n\tif (typeof originalFunction !== 'function') {\n\t\tthrow new $TypeError('a function is required');\n\t}\n\tvar func = $reflectApply(bind, $call, arguments);\n\treturn setFunctionLength(\n\t\tfunc,\n\t\t1 + $max(0, originalFunction.length - (arguments.length - 1)),\n\t\ttrue\n\t);\n};\n\nvar applyBind = function applyBind() {\n\treturn $reflectApply(bind, $apply, arguments);\n};\n\nif ($defineProperty) {\n\t$defineProperty(module.exports, 'apply', { value: applyBind });\n} else {\n\tmodule.exports.apply = applyBind;\n}\n","!function(t,e){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=e():\"function\"==typeof define&&define.amd?define(e):(t=\"undefined\"!=typeof globalThis?globalThis:t||self).dayjs=e()}(this,(function(){\"use strict\";var t=1e3,e=6e4,n=36e5,r=\"millisecond\",i=\"second\",s=\"minute\",u=\"hour\",a=\"day\",o=\"week\",c=\"month\",f=\"quarter\",h=\"year\",d=\"date\",l=\"Invalid Date\",$=/^(\\d{4})[-/]?(\\d{1,2})?[-/]?(\\d{0,2})[Tt\\s]*(\\d{1,2})?:?(\\d{1,2})?:?(\\d{1,2})?[.:]?(\\d+)?$/,y=/\\[([^\\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,M={name:\"en\",weekdays:\"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday\".split(\"_\"),months:\"January_February_March_April_May_June_July_August_September_October_November_December\".split(\"_\"),ordinal:function(t){var e=[\"th\",\"st\",\"nd\",\"rd\"],n=t%100;return\"[\"+t+(e[(n-20)%10]||e[n]||e[0])+\"]\"}},m=function(t,e,n){var r=String(t);return!r||r.length>=e?t:\"\"+Array(e+1-r.length).join(n)+t},v={s:m,z:function(t){var e=-t.utcOffset(),n=Math.abs(e),r=Math.floor(n/60),i=n%60;return(e<=0?\"+\":\"-\")+m(r,2,\"0\")+\":\"+m(i,2,\"0\")},m:function t(e,n){if(e.date()1)return t(u[0])}else{var a=e.name;D[a]=e,i=a}return!r&&i&&(g=i),i||!r&&g},O=function(t,e){if(S(t))return t.clone();var n=\"object\"==typeof e?e:{};return n.date=t,n.args=arguments,new _(n)},b=v;b.l=w,b.i=S,b.w=function(t,e){return O(t,{locale:e.$L,utc:e.$u,x:e.$x,$offset:e.$offset})};var _=function(){function M(t){this.$L=w(t.locale,null,!0),this.parse(t),this.$x=this.$x||t.x||{},this[p]=!0}var m=M.prototype;return m.parse=function(t){this.$d=function(t){var e=t.date,n=t.utc;if(null===e)return new Date(NaN);if(b.u(e))return new Date;if(e instanceof Date)return new Date(e);if(\"string\"==typeof e&&!/Z$/i.test(e)){var r=e.match($);if(r){var i=r[2]-1||0,s=(r[7]||\"0\").substring(0,3);return n?new Date(Date.UTC(r[1],i,r[3]||1,r[4]||0,r[5]||0,r[6]||0,s)):new Date(r[1],i,r[3]||1,r[4]||0,r[5]||0,r[6]||0,s)}}return new Date(e)}(t),this.init()},m.init=function(){var t=this.$d;this.$y=t.getFullYear(),this.$M=t.getMonth(),this.$D=t.getDate(),this.$W=t.getDay(),this.$H=t.getHours(),this.$m=t.getMinutes(),this.$s=t.getSeconds(),this.$ms=t.getMilliseconds()},m.$utils=function(){return b},m.isValid=function(){return!(this.$d.toString()===l)},m.isSame=function(t,e){var n=O(t);return this.startOf(e)<=n&&n<=this.endOf(e)},m.isAfter=function(t,e){return O(t)=0&&(r[c]=parseInt(m,10))}var d=r[3],l=24===d?0:d,h=r[0]+\"-\"+r[1]+\"-\"+r[2]+\" \"+l+\":\"+r[4]+\":\"+r[5]+\":000\",v=+e;return(o.utc(h).valueOf()-(v-=v%1e3))/6e4},f=i.prototype;f.tz=function(t,e){void 0===t&&(t=r);var n=this.utcOffset(),i=this.toDate(),a=i.toLocaleString(\"en-US\",{timeZone:t}),u=Math.round((i-new Date(a))/1e3/60),f=o(a,{locale:this.$L}).$set(\"millisecond\",this.$ms).utcOffset(15*-Math.round(i.getTimezoneOffset()/15)-u,!0);if(e){var s=f.utcOffset();f=f.add(n-s,\"minute\")}return f.$x.$timezone=t,f},f.offsetName=function(t){var e=this.$x.$timezone||o.tz.guess(),n=a(this.valueOf(),e,{timeZoneName:t}).find((function(t){return\"timezonename\"===t.type.toLowerCase()}));return n&&n.value};var s=f.startOf;f.startOf=function(t,e){if(!this.$x||!this.$x.$timezone)return s.call(this,t,e);var n=o(this.format(\"YYYY-MM-DD HH:mm:ss:SSS\"),{locale:this.$L});return s.call(n,t,e).tz(this.$x.$timezone,!0)},o.tz=function(t,e,n){var i=n&&e,a=n||e||r,f=u(+o(),a);if(\"string\"!=typeof t)return o(t).tz(a);var s=function(t,e,n){var i=t-60*e*1e3,o=u(i,n);if(e===o)return[i,e];var r=u(i-=60*(o-e)*1e3,n);return o===r?[i,o]:[t-60*Math.min(o,r)*1e3,Math.max(o,r)]}(o.utc(t,i).valueOf(),f,a),m=s[0],c=s[1],d=o(m).utcOffset(c);return d.$x.$timezone=a,d},o.tz.guess=function(){return Intl.DateTimeFormat().resolvedOptions().timeZone},o.tz.setDefault=function(t){r=t}}}));","!function(t,i){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=i():\"function\"==typeof define&&define.amd?define(i):(t=\"undefined\"!=typeof globalThis?globalThis:t||self).dayjs_plugin_utc=i()}(this,(function(){\"use strict\";var t=\"minute\",i=/[+-]\\d\\d(?::?\\d\\d)?/g,e=/([+-]|\\d\\d)/g;return function(s,f,n){var u=f.prototype;n.utc=function(t){var i={date:t,utc:!0,args:arguments};return new f(i)},u.utc=function(i){var e=n(this.toDate(),{locale:this.$L,utc:!0});return i?e.add(this.utcOffset(),t):e},u.local=function(){return n(this.toDate(),{locale:this.$L,utc:!1})};var o=u.parse;u.parse=function(t){t.utc&&(this.$u=!0),this.$utils().u(t.$offset)||(this.$offset=t.$offset),o.call(this,t)};var r=u.init;u.init=function(){if(this.$u){var t=this.$d;this.$y=t.getUTCFullYear(),this.$M=t.getUTCMonth(),this.$D=t.getUTCDate(),this.$W=t.getUTCDay(),this.$H=t.getUTCHours(),this.$m=t.getUTCMinutes(),this.$s=t.getUTCSeconds(),this.$ms=t.getUTCMilliseconds()}else r.call(this)};var a=u.utcOffset;u.utcOffset=function(s,f){var n=this.$utils().u;if(n(s))return this.$u?0:n(this.$offset)?a.call(this):this.$offset;if(\"string\"==typeof s&&(s=function(t){void 0===t&&(t=\"\");var s=t.match(i);if(!s)return null;var f=(\"\"+s[0]).match(e)||[\"-\",0,0],n=f[0],u=60*+f[1]+ +f[2];return 0===u?0:\"+\"===n?u:-u}(s),null===s))return this;var u=Math.abs(s)<=16?60*s:s,o=this;if(f)return o.$offset=u,o.$u=0===s,o;if(0!==s){var r=this.$u?this.toDate().getTimezoneOffset():-1*this.utcOffset();(o=this.local().add(u+r,t)).$offset=u,o.$x.$localOffset=r}else o=this.utc();return o};var h=u.format;u.format=function(t){var i=t||(this.$u?\"YYYY-MM-DDTHH:mm:ss[Z]\":\"\");return h.call(this,i)},u.valueOf=function(){var t=this.$utils().u(this.$offset)?0:this.$offset+(this.$x.$localOffset||this.$d.getTimezoneOffset());return this.$d.valueOf()-6e4*t},u.isUTC=function(){return!!this.$u},u.toISOString=function(){return this.toDate().toISOString()},u.toString=function(){return this.toDate().toUTCString()};var l=u.toDate;u.toDate=function(t){return\"s\"===t&&this.$offset?n(this.format(\"YYYY-MM-DD HH:mm:ss:SSS\")).toDate():l.call(this)};var c=u.diff;u.diff=function(t,i,e){if(t&&this.$u===t.$u)return c.call(this,t,i,e);var s=this.local(),f=n(t).local();return c.call(s,f,i,e)}}}));","'use strict';\n\nvar hasPropertyDescriptors = require('has-property-descriptors')();\n\nvar GetIntrinsic = require('get-intrinsic');\n\nvar $defineProperty = hasPropertyDescriptors && GetIntrinsic('%Object.defineProperty%', true);\nif ($defineProperty) {\n\ttry {\n\t\t$defineProperty({}, 'a', { value: 1 });\n\t} catch (e) {\n\t\t// IE 8 has a broken defineProperty\n\t\t$defineProperty = false;\n\t}\n}\n\nvar $SyntaxError = GetIntrinsic('%SyntaxError%');\nvar $TypeError = GetIntrinsic('%TypeError%');\n\nvar gopd = require('gopd');\n\n/** @type {(obj: Record, property: PropertyKey, value: unknown, nonEnumerable?: boolean | null, nonWritable?: boolean | null, nonConfigurable?: boolean | null, loose?: boolean) => void} */\nmodule.exports = function defineDataProperty(\n\tobj,\n\tproperty,\n\tvalue\n) {\n\tif (!obj || (typeof obj !== 'object' && typeof obj !== 'function')) {\n\t\tthrow new $TypeError('`obj` must be an object or a function`');\n\t}\n\tif (typeof property !== 'string' && typeof property !== 'symbol') {\n\t\tthrow new $TypeError('`property` must be a string or a symbol`');\n\t}\n\tif (arguments.length > 3 && typeof arguments[3] !== 'boolean' && arguments[3] !== null) {\n\t\tthrow new $TypeError('`nonEnumerable`, if provided, must be a boolean or null');\n\t}\n\tif (arguments.length > 4 && typeof arguments[4] !== 'boolean' && arguments[4] !== null) {\n\t\tthrow new $TypeError('`nonWritable`, if provided, must be a boolean or null');\n\t}\n\tif (arguments.length > 5 && typeof arguments[5] !== 'boolean' && arguments[5] !== null) {\n\t\tthrow new $TypeError('`nonConfigurable`, if provided, must be a boolean or null');\n\t}\n\tif (arguments.length > 6 && typeof arguments[6] !== 'boolean') {\n\t\tthrow new $TypeError('`loose`, if provided, must be a boolean');\n\t}\n\n\tvar nonEnumerable = arguments.length > 3 ? arguments[3] : null;\n\tvar nonWritable = arguments.length > 4 ? arguments[4] : null;\n\tvar nonConfigurable = arguments.length > 5 ? arguments[5] : null;\n\tvar loose = arguments.length > 6 ? arguments[6] : false;\n\n\t/* @type {false | TypedPropertyDescriptor} */\n\tvar desc = !!gopd && gopd(obj, property);\n\n\tif ($defineProperty) {\n\t\t$defineProperty(obj, property, {\n\t\t\tconfigurable: nonConfigurable === null && desc ? desc.configurable : !nonConfigurable,\n\t\t\tenumerable: nonEnumerable === null && desc ? desc.enumerable : !nonEnumerable,\n\t\t\tvalue: value,\n\t\t\twritable: nonWritable === null && desc ? desc.writable : !nonWritable\n\t\t});\n\t} else if (loose || (!nonEnumerable && !nonWritable && !nonConfigurable)) {\n\t\t// must fall back to [[Set]], and was not explicitly asked to make non-enumerable, non-writable, or non-configurable\n\t\tobj[property] = value; // eslint-disable-line no-param-reassign\n\t} else {\n\t\tthrow new $SyntaxError('This environment does not support defining a property as non-configurable, non-writable, or non-enumerable.');\n\t}\n};\n","'use strict';\n\nvar keys = require('object-keys');\nvar hasSymbols = typeof Symbol === 'function' && typeof Symbol('foo') === 'symbol';\n\nvar toStr = Object.prototype.toString;\nvar concat = Array.prototype.concat;\nvar defineDataProperty = require('define-data-property');\n\nvar isFunction = function (fn) {\n\treturn typeof fn === 'function' && toStr.call(fn) === '[object Function]';\n};\n\nvar supportsDescriptors = require('has-property-descriptors')();\n\nvar defineProperty = function (object, name, value, predicate) {\n\tif (name in object) {\n\t\tif (predicate === true) {\n\t\t\tif (object[name] === value) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t} else if (!isFunction(predicate) || !predicate()) {\n\t\t\treturn;\n\t\t}\n\t}\n\n\tif (supportsDescriptors) {\n\t\tdefineDataProperty(object, name, value, true);\n\t} else {\n\t\tdefineDataProperty(object, name, value);\n\t}\n};\n\nvar defineProperties = function (object, map) {\n\tvar predicates = arguments.length > 2 ? arguments[2] : {};\n\tvar props = keys(map);\n\tif (hasSymbols) {\n\t\tprops = concat.call(props, Object.getOwnPropertySymbols(map));\n\t}\n\tfor (var i = 0; i < props.length; i += 1) {\n\t\tdefineProperty(object, props[i], map[props[i]], predicates[props[i]]);\n\t}\n};\n\ndefineProperties.supportsDescriptors = !!supportsDescriptors;\n\nmodule.exports = defineProperties;\n","'use strict';\n\nvar isCallable = require('is-callable');\n\nvar toStr = Object.prototype.toString;\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\n\nvar forEachArray = function forEachArray(array, iterator, receiver) {\n for (var i = 0, len = array.length; i < len; i++) {\n if (hasOwnProperty.call(array, i)) {\n if (receiver == null) {\n iterator(array[i], i, array);\n } else {\n iterator.call(receiver, array[i], i, array);\n }\n }\n }\n};\n\nvar forEachString = function forEachString(string, iterator, receiver) {\n for (var i = 0, len = string.length; i < len; i++) {\n // no such thing as a sparse string.\n if (receiver == null) {\n iterator(string.charAt(i), i, string);\n } else {\n iterator.call(receiver, string.charAt(i), i, string);\n }\n }\n};\n\nvar forEachObject = function forEachObject(object, iterator, receiver) {\n for (var k in object) {\n if (hasOwnProperty.call(object, k)) {\n if (receiver == null) {\n iterator(object[k], k, object);\n } else {\n iterator.call(receiver, object[k], k, object);\n }\n }\n }\n};\n\nvar forEach = function forEach(list, iterator, thisArg) {\n if (!isCallable(iterator)) {\n throw new TypeError('iterator must be a function');\n }\n\n var receiver;\n if (arguments.length >= 3) {\n receiver = thisArg;\n }\n\n if (toStr.call(list) === '[object Array]') {\n forEachArray(list, iterator, receiver);\n } else if (typeof list === 'string') {\n forEachString(list, iterator, receiver);\n } else {\n forEachObject(list, iterator, receiver);\n }\n};\n\nmodule.exports = forEach;\n","'use strict';\n\n/* eslint no-invalid-this: 1 */\n\nvar ERROR_MESSAGE = 'Function.prototype.bind called on incompatible ';\nvar toStr = Object.prototype.toString;\nvar max = Math.max;\nvar funcType = '[object Function]';\n\nvar concatty = function concatty(a, b) {\n var arr = [];\n\n for (var i = 0; i < a.length; i += 1) {\n arr[i] = a[i];\n }\n for (var j = 0; j < b.length; j += 1) {\n arr[j + a.length] = b[j];\n }\n\n return arr;\n};\n\nvar slicy = function slicy(arrLike, offset) {\n var arr = [];\n for (var i = offset || 0, j = 0; i < arrLike.length; i += 1, j += 1) {\n arr[j] = arrLike[i];\n }\n return arr;\n};\n\nvar joiny = function (arr, joiner) {\n var str = '';\n for (var i = 0; i < arr.length; i += 1) {\n str += arr[i];\n if (i + 1 < arr.length) {\n str += joiner;\n }\n }\n return str;\n};\n\nmodule.exports = function bind(that) {\n var target = this;\n if (typeof target !== 'function' || toStr.apply(target) !== funcType) {\n throw new TypeError(ERROR_MESSAGE + target);\n }\n var args = slicy(arguments, 1);\n\n var bound;\n var binder = function () {\n if (this instanceof bound) {\n var result = target.apply(\n this,\n concatty(args, arguments)\n );\n if (Object(result) === result) {\n return result;\n }\n return this;\n }\n return target.apply(\n that,\n concatty(args, arguments)\n );\n\n };\n\n var boundLength = max(0, target.length - args.length);\n var boundArgs = [];\n for (var i = 0; i < boundLength; i++) {\n boundArgs[i] = '$' + i;\n }\n\n bound = Function('binder', 'return function (' + joiny(boundArgs, ',') + '){ return binder.apply(this,arguments); }')(binder);\n\n if (target.prototype) {\n var Empty = function Empty() {};\n Empty.prototype = target.prototype;\n bound.prototype = new Empty();\n Empty.prototype = null;\n }\n\n return bound;\n};\n","'use strict';\n\nvar implementation = require('./implementation');\n\nmodule.exports = Function.prototype.bind || implementation;\n","'use strict';\n\nvar undefined;\n\nvar $SyntaxError = SyntaxError;\nvar $Function = Function;\nvar $TypeError = TypeError;\n\n// eslint-disable-next-line consistent-return\nvar getEvalledConstructor = function (expressionSyntax) {\n\ttry {\n\t\treturn $Function('\"use strict\"; return (' + expressionSyntax + ').constructor;')();\n\t} catch (e) {}\n};\n\nvar $gOPD = Object.getOwnPropertyDescriptor;\nif ($gOPD) {\n\ttry {\n\t\t$gOPD({}, '');\n\t} catch (e) {\n\t\t$gOPD = null; // this is IE 8, which has a broken gOPD\n\t}\n}\n\nvar throwTypeError = function () {\n\tthrow new $TypeError();\n};\nvar ThrowTypeError = $gOPD\n\t? (function () {\n\t\ttry {\n\t\t\t// eslint-disable-next-line no-unused-expressions, no-caller, no-restricted-properties\n\t\t\targuments.callee; // IE 8 does not throw here\n\t\t\treturn throwTypeError;\n\t\t} catch (calleeThrows) {\n\t\t\ttry {\n\t\t\t\t// IE 8 throws on Object.getOwnPropertyDescriptor(arguments, '')\n\t\t\t\treturn $gOPD(arguments, 'callee').get;\n\t\t\t} catch (gOPDthrows) {\n\t\t\t\treturn throwTypeError;\n\t\t\t}\n\t\t}\n\t}())\n\t: throwTypeError;\n\nvar hasSymbols = require('has-symbols')();\nvar hasProto = require('has-proto')();\n\nvar getProto = Object.getPrototypeOf || (\n\thasProto\n\t\t? function (x) { return x.__proto__; } // eslint-disable-line no-proto\n\t\t: null\n);\n\nvar needsEval = {};\n\nvar TypedArray = typeof Uint8Array === 'undefined' || !getProto ? undefined : getProto(Uint8Array);\n\nvar INTRINSICS = {\n\t'%AggregateError%': typeof AggregateError === 'undefined' ? undefined : AggregateError,\n\t'%Array%': Array,\n\t'%ArrayBuffer%': typeof ArrayBuffer === 'undefined' ? undefined : ArrayBuffer,\n\t'%ArrayIteratorPrototype%': hasSymbols && getProto ? getProto([][Symbol.iterator]()) : undefined,\n\t'%AsyncFromSyncIteratorPrototype%': undefined,\n\t'%AsyncFunction%': needsEval,\n\t'%AsyncGenerator%': needsEval,\n\t'%AsyncGeneratorFunction%': needsEval,\n\t'%AsyncIteratorPrototype%': needsEval,\n\t'%Atomics%': typeof Atomics === 'undefined' ? undefined : Atomics,\n\t'%BigInt%': typeof BigInt === 'undefined' ? undefined : BigInt,\n\t'%BigInt64Array%': typeof BigInt64Array === 'undefined' ? undefined : BigInt64Array,\n\t'%BigUint64Array%': typeof BigUint64Array === 'undefined' ? undefined : BigUint64Array,\n\t'%Boolean%': Boolean,\n\t'%DataView%': typeof DataView === 'undefined' ? undefined : DataView,\n\t'%Date%': Date,\n\t'%decodeURI%': decodeURI,\n\t'%decodeURIComponent%': decodeURIComponent,\n\t'%encodeURI%': encodeURI,\n\t'%encodeURIComponent%': encodeURIComponent,\n\t'%Error%': Error,\n\t'%eval%': eval, // eslint-disable-line no-eval\n\t'%EvalError%': EvalError,\n\t'%Float32Array%': typeof Float32Array === 'undefined' ? undefined : Float32Array,\n\t'%Float64Array%': typeof Float64Array === 'undefined' ? undefined : Float64Array,\n\t'%FinalizationRegistry%': typeof FinalizationRegistry === 'undefined' ? undefined : FinalizationRegistry,\n\t'%Function%': $Function,\n\t'%GeneratorFunction%': needsEval,\n\t'%Int8Array%': typeof Int8Array === 'undefined' ? undefined : Int8Array,\n\t'%Int16Array%': typeof Int16Array === 'undefined' ? undefined : Int16Array,\n\t'%Int32Array%': typeof Int32Array === 'undefined' ? undefined : Int32Array,\n\t'%isFinite%': isFinite,\n\t'%isNaN%': isNaN,\n\t'%IteratorPrototype%': hasSymbols && getProto ? getProto(getProto([][Symbol.iterator]())) : undefined,\n\t'%JSON%': typeof JSON === 'object' ? JSON : undefined,\n\t'%Map%': typeof Map === 'undefined' ? undefined : Map,\n\t'%MapIteratorPrototype%': typeof Map === 'undefined' || !hasSymbols || !getProto ? undefined : getProto(new Map()[Symbol.iterator]()),\n\t'%Math%': Math,\n\t'%Number%': Number,\n\t'%Object%': Object,\n\t'%parseFloat%': parseFloat,\n\t'%parseInt%': parseInt,\n\t'%Promise%': typeof Promise === 'undefined' ? undefined : Promise,\n\t'%Proxy%': typeof Proxy === 'undefined' ? undefined : Proxy,\n\t'%RangeError%': RangeError,\n\t'%ReferenceError%': ReferenceError,\n\t'%Reflect%': typeof Reflect === 'undefined' ? undefined : Reflect,\n\t'%RegExp%': RegExp,\n\t'%Set%': typeof Set === 'undefined' ? undefined : Set,\n\t'%SetIteratorPrototype%': typeof Set === 'undefined' || !hasSymbols || !getProto ? undefined : getProto(new Set()[Symbol.iterator]()),\n\t'%SharedArrayBuffer%': typeof SharedArrayBuffer === 'undefined' ? undefined : SharedArrayBuffer,\n\t'%String%': String,\n\t'%StringIteratorPrototype%': hasSymbols && getProto ? getProto(''[Symbol.iterator]()) : undefined,\n\t'%Symbol%': hasSymbols ? Symbol : undefined,\n\t'%SyntaxError%': $SyntaxError,\n\t'%ThrowTypeError%': ThrowTypeError,\n\t'%TypedArray%': TypedArray,\n\t'%TypeError%': $TypeError,\n\t'%Uint8Array%': typeof Uint8Array === 'undefined' ? undefined : Uint8Array,\n\t'%Uint8ClampedArray%': typeof Uint8ClampedArray === 'undefined' ? undefined : Uint8ClampedArray,\n\t'%Uint16Array%': typeof Uint16Array === 'undefined' ? undefined : Uint16Array,\n\t'%Uint32Array%': typeof Uint32Array === 'undefined' ? undefined : Uint32Array,\n\t'%URIError%': URIError,\n\t'%WeakMap%': typeof WeakMap === 'undefined' ? undefined : WeakMap,\n\t'%WeakRef%': typeof WeakRef === 'undefined' ? undefined : WeakRef,\n\t'%WeakSet%': typeof WeakSet === 'undefined' ? undefined : WeakSet\n};\n\nif (getProto) {\n\ttry {\n\t\tnull.error; // eslint-disable-line no-unused-expressions\n\t} catch (e) {\n\t\t// https://github.com/tc39/proposal-shadowrealm/pull/384#issuecomment-1364264229\n\t\tvar errorProto = getProto(getProto(e));\n\t\tINTRINSICS['%Error.prototype%'] = errorProto;\n\t}\n}\n\nvar doEval = function doEval(name) {\n\tvar value;\n\tif (name === '%AsyncFunction%') {\n\t\tvalue = getEvalledConstructor('async function () {}');\n\t} else if (name === '%GeneratorFunction%') {\n\t\tvalue = getEvalledConstructor('function* () {}');\n\t} else if (name === '%AsyncGeneratorFunction%') {\n\t\tvalue = getEvalledConstructor('async function* () {}');\n\t} else if (name === '%AsyncGenerator%') {\n\t\tvar fn = doEval('%AsyncGeneratorFunction%');\n\t\tif (fn) {\n\t\t\tvalue = fn.prototype;\n\t\t}\n\t} else if (name === '%AsyncIteratorPrototype%') {\n\t\tvar gen = doEval('%AsyncGenerator%');\n\t\tif (gen && getProto) {\n\t\t\tvalue = getProto(gen.prototype);\n\t\t}\n\t}\n\n\tINTRINSICS[name] = value;\n\n\treturn value;\n};\n\nvar LEGACY_ALIASES = {\n\t'%ArrayBufferPrototype%': ['ArrayBuffer', 'prototype'],\n\t'%ArrayPrototype%': ['Array', 'prototype'],\n\t'%ArrayProto_entries%': ['Array', 'prototype', 'entries'],\n\t'%ArrayProto_forEach%': ['Array', 'prototype', 'forEach'],\n\t'%ArrayProto_keys%': ['Array', 'prototype', 'keys'],\n\t'%ArrayProto_values%': ['Array', 'prototype', 'values'],\n\t'%AsyncFunctionPrototype%': ['AsyncFunction', 'prototype'],\n\t'%AsyncGenerator%': ['AsyncGeneratorFunction', 'prototype'],\n\t'%AsyncGeneratorPrototype%': ['AsyncGeneratorFunction', 'prototype', 'prototype'],\n\t'%BooleanPrototype%': ['Boolean', 'prototype'],\n\t'%DataViewPrototype%': ['DataView', 'prototype'],\n\t'%DatePrototype%': ['Date', 'prototype'],\n\t'%ErrorPrototype%': ['Error', 'prototype'],\n\t'%EvalErrorPrototype%': ['EvalError', 'prototype'],\n\t'%Float32ArrayPrototype%': ['Float32Array', 'prototype'],\n\t'%Float64ArrayPrototype%': ['Float64Array', 'prototype'],\n\t'%FunctionPrototype%': ['Function', 'prototype'],\n\t'%Generator%': ['GeneratorFunction', 'prototype'],\n\t'%GeneratorPrototype%': ['GeneratorFunction', 'prototype', 'prototype'],\n\t'%Int8ArrayPrototype%': ['Int8Array', 'prototype'],\n\t'%Int16ArrayPrototype%': ['Int16Array', 'prototype'],\n\t'%Int32ArrayPrototype%': ['Int32Array', 'prototype'],\n\t'%JSONParse%': ['JSON', 'parse'],\n\t'%JSONStringify%': ['JSON', 'stringify'],\n\t'%MapPrototype%': ['Map', 'prototype'],\n\t'%NumberPrototype%': ['Number', 'prototype'],\n\t'%ObjectPrototype%': ['Object', 'prototype'],\n\t'%ObjProto_toString%': ['Object', 'prototype', 'toString'],\n\t'%ObjProto_valueOf%': ['Object', 'prototype', 'valueOf'],\n\t'%PromisePrototype%': ['Promise', 'prototype'],\n\t'%PromiseProto_then%': ['Promise', 'prototype', 'then'],\n\t'%Promise_all%': ['Promise', 'all'],\n\t'%Promise_reject%': ['Promise', 'reject'],\n\t'%Promise_resolve%': ['Promise', 'resolve'],\n\t'%RangeErrorPrototype%': ['RangeError', 'prototype'],\n\t'%ReferenceErrorPrototype%': ['ReferenceError', 'prototype'],\n\t'%RegExpPrototype%': ['RegExp', 'prototype'],\n\t'%SetPrototype%': ['Set', 'prototype'],\n\t'%SharedArrayBufferPrototype%': ['SharedArrayBuffer', 'prototype'],\n\t'%StringPrototype%': ['String', 'prototype'],\n\t'%SymbolPrototype%': ['Symbol', 'prototype'],\n\t'%SyntaxErrorPrototype%': ['SyntaxError', 'prototype'],\n\t'%TypedArrayPrototype%': ['TypedArray', 'prototype'],\n\t'%TypeErrorPrototype%': ['TypeError', 'prototype'],\n\t'%Uint8ArrayPrototype%': ['Uint8Array', 'prototype'],\n\t'%Uint8ClampedArrayPrototype%': ['Uint8ClampedArray', 'prototype'],\n\t'%Uint16ArrayPrototype%': ['Uint16Array', 'prototype'],\n\t'%Uint32ArrayPrototype%': ['Uint32Array', 'prototype'],\n\t'%URIErrorPrototype%': ['URIError', 'prototype'],\n\t'%WeakMapPrototype%': ['WeakMap', 'prototype'],\n\t'%WeakSetPrototype%': ['WeakSet', 'prototype']\n};\n\nvar bind = require('function-bind');\nvar hasOwn = require('hasown');\nvar $concat = bind.call(Function.call, Array.prototype.concat);\nvar $spliceApply = bind.call(Function.apply, Array.prototype.splice);\nvar $replace = bind.call(Function.call, String.prototype.replace);\nvar $strSlice = bind.call(Function.call, String.prototype.slice);\nvar $exec = bind.call(Function.call, RegExp.prototype.exec);\n\n/* adapted from https://github.com/lodash/lodash/blob/4.17.15/dist/lodash.js#L6735-L6744 */\nvar rePropName = /[^%.[\\]]+|\\[(?:(-?\\d+(?:\\.\\d+)?)|([\"'])((?:(?!\\2)[^\\\\]|\\\\.)*?)\\2)\\]|(?=(?:\\.|\\[\\])(?:\\.|\\[\\]|%$))/g;\nvar reEscapeChar = /\\\\(\\\\)?/g; /** Used to match backslashes in property paths. */\nvar stringToPath = function stringToPath(string) {\n\tvar first = $strSlice(string, 0, 1);\n\tvar last = $strSlice(string, -1);\n\tif (first === '%' && last !== '%') {\n\t\tthrow new $SyntaxError('invalid intrinsic syntax, expected closing `%`');\n\t} else if (last === '%' && first !== '%') {\n\t\tthrow new $SyntaxError('invalid intrinsic syntax, expected opening `%`');\n\t}\n\tvar result = [];\n\t$replace(string, rePropName, function (match, number, quote, subString) {\n\t\tresult[result.length] = quote ? $replace(subString, reEscapeChar, '$1') : number || match;\n\t});\n\treturn result;\n};\n/* end adaptation */\n\nvar getBaseIntrinsic = function getBaseIntrinsic(name, allowMissing) {\n\tvar intrinsicName = name;\n\tvar alias;\n\tif (hasOwn(LEGACY_ALIASES, intrinsicName)) {\n\t\talias = LEGACY_ALIASES[intrinsicName];\n\t\tintrinsicName = '%' + alias[0] + '%';\n\t}\n\n\tif (hasOwn(INTRINSICS, intrinsicName)) {\n\t\tvar value = INTRINSICS[intrinsicName];\n\t\tif (value === needsEval) {\n\t\t\tvalue = doEval(intrinsicName);\n\t\t}\n\t\tif (typeof value === 'undefined' && !allowMissing) {\n\t\t\tthrow new $TypeError('intrinsic ' + name + ' exists, but is not available. Please file an issue!');\n\t\t}\n\n\t\treturn {\n\t\t\talias: alias,\n\t\t\tname: intrinsicName,\n\t\t\tvalue: value\n\t\t};\n\t}\n\n\tthrow new $SyntaxError('intrinsic ' + name + ' does not exist!');\n};\n\nmodule.exports = function GetIntrinsic(name, allowMissing) {\n\tif (typeof name !== 'string' || name.length === 0) {\n\t\tthrow new $TypeError('intrinsic name must be a non-empty string');\n\t}\n\tif (arguments.length > 1 && typeof allowMissing !== 'boolean') {\n\t\tthrow new $TypeError('\"allowMissing\" argument must be a boolean');\n\t}\n\n\tif ($exec(/^%?[^%]*%?$/, name) === null) {\n\t\tthrow new $SyntaxError('`%` may not be present anywhere but at the beginning and end of the intrinsic name');\n\t}\n\tvar parts = stringToPath(name);\n\tvar intrinsicBaseName = parts.length > 0 ? parts[0] : '';\n\n\tvar intrinsic = getBaseIntrinsic('%' + intrinsicBaseName + '%', allowMissing);\n\tvar intrinsicRealName = intrinsic.name;\n\tvar value = intrinsic.value;\n\tvar skipFurtherCaching = false;\n\n\tvar alias = intrinsic.alias;\n\tif (alias) {\n\t\tintrinsicBaseName = alias[0];\n\t\t$spliceApply(parts, $concat([0, 1], alias));\n\t}\n\n\tfor (var i = 1, isOwn = true; i < parts.length; i += 1) {\n\t\tvar part = parts[i];\n\t\tvar first = $strSlice(part, 0, 1);\n\t\tvar last = $strSlice(part, -1);\n\t\tif (\n\t\t\t(\n\t\t\t\t(first === '\"' || first === \"'\" || first === '`')\n\t\t\t\t|| (last === '\"' || last === \"'\" || last === '`')\n\t\t\t)\n\t\t\t&& first !== last\n\t\t) {\n\t\t\tthrow new $SyntaxError('property names with quotes must have matching quotes');\n\t\t}\n\t\tif (part === 'constructor' || !isOwn) {\n\t\t\tskipFurtherCaching = true;\n\t\t}\n\n\t\tintrinsicBaseName += '.' + part;\n\t\tintrinsicRealName = '%' + intrinsicBaseName + '%';\n\n\t\tif (hasOwn(INTRINSICS, intrinsicRealName)) {\n\t\t\tvalue = INTRINSICS[intrinsicRealName];\n\t\t} else if (value != null) {\n\t\t\tif (!(part in value)) {\n\t\t\t\tif (!allowMissing) {\n\t\t\t\t\tthrow new $TypeError('base intrinsic for ' + name + ' exists, but the property is not available.');\n\t\t\t\t}\n\t\t\t\treturn void undefined;\n\t\t\t}\n\t\t\tif ($gOPD && (i + 1) >= parts.length) {\n\t\t\t\tvar desc = $gOPD(value, part);\n\t\t\t\tisOwn = !!desc;\n\n\t\t\t\t// By convention, when a data property is converted to an accessor\n\t\t\t\t// property to emulate a data property that does not suffer from\n\t\t\t\t// the override mistake, that accessor's getter is marked with\n\t\t\t\t// an `originalValue` property. Here, when we detect this, we\n\t\t\t\t// uphold the illusion by pretending to see that original data\n\t\t\t\t// property, i.e., returning the value rather than the getter\n\t\t\t\t// itself.\n\t\t\t\tif (isOwn && 'get' in desc && !('originalValue' in desc.get)) {\n\t\t\t\t\tvalue = desc.get;\n\t\t\t\t} else {\n\t\t\t\t\tvalue = value[part];\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tisOwn = hasOwn(value, part);\n\t\t\t\tvalue = value[part];\n\t\t\t}\n\n\t\t\tif (isOwn && !skipFurtherCaching) {\n\t\t\t\tINTRINSICS[intrinsicRealName] = value;\n\t\t\t}\n\t\t}\n\t}\n\treturn value;\n};\n","'use strict';\n\nvar GetIntrinsic = require('get-intrinsic');\n\nvar $gOPD = GetIntrinsic('%Object.getOwnPropertyDescriptor%', true);\n\nif ($gOPD) {\n\ttry {\n\t\t$gOPD([], 'length');\n\t} catch (e) {\n\t\t// IE 8 has a broken gOPD\n\t\t$gOPD = null;\n\t}\n}\n\nmodule.exports = $gOPD;\n","'use strict';\n\nvar GetIntrinsic = require('get-intrinsic');\n\nvar $defineProperty = GetIntrinsic('%Object.defineProperty%', true);\n\nvar hasPropertyDescriptors = function hasPropertyDescriptors() {\n\tif ($defineProperty) {\n\t\ttry {\n\t\t\t$defineProperty({}, 'a', { value: 1 });\n\t\t\treturn true;\n\t\t} catch (e) {\n\t\t\t// IE 8 has a broken defineProperty\n\t\t\treturn false;\n\t\t}\n\t}\n\treturn false;\n};\n\nhasPropertyDescriptors.hasArrayLengthDefineBug = function hasArrayLengthDefineBug() {\n\t// node v0.6 has a bug where array lengths can be Set but not Defined\n\tif (!hasPropertyDescriptors()) {\n\t\treturn null;\n\t}\n\ttry {\n\t\treturn $defineProperty([], 'length', { value: 1 }).length !== 1;\n\t} catch (e) {\n\t\t// In Firefox 4-22, defining length on an array throws an exception.\n\t\treturn true;\n\t}\n};\n\nmodule.exports = hasPropertyDescriptors;\n","'use strict';\n\nvar test = {\n\tfoo: {}\n};\n\nvar $Object = Object;\n\nmodule.exports = function hasProto() {\n\treturn { __proto__: test }.foo === test.foo && !({ __proto__: null } instanceof $Object);\n};\n","'use strict';\n\nvar origSymbol = typeof Symbol !== 'undefined' && Symbol;\nvar hasSymbolSham = require('./shams');\n\nmodule.exports = function hasNativeSymbols() {\n\tif (typeof origSymbol !== 'function') { return false; }\n\tif (typeof Symbol !== 'function') { return false; }\n\tif (typeof origSymbol('foo') !== 'symbol') { return false; }\n\tif (typeof Symbol('bar') !== 'symbol') { return false; }\n\n\treturn hasSymbolSham();\n};\n","'use strict';\n\n/* eslint complexity: [2, 18], max-statements: [2, 33] */\nmodule.exports = function hasSymbols() {\n\tif (typeof Symbol !== 'function' || typeof Object.getOwnPropertySymbols !== 'function') { return false; }\n\tif (typeof Symbol.iterator === 'symbol') { return true; }\n\n\tvar obj = {};\n\tvar sym = Symbol('test');\n\tvar symObj = Object(sym);\n\tif (typeof sym === 'string') { return false; }\n\n\tif (Object.prototype.toString.call(sym) !== '[object Symbol]') { return false; }\n\tif (Object.prototype.toString.call(symObj) !== '[object Symbol]') { return false; }\n\n\t// temp disabled per https://github.com/ljharb/object.assign/issues/17\n\t// if (sym instanceof Symbol) { return false; }\n\t// temp disabled per https://github.com/WebReflection/get-own-property-symbols/issues/4\n\t// if (!(symObj instanceof Symbol)) { return false; }\n\n\t// if (typeof Symbol.prototype.toString !== 'function') { return false; }\n\t// if (String(sym) !== Symbol.prototype.toString.call(sym)) { return false; }\n\n\tvar symVal = 42;\n\tobj[sym] = symVal;\n\tfor (sym in obj) { return false; } // eslint-disable-line no-restricted-syntax, no-unreachable-loop\n\tif (typeof Object.keys === 'function' && Object.keys(obj).length !== 0) { return false; }\n\n\tif (typeof Object.getOwnPropertyNames === 'function' && Object.getOwnPropertyNames(obj).length !== 0) { return false; }\n\n\tvar syms = Object.getOwnPropertySymbols(obj);\n\tif (syms.length !== 1 || syms[0] !== sym) { return false; }\n\n\tif (!Object.prototype.propertyIsEnumerable.call(obj, sym)) { return false; }\n\n\tif (typeof Object.getOwnPropertyDescriptor === 'function') {\n\t\tvar descriptor = Object.getOwnPropertyDescriptor(obj, sym);\n\t\tif (descriptor.value !== symVal || descriptor.enumerable !== true) { return false; }\n\t}\n\n\treturn true;\n};\n","'use strict';\n\nvar hasSymbols = require('has-symbols/shams');\n\nmodule.exports = function hasToStringTagShams() {\n\treturn hasSymbols() && !!Symbol.toStringTag;\n};\n","'use strict';\n\nvar call = Function.prototype.call;\nvar $hasOwn = Object.prototype.hasOwnProperty;\nvar bind = require('function-bind');\n\n/** @type {(o: {}, p: PropertyKey) => p is keyof o} */\nmodule.exports = bind.call(call, $hasOwn);\n","/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh */\nexports.read = function (buffer, offset, isLE, mLen, nBytes) {\n var e, m\n var eLen = (nBytes * 8) - mLen - 1\n var eMax = (1 << eLen) - 1\n var eBias = eMax >> 1\n var nBits = -7\n var i = isLE ? (nBytes - 1) : 0\n var d = isLE ? -1 : 1\n var s = buffer[offset + i]\n\n i += d\n\n e = s & ((1 << (-nBits)) - 1)\n s >>= (-nBits)\n nBits += eLen\n for (; nBits > 0; e = (e * 256) + buffer[offset + i], i += d, nBits -= 8) {}\n\n m = e & ((1 << (-nBits)) - 1)\n e >>= (-nBits)\n nBits += mLen\n for (; nBits > 0; m = (m * 256) + buffer[offset + i], i += d, nBits -= 8) {}\n\n if (e === 0) {\n e = 1 - eBias\n } else if (e === eMax) {\n return m ? NaN : ((s ? -1 : 1) * Infinity)\n } else {\n m = m + Math.pow(2, mLen)\n e = e - eBias\n }\n return (s ? -1 : 1) * m * Math.pow(2, e - mLen)\n}\n\nexports.write = function (buffer, value, offset, isLE, mLen, nBytes) {\n var e, m, c\n var eLen = (nBytes * 8) - mLen - 1\n var eMax = (1 << eLen) - 1\n var eBias = eMax >> 1\n var rt = (mLen === 23 ? Math.pow(2, -24) - Math.pow(2, -77) : 0)\n var i = isLE ? 0 : (nBytes - 1)\n var d = isLE ? 1 : -1\n var s = value < 0 || (value === 0 && 1 / value < 0) ? 1 : 0\n\n value = Math.abs(value)\n\n if (isNaN(value) || value === Infinity) {\n m = isNaN(value) ? 1 : 0\n e = eMax\n } else {\n e = Math.floor(Math.log(value) / Math.LN2)\n if (value * (c = Math.pow(2, -e)) < 1) {\n e--\n c *= 2\n }\n if (e + eBias >= 1) {\n value += rt / c\n } else {\n value += rt * Math.pow(2, 1 - eBias)\n }\n if (value * c >= 2) {\n e++\n c /= 2\n }\n\n if (e + eBias >= eMax) {\n m = 0\n e = eMax\n } else if (e + eBias >= 1) {\n m = ((value * c) - 1) * Math.pow(2, mLen)\n e = e + eBias\n } else {\n m = value * Math.pow(2, eBias - 1) * Math.pow(2, mLen)\n e = 0\n }\n }\n\n for (; mLen >= 8; buffer[offset + i] = m & 0xff, i += d, m /= 256, mLen -= 8) {}\n\n e = (e << mLen) | m\n eLen += mLen\n for (; eLen > 0; buffer[offset + i] = e & 0xff, i += d, e /= 256, eLen -= 8) {}\n\n buffer[offset + i - d] |= s * 128\n}\n","if (typeof Object.create === 'function') {\n // implementation from standard node.js 'util' module\n module.exports = function inherits(ctor, superCtor) {\n if (superCtor) {\n ctor.super_ = superCtor\n ctor.prototype = Object.create(superCtor.prototype, {\n constructor: {\n value: ctor,\n enumerable: false,\n writable: true,\n configurable: true\n }\n })\n }\n };\n} else {\n // old school shim for old browsers\n module.exports = function inherits(ctor, superCtor) {\n if (superCtor) {\n ctor.super_ = superCtor\n var TempCtor = function () {}\n TempCtor.prototype = superCtor.prototype\n ctor.prototype = new TempCtor()\n ctor.prototype.constructor = ctor\n }\n }\n}\n","'use strict';\n\nvar hasToStringTag = require('has-tostringtag/shams')();\nvar callBound = require('call-bind/callBound');\n\nvar $toString = callBound('Object.prototype.toString');\n\nvar isStandardArguments = function isArguments(value) {\n\tif (hasToStringTag && value && typeof value === 'object' && Symbol.toStringTag in value) {\n\t\treturn false;\n\t}\n\treturn $toString(value) === '[object Arguments]';\n};\n\nvar isLegacyArguments = function isArguments(value) {\n\tif (isStandardArguments(value)) {\n\t\treturn true;\n\t}\n\treturn value !== null &&\n\t\ttypeof value === 'object' &&\n\t\ttypeof value.length === 'number' &&\n\t\tvalue.length >= 0 &&\n\t\t$toString(value) !== '[object Array]' &&\n\t\t$toString(value.callee) === '[object Function]';\n};\n\nvar supportsStandardArguments = (function () {\n\treturn isStandardArguments(arguments);\n}());\n\nisStandardArguments.isLegacyArguments = isLegacyArguments; // for tests\n\nmodule.exports = supportsStandardArguments ? isStandardArguments : isLegacyArguments;\n","'use strict';\n\nvar fnToStr = Function.prototype.toString;\nvar reflectApply = typeof Reflect === 'object' && Reflect !== null && Reflect.apply;\nvar badArrayLike;\nvar isCallableMarker;\nif (typeof reflectApply === 'function' && typeof Object.defineProperty === 'function') {\n\ttry {\n\t\tbadArrayLike = Object.defineProperty({}, 'length', {\n\t\t\tget: function () {\n\t\t\t\tthrow isCallableMarker;\n\t\t\t}\n\t\t});\n\t\tisCallableMarker = {};\n\t\t// eslint-disable-next-line no-throw-literal\n\t\treflectApply(function () { throw 42; }, null, badArrayLike);\n\t} catch (_) {\n\t\tif (_ !== isCallableMarker) {\n\t\t\treflectApply = null;\n\t\t}\n\t}\n} else {\n\treflectApply = null;\n}\n\nvar constructorRegex = /^\\s*class\\b/;\nvar isES6ClassFn = function isES6ClassFunction(value) {\n\ttry {\n\t\tvar fnStr = fnToStr.call(value);\n\t\treturn constructorRegex.test(fnStr);\n\t} catch (e) {\n\t\treturn false; // not a function\n\t}\n};\n\nvar tryFunctionObject = function tryFunctionToStr(value) {\n\ttry {\n\t\tif (isES6ClassFn(value)) { return false; }\n\t\tfnToStr.call(value);\n\t\treturn true;\n\t} catch (e) {\n\t\treturn false;\n\t}\n};\nvar toStr = Object.prototype.toString;\nvar objectClass = '[object Object]';\nvar fnClass = '[object Function]';\nvar genClass = '[object GeneratorFunction]';\nvar ddaClass = '[object HTMLAllCollection]'; // IE 11\nvar ddaClass2 = '[object HTML document.all class]';\nvar ddaClass3 = '[object HTMLCollection]'; // IE 9-10\nvar hasToStringTag = typeof Symbol === 'function' && !!Symbol.toStringTag; // better: use `has-tostringtag`\n\nvar isIE68 = !(0 in [,]); // eslint-disable-line no-sparse-arrays, comma-spacing\n\nvar isDDA = function isDocumentDotAll() { return false; };\nif (typeof document === 'object') {\n\t// Firefox 3 canonicalizes DDA to undefined when it's not accessed directly\n\tvar all = document.all;\n\tif (toStr.call(all) === toStr.call(document.all)) {\n\t\tisDDA = function isDocumentDotAll(value) {\n\t\t\t/* globals document: false */\n\t\t\t// in IE 6-8, typeof document.all is \"object\" and it's truthy\n\t\t\tif ((isIE68 || !value) && (typeof value === 'undefined' || typeof value === 'object')) {\n\t\t\t\ttry {\n\t\t\t\t\tvar str = toStr.call(value);\n\t\t\t\t\treturn (\n\t\t\t\t\t\tstr === ddaClass\n\t\t\t\t\t\t|| str === ddaClass2\n\t\t\t\t\t\t|| str === ddaClass3 // opera 12.16\n\t\t\t\t\t\t|| str === objectClass // IE 6-8\n\t\t\t\t\t) && value('') == null; // eslint-disable-line eqeqeq\n\t\t\t\t} catch (e) { /**/ }\n\t\t\t}\n\t\t\treturn false;\n\t\t};\n\t}\n}\n\nmodule.exports = reflectApply\n\t? function isCallable(value) {\n\t\tif (isDDA(value)) { return true; }\n\t\tif (!value) { return false; }\n\t\tif (typeof value !== 'function' && typeof value !== 'object') { return false; }\n\t\ttry {\n\t\t\treflectApply(value, null, badArrayLike);\n\t\t} catch (e) {\n\t\t\tif (e !== isCallableMarker) { return false; }\n\t\t}\n\t\treturn !isES6ClassFn(value) && tryFunctionObject(value);\n\t}\n\t: function isCallable(value) {\n\t\tif (isDDA(value)) { return true; }\n\t\tif (!value) { return false; }\n\t\tif (typeof value !== 'function' && typeof value !== 'object') { return false; }\n\t\tif (hasToStringTag) { return tryFunctionObject(value); }\n\t\tif (isES6ClassFn(value)) { return false; }\n\t\tvar strClass = toStr.call(value);\n\t\tif (strClass !== fnClass && strClass !== genClass && !(/^\\[object HTML/).test(strClass)) { return false; }\n\t\treturn tryFunctionObject(value);\n\t};\n","'use strict';\n\nvar toStr = Object.prototype.toString;\nvar fnToStr = Function.prototype.toString;\nvar isFnRegex = /^\\s*(?:function)?\\*/;\nvar hasToStringTag = require('has-tostringtag/shams')();\nvar getProto = Object.getPrototypeOf;\nvar getGeneratorFunc = function () { // eslint-disable-line consistent-return\n\tif (!hasToStringTag) {\n\t\treturn false;\n\t}\n\ttry {\n\t\treturn Function('return function*() {}')();\n\t} catch (e) {\n\t}\n};\nvar GeneratorFunction;\n\nmodule.exports = function isGeneratorFunction(fn) {\n\tif (typeof fn !== 'function') {\n\t\treturn false;\n\t}\n\tif (isFnRegex.test(fnToStr.call(fn))) {\n\t\treturn true;\n\t}\n\tif (!hasToStringTag) {\n\t\tvar str = toStr.call(fn);\n\t\treturn str === '[object GeneratorFunction]';\n\t}\n\tif (!getProto) {\n\t\treturn false;\n\t}\n\tif (typeof GeneratorFunction === 'undefined') {\n\t\tvar generatorFunc = getGeneratorFunc();\n\t\tGeneratorFunction = generatorFunc ? getProto(generatorFunc) : false;\n\t}\n\treturn getProto(fn) === GeneratorFunction;\n};\n","'use strict';\n\n/* http://www.ecma-international.org/ecma-262/6.0/#sec-number.isnan */\n\nmodule.exports = function isNaN(value) {\n\treturn value !== value;\n};\n","'use strict';\n\nvar callBind = require('call-bind');\nvar define = require('define-properties');\n\nvar implementation = require('./implementation');\nvar getPolyfill = require('./polyfill');\nvar shim = require('./shim');\n\nvar polyfill = callBind(getPolyfill(), Number);\n\n/* http://www.ecma-international.org/ecma-262/6.0/#sec-number.isnan */\n\ndefine(polyfill, {\n\tgetPolyfill: getPolyfill,\n\timplementation: implementation,\n\tshim: shim\n});\n\nmodule.exports = polyfill;\n","'use strict';\n\nvar implementation = require('./implementation');\n\nmodule.exports = function getPolyfill() {\n\tif (Number.isNaN && Number.isNaN(NaN) && !Number.isNaN('a')) {\n\t\treturn Number.isNaN;\n\t}\n\treturn implementation;\n};\n","'use strict';\n\nvar define = require('define-properties');\nvar getPolyfill = require('./polyfill');\n\n/* http://www.ecma-international.org/ecma-262/6.0/#sec-number.isnan */\n\nmodule.exports = function shimNumberIsNaN() {\n\tvar polyfill = getPolyfill();\n\tdefine(Number, { isNaN: polyfill }, {\n\t\tisNaN: function testIsNaN() {\n\t\t\treturn Number.isNaN !== polyfill;\n\t\t}\n\t});\n\treturn polyfill;\n};\n","'use strict';\n\nvar whichTypedArray = require('which-typed-array');\n\nmodule.exports = function isTypedArray(value) {\n\treturn !!whichTypedArray(value);\n};\n","'use strict';\n\nvar numberIsNaN = function (value) {\n\treturn value !== value;\n};\n\nmodule.exports = function is(a, b) {\n\tif (a === 0 && b === 0) {\n\t\treturn 1 / a === 1 / b;\n\t}\n\tif (a === b) {\n\t\treturn true;\n\t}\n\tif (numberIsNaN(a) && numberIsNaN(b)) {\n\t\treturn true;\n\t}\n\treturn false;\n};\n\n","'use strict';\n\nvar define = require('define-properties');\nvar callBind = require('call-bind');\n\nvar implementation = require('./implementation');\nvar getPolyfill = require('./polyfill');\nvar shim = require('./shim');\n\nvar polyfill = callBind(getPolyfill(), Object);\n\ndefine(polyfill, {\n\tgetPolyfill: getPolyfill,\n\timplementation: implementation,\n\tshim: shim\n});\n\nmodule.exports = polyfill;\n","'use strict';\n\nvar implementation = require('./implementation');\n\nmodule.exports = function getPolyfill() {\n\treturn typeof Object.is === 'function' ? Object.is : implementation;\n};\n","'use strict';\n\nvar getPolyfill = require('./polyfill');\nvar define = require('define-properties');\n\nmodule.exports = function shimObjectIs() {\n\tvar polyfill = getPolyfill();\n\tdefine(Object, { is: polyfill }, {\n\t\tis: function testObjectIs() {\n\t\t\treturn Object.is !== polyfill;\n\t\t}\n\t});\n\treturn polyfill;\n};\n","'use strict';\n\nvar keysShim;\nif (!Object.keys) {\n\t// modified from https://github.com/es-shims/es5-shim\n\tvar has = Object.prototype.hasOwnProperty;\n\tvar toStr = Object.prototype.toString;\n\tvar isArgs = require('./isArguments'); // eslint-disable-line global-require\n\tvar isEnumerable = Object.prototype.propertyIsEnumerable;\n\tvar hasDontEnumBug = !isEnumerable.call({ toString: null }, 'toString');\n\tvar hasProtoEnumBug = isEnumerable.call(function () {}, 'prototype');\n\tvar dontEnums = [\n\t\t'toString',\n\t\t'toLocaleString',\n\t\t'valueOf',\n\t\t'hasOwnProperty',\n\t\t'isPrototypeOf',\n\t\t'propertyIsEnumerable',\n\t\t'constructor'\n\t];\n\tvar equalsConstructorPrototype = function (o) {\n\t\tvar ctor = o.constructor;\n\t\treturn ctor && ctor.prototype === o;\n\t};\n\tvar excludedKeys = {\n\t\t$applicationCache: true,\n\t\t$console: true,\n\t\t$external: true,\n\t\t$frame: true,\n\t\t$frameElement: true,\n\t\t$frames: true,\n\t\t$innerHeight: true,\n\t\t$innerWidth: true,\n\t\t$onmozfullscreenchange: true,\n\t\t$onmozfullscreenerror: true,\n\t\t$outerHeight: true,\n\t\t$outerWidth: true,\n\t\t$pageXOffset: true,\n\t\t$pageYOffset: true,\n\t\t$parent: true,\n\t\t$scrollLeft: true,\n\t\t$scrollTop: true,\n\t\t$scrollX: true,\n\t\t$scrollY: true,\n\t\t$self: true,\n\t\t$webkitIndexedDB: true,\n\t\t$webkitStorageInfo: true,\n\t\t$window: true\n\t};\n\tvar hasAutomationEqualityBug = (function () {\n\t\t/* global window */\n\t\tif (typeof window === 'undefined') { return false; }\n\t\tfor (var k in window) {\n\t\t\ttry {\n\t\t\t\tif (!excludedKeys['$' + k] && has.call(window, k) && window[k] !== null && typeof window[k] === 'object') {\n\t\t\t\t\ttry {\n\t\t\t\t\t\tequalsConstructorPrototype(window[k]);\n\t\t\t\t\t} catch (e) {\n\t\t\t\t\t\treturn true;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} catch (e) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\t\treturn false;\n\t}());\n\tvar equalsConstructorPrototypeIfNotBuggy = function (o) {\n\t\t/* global window */\n\t\tif (typeof window === 'undefined' || !hasAutomationEqualityBug) {\n\t\t\treturn equalsConstructorPrototype(o);\n\t\t}\n\t\ttry {\n\t\t\treturn equalsConstructorPrototype(o);\n\t\t} catch (e) {\n\t\t\treturn false;\n\t\t}\n\t};\n\n\tkeysShim = function keys(object) {\n\t\tvar isObject = object !== null && typeof object === 'object';\n\t\tvar isFunction = toStr.call(object) === '[object Function]';\n\t\tvar isArguments = isArgs(object);\n\t\tvar isString = isObject && toStr.call(object) === '[object String]';\n\t\tvar theKeys = [];\n\n\t\tif (!isObject && !isFunction && !isArguments) {\n\t\t\tthrow new TypeError('Object.keys called on a non-object');\n\t\t}\n\n\t\tvar skipProto = hasProtoEnumBug && isFunction;\n\t\tif (isString && object.length > 0 && !has.call(object, 0)) {\n\t\t\tfor (var i = 0; i < object.length; ++i) {\n\t\t\t\ttheKeys.push(String(i));\n\t\t\t}\n\t\t}\n\n\t\tif (isArguments && object.length > 0) {\n\t\t\tfor (var j = 0; j < object.length; ++j) {\n\t\t\t\ttheKeys.push(String(j));\n\t\t\t}\n\t\t} else {\n\t\t\tfor (var name in object) {\n\t\t\t\tif (!(skipProto && name === 'prototype') && has.call(object, name)) {\n\t\t\t\t\ttheKeys.push(String(name));\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tif (hasDontEnumBug) {\n\t\t\tvar skipConstructor = equalsConstructorPrototypeIfNotBuggy(object);\n\n\t\t\tfor (var k = 0; k < dontEnums.length; ++k) {\n\t\t\t\tif (!(skipConstructor && dontEnums[k] === 'constructor') && has.call(object, dontEnums[k])) {\n\t\t\t\t\ttheKeys.push(dontEnums[k]);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn theKeys;\n\t};\n}\nmodule.exports = keysShim;\n","'use strict';\n\nvar slice = Array.prototype.slice;\nvar isArgs = require('./isArguments');\n\nvar origKeys = Object.keys;\nvar keysShim = origKeys ? function keys(o) { return origKeys(o); } : require('./implementation');\n\nvar originalKeys = Object.keys;\n\nkeysShim.shim = function shimObjectKeys() {\n\tif (Object.keys) {\n\t\tvar keysWorksWithArguments = (function () {\n\t\t\t// Safari 5.0 bug\n\t\t\tvar args = Object.keys(arguments);\n\t\t\treturn args && args.length === arguments.length;\n\t\t}(1, 2));\n\t\tif (!keysWorksWithArguments) {\n\t\t\tObject.keys = function keys(object) { // eslint-disable-line func-name-matching\n\t\t\t\tif (isArgs(object)) {\n\t\t\t\t\treturn originalKeys(slice.call(object));\n\t\t\t\t}\n\t\t\t\treturn originalKeys(object);\n\t\t\t};\n\t\t}\n\t} else {\n\t\tObject.keys = keysShim;\n\t}\n\treturn Object.keys || keysShim;\n};\n\nmodule.exports = keysShim;\n","'use strict';\n\nvar toStr = Object.prototype.toString;\n\nmodule.exports = function isArguments(value) {\n\tvar str = toStr.call(value);\n\tvar isArgs = str === '[object Arguments]';\n\tif (!isArgs) {\n\t\tisArgs = str !== '[object Array]' &&\n\t\t\tvalue !== null &&\n\t\t\ttypeof value === 'object' &&\n\t\t\ttypeof value.length === 'number' &&\n\t\t\tvalue.length >= 0 &&\n\t\t\ttoStr.call(value.callee) === '[object Function]';\n\t}\n\treturn isArgs;\n};\n","'use strict';\n\n// modified from https://github.com/es-shims/es6-shim\nvar objectKeys = require('object-keys');\nvar hasSymbols = require('has-symbols/shams')();\nvar callBound = require('call-bind/callBound');\nvar toObject = Object;\nvar $push = callBound('Array.prototype.push');\nvar $propIsEnumerable = callBound('Object.prototype.propertyIsEnumerable');\nvar originalGetSymbols = hasSymbols ? Object.getOwnPropertySymbols : null;\n\n// eslint-disable-next-line no-unused-vars\nmodule.exports = function assign(target, source1) {\n\tif (target == null) { throw new TypeError('target must be an object'); }\n\tvar to = toObject(target); // step 1\n\tif (arguments.length === 1) {\n\t\treturn to; // step 2\n\t}\n\tfor (var s = 1; s < arguments.length; ++s) {\n\t\tvar from = toObject(arguments[s]); // step 3.a.i\n\n\t\t// step 3.a.ii:\n\t\tvar keys = objectKeys(from);\n\t\tvar getSymbols = hasSymbols && (Object.getOwnPropertySymbols || originalGetSymbols);\n\t\tif (getSymbols) {\n\t\t\tvar syms = getSymbols(from);\n\t\t\tfor (var j = 0; j < syms.length; ++j) {\n\t\t\t\tvar key = syms[j];\n\t\t\t\tif ($propIsEnumerable(from, key)) {\n\t\t\t\t\t$push(keys, key);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t// step 3.a.iii:\n\t\tfor (var i = 0; i < keys.length; ++i) {\n\t\t\tvar nextKey = keys[i];\n\t\t\tif ($propIsEnumerable(from, nextKey)) { // step 3.a.iii.2\n\t\t\t\tvar propValue = from[nextKey]; // step 3.a.iii.2.a\n\t\t\t\tto[nextKey] = propValue; // step 3.a.iii.2.b\n\t\t\t}\n\t\t}\n\t}\n\n\treturn to; // step 4\n};\n","'use strict';\n\nvar implementation = require('./implementation');\n\nvar lacksProperEnumerationOrder = function () {\n\tif (!Object.assign) {\n\t\treturn false;\n\t}\n\t/*\n\t * v8, specifically in node 4.x, has a bug with incorrect property enumeration order\n\t * note: this does not detect the bug unless there's 20 characters\n\t */\n\tvar str = 'abcdefghijklmnopqrst';\n\tvar letters = str.split('');\n\tvar map = {};\n\tfor (var i = 0; i < letters.length; ++i) {\n\t\tmap[letters[i]] = letters[i];\n\t}\n\tvar obj = Object.assign({}, map);\n\tvar actual = '';\n\tfor (var k in obj) {\n\t\tactual += k;\n\t}\n\treturn str !== actual;\n};\n\nvar assignHasPendingExceptions = function () {\n\tif (!Object.assign || !Object.preventExtensions) {\n\t\treturn false;\n\t}\n\t/*\n\t * Firefox 37 still has \"pending exception\" logic in its Object.assign implementation,\n\t * which is 72% slower than our shim, and Firefox 40's native implementation.\n\t */\n\tvar thrower = Object.preventExtensions({ 1: 2 });\n\ttry {\n\t\tObject.assign(thrower, 'xy');\n\t} catch (e) {\n\t\treturn thrower[1] === 'y';\n\t}\n\treturn false;\n};\n\nmodule.exports = function getPolyfill() {\n\tif (!Object.assign) {\n\t\treturn implementation;\n\t}\n\tif (lacksProperEnumerationOrder()) {\n\t\treturn implementation;\n\t}\n\tif (assignHasPendingExceptions()) {\n\t\treturn implementation;\n\t}\n\treturn Object.assign;\n};\n","// shim for using process in browser\nvar process = module.exports = {};\n\n// cached from whatever global is present so that test runners that stub it\n// don't break things. But we need to wrap it in a try catch in case it is\n// wrapped in strict mode code which doesn't define any globals. It's inside a\n// function because try/catches deoptimize in certain engines.\n\nvar cachedSetTimeout;\nvar cachedClearTimeout;\n\nfunction defaultSetTimout() {\n throw new Error('setTimeout has not been defined');\n}\nfunction defaultClearTimeout () {\n throw new Error('clearTimeout has not been defined');\n}\n(function () {\n try {\n if (typeof setTimeout === 'function') {\n cachedSetTimeout = setTimeout;\n } else {\n cachedSetTimeout = defaultSetTimout;\n }\n } catch (e) {\n cachedSetTimeout = defaultSetTimout;\n }\n try {\n if (typeof clearTimeout === 'function') {\n cachedClearTimeout = clearTimeout;\n } else {\n cachedClearTimeout = defaultClearTimeout;\n }\n } catch (e) {\n cachedClearTimeout = defaultClearTimeout;\n }\n} ())\nfunction runTimeout(fun) {\n if (cachedSetTimeout === setTimeout) {\n //normal enviroments in sane situations\n return setTimeout(fun, 0);\n }\n // if setTimeout wasn't available but was latter defined\n if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {\n cachedSetTimeout = setTimeout;\n return setTimeout(fun, 0);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedSetTimeout(fun, 0);\n } catch(e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedSetTimeout.call(null, fun, 0);\n } catch(e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error\n return cachedSetTimeout.call(this, fun, 0);\n }\n }\n\n\n}\nfunction runClearTimeout(marker) {\n if (cachedClearTimeout === clearTimeout) {\n //normal enviroments in sane situations\n return clearTimeout(marker);\n }\n // if clearTimeout wasn't available but was latter defined\n if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {\n cachedClearTimeout = clearTimeout;\n return clearTimeout(marker);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedClearTimeout(marker);\n } catch (e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedClearTimeout.call(null, marker);\n } catch (e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.\n // Some versions of I.E. have different rules for clearTimeout vs setTimeout\n return cachedClearTimeout.call(this, marker);\n }\n }\n\n\n\n}\nvar queue = [];\nvar draining = false;\nvar currentQueue;\nvar queueIndex = -1;\n\nfunction cleanUpNextTick() {\n if (!draining || !currentQueue) {\n return;\n }\n draining = false;\n if (currentQueue.length) {\n queue = currentQueue.concat(queue);\n } else {\n queueIndex = -1;\n }\n if (queue.length) {\n drainQueue();\n }\n}\n\nfunction drainQueue() {\n if (draining) {\n return;\n }\n var timeout = runTimeout(cleanUpNextTick);\n draining = true;\n\n var len = queue.length;\n while(len) {\n currentQueue = queue;\n queue = [];\n while (++queueIndex < len) {\n if (currentQueue) {\n currentQueue[queueIndex].run();\n }\n }\n queueIndex = -1;\n len = queue.length;\n }\n currentQueue = null;\n draining = false;\n runClearTimeout(timeout);\n}\n\nprocess.nextTick = function (fun) {\n var args = new Array(arguments.length - 1);\n if (arguments.length > 1) {\n for (var i = 1; i < arguments.length; i++) {\n args[i - 1] = arguments[i];\n }\n }\n queue.push(new Item(fun, args));\n if (queue.length === 1 && !draining) {\n runTimeout(drainQueue);\n }\n};\n\n// v8 likes predictible objects\nfunction Item(fun, array) {\n this.fun = fun;\n this.array = array;\n}\nItem.prototype.run = function () {\n this.fun.apply(null, this.array);\n};\nprocess.title = 'browser';\nprocess.browser = true;\nprocess.env = {};\nprocess.argv = [];\nprocess.version = ''; // empty string to avoid regexp issues\nprocess.versions = {};\n\nfunction noop() {}\n\nprocess.on = noop;\nprocess.addListener = noop;\nprocess.once = noop;\nprocess.off = noop;\nprocess.removeListener = noop;\nprocess.removeAllListeners = noop;\nprocess.emit = noop;\nprocess.prependListener = noop;\nprocess.prependOnceListener = noop;\n\nprocess.listeners = function (name) { return [] }\n\nprocess.binding = function (name) {\n throw new Error('process.binding is not supported');\n};\n\nprocess.cwd = function () { return '/' };\nprocess.chdir = function (dir) {\n throw new Error('process.chdir is not supported');\n};\nprocess.umask = function() { return 0; };\n","'use strict';\n\nvar GetIntrinsic = require('get-intrinsic');\nvar define = require('define-data-property');\nvar hasDescriptors = require('has-property-descriptors')();\nvar gOPD = require('gopd');\n\nvar $TypeError = GetIntrinsic('%TypeError%');\nvar $floor = GetIntrinsic('%Math.floor%');\n\nmodule.exports = function setFunctionLength(fn, length) {\n\tif (typeof fn !== 'function') {\n\t\tthrow new $TypeError('`fn` is not a function');\n\t}\n\tif (typeof length !== 'number' || length < 0 || length > 0xFFFFFFFF || $floor(length) !== length) {\n\t\tthrow new $TypeError('`length` must be a positive 32-bit integer');\n\t}\n\n\tvar loose = arguments.length > 2 && !!arguments[2];\n\n\tvar functionLengthIsConfigurable = true;\n\tvar functionLengthIsWritable = true;\n\tif ('length' in fn && gOPD) {\n\t\tvar desc = gOPD(fn, 'length');\n\t\tif (desc && !desc.configurable) {\n\t\t\tfunctionLengthIsConfigurable = false;\n\t\t}\n\t\tif (desc && !desc.writable) {\n\t\t\tfunctionLengthIsWritable = false;\n\t\t}\n\t}\n\n\tif (functionLengthIsConfigurable || functionLengthIsWritable || !loose) {\n\t\tif (hasDescriptors) {\n\t\t\tdefine(fn, 'length', length, true, true);\n\t\t} else {\n\t\t\tdefine(fn, 'length', length);\n\t\t}\n\t}\n\treturn fn;\n};\n","module.exports = function isBuffer(arg) {\n return arg && typeof arg === 'object'\n && typeof arg.copy === 'function'\n && typeof arg.fill === 'function'\n && typeof arg.readUInt8 === 'function';\n}","// Currently in sync with Node.js lib/internal/util/types.js\n// https://github.com/nodejs/node/commit/112cc7c27551254aa2b17098fb774867f05ed0d9\n\n'use strict';\n\nvar isArgumentsObject = require('is-arguments');\nvar isGeneratorFunction = require('is-generator-function');\nvar whichTypedArray = require('which-typed-array');\nvar isTypedArray = require('is-typed-array');\n\nfunction uncurryThis(f) {\n return f.call.bind(f);\n}\n\nvar BigIntSupported = typeof BigInt !== 'undefined';\nvar SymbolSupported = typeof Symbol !== 'undefined';\n\nvar ObjectToString = uncurryThis(Object.prototype.toString);\n\nvar numberValue = uncurryThis(Number.prototype.valueOf);\nvar stringValue = uncurryThis(String.prototype.valueOf);\nvar booleanValue = uncurryThis(Boolean.prototype.valueOf);\n\nif (BigIntSupported) {\n var bigIntValue = uncurryThis(BigInt.prototype.valueOf);\n}\n\nif (SymbolSupported) {\n var symbolValue = uncurryThis(Symbol.prototype.valueOf);\n}\n\nfunction checkBoxedPrimitive(value, prototypeValueOf) {\n if (typeof value !== 'object') {\n return false;\n }\n try {\n prototypeValueOf(value);\n return true;\n } catch(e) {\n return false;\n }\n}\n\nexports.isArgumentsObject = isArgumentsObject;\nexports.isGeneratorFunction = isGeneratorFunction;\nexports.isTypedArray = isTypedArray;\n\n// Taken from here and modified for better browser support\n// https://github.com/sindresorhus/p-is-promise/blob/cda35a513bda03f977ad5cde3a079d237e82d7ef/index.js\nfunction isPromise(input) {\n\treturn (\n\t\t(\n\t\t\ttypeof Promise !== 'undefined' &&\n\t\t\tinput instanceof Promise\n\t\t) ||\n\t\t(\n\t\t\tinput !== null &&\n\t\t\ttypeof input === 'object' &&\n\t\t\ttypeof input.then === 'function' &&\n\t\t\ttypeof input.catch === 'function'\n\t\t)\n\t);\n}\nexports.isPromise = isPromise;\n\nfunction isArrayBufferView(value) {\n if (typeof ArrayBuffer !== 'undefined' && ArrayBuffer.isView) {\n return ArrayBuffer.isView(value);\n }\n\n return (\n isTypedArray(value) ||\n isDataView(value)\n );\n}\nexports.isArrayBufferView = isArrayBufferView;\n\n\nfunction isUint8Array(value) {\n return whichTypedArray(value) === 'Uint8Array';\n}\nexports.isUint8Array = isUint8Array;\n\nfunction isUint8ClampedArray(value) {\n return whichTypedArray(value) === 'Uint8ClampedArray';\n}\nexports.isUint8ClampedArray = isUint8ClampedArray;\n\nfunction isUint16Array(value) {\n return whichTypedArray(value) === 'Uint16Array';\n}\nexports.isUint16Array = isUint16Array;\n\nfunction isUint32Array(value) {\n return whichTypedArray(value) === 'Uint32Array';\n}\nexports.isUint32Array = isUint32Array;\n\nfunction isInt8Array(value) {\n return whichTypedArray(value) === 'Int8Array';\n}\nexports.isInt8Array = isInt8Array;\n\nfunction isInt16Array(value) {\n return whichTypedArray(value) === 'Int16Array';\n}\nexports.isInt16Array = isInt16Array;\n\nfunction isInt32Array(value) {\n return whichTypedArray(value) === 'Int32Array';\n}\nexports.isInt32Array = isInt32Array;\n\nfunction isFloat32Array(value) {\n return whichTypedArray(value) === 'Float32Array';\n}\nexports.isFloat32Array = isFloat32Array;\n\nfunction isFloat64Array(value) {\n return whichTypedArray(value) === 'Float64Array';\n}\nexports.isFloat64Array = isFloat64Array;\n\nfunction isBigInt64Array(value) {\n return whichTypedArray(value) === 'BigInt64Array';\n}\nexports.isBigInt64Array = isBigInt64Array;\n\nfunction isBigUint64Array(value) {\n return whichTypedArray(value) === 'BigUint64Array';\n}\nexports.isBigUint64Array = isBigUint64Array;\n\nfunction isMapToString(value) {\n return ObjectToString(value) === '[object Map]';\n}\nisMapToString.working = (\n typeof Map !== 'undefined' &&\n isMapToString(new Map())\n);\n\nfunction isMap(value) {\n if (typeof Map === 'undefined') {\n return false;\n }\n\n return isMapToString.working\n ? isMapToString(value)\n : value instanceof Map;\n}\nexports.isMap = isMap;\n\nfunction isSetToString(value) {\n return ObjectToString(value) === '[object Set]';\n}\nisSetToString.working = (\n typeof Set !== 'undefined' &&\n isSetToString(new Set())\n);\nfunction isSet(value) {\n if (typeof Set === 'undefined') {\n return false;\n }\n\n return isSetToString.working\n ? isSetToString(value)\n : value instanceof Set;\n}\nexports.isSet = isSet;\n\nfunction isWeakMapToString(value) {\n return ObjectToString(value) === '[object WeakMap]';\n}\nisWeakMapToString.working = (\n typeof WeakMap !== 'undefined' &&\n isWeakMapToString(new WeakMap())\n);\nfunction isWeakMap(value) {\n if (typeof WeakMap === 'undefined') {\n return false;\n }\n\n return isWeakMapToString.working\n ? isWeakMapToString(value)\n : value instanceof WeakMap;\n}\nexports.isWeakMap = isWeakMap;\n\nfunction isWeakSetToString(value) {\n return ObjectToString(value) === '[object WeakSet]';\n}\nisWeakSetToString.working = (\n typeof WeakSet !== 'undefined' &&\n isWeakSetToString(new WeakSet())\n);\nfunction isWeakSet(value) {\n return isWeakSetToString(value);\n}\nexports.isWeakSet = isWeakSet;\n\nfunction isArrayBufferToString(value) {\n return ObjectToString(value) === '[object ArrayBuffer]';\n}\nisArrayBufferToString.working = (\n typeof ArrayBuffer !== 'undefined' &&\n isArrayBufferToString(new ArrayBuffer())\n);\nfunction isArrayBuffer(value) {\n if (typeof ArrayBuffer === 'undefined') {\n return false;\n }\n\n return isArrayBufferToString.working\n ? isArrayBufferToString(value)\n : value instanceof ArrayBuffer;\n}\nexports.isArrayBuffer = isArrayBuffer;\n\nfunction isDataViewToString(value) {\n return ObjectToString(value) === '[object DataView]';\n}\nisDataViewToString.working = (\n typeof ArrayBuffer !== 'undefined' &&\n typeof DataView !== 'undefined' &&\n isDataViewToString(new DataView(new ArrayBuffer(1), 0, 1))\n);\nfunction isDataView(value) {\n if (typeof DataView === 'undefined') {\n return false;\n }\n\n return isDataViewToString.working\n ? isDataViewToString(value)\n : value instanceof DataView;\n}\nexports.isDataView = isDataView;\n\n// Store a copy of SharedArrayBuffer in case it's deleted elsewhere\nvar SharedArrayBufferCopy = typeof SharedArrayBuffer !== 'undefined' ? SharedArrayBuffer : undefined;\nfunction isSharedArrayBufferToString(value) {\n return ObjectToString(value) === '[object SharedArrayBuffer]';\n}\nfunction isSharedArrayBuffer(value) {\n if (typeof SharedArrayBufferCopy === 'undefined') {\n return false;\n }\n\n if (typeof isSharedArrayBufferToString.working === 'undefined') {\n isSharedArrayBufferToString.working = isSharedArrayBufferToString(new SharedArrayBufferCopy());\n }\n\n return isSharedArrayBufferToString.working\n ? isSharedArrayBufferToString(value)\n : value instanceof SharedArrayBufferCopy;\n}\nexports.isSharedArrayBuffer = isSharedArrayBuffer;\n\nfunction isAsyncFunction(value) {\n return ObjectToString(value) === '[object AsyncFunction]';\n}\nexports.isAsyncFunction = isAsyncFunction;\n\nfunction isMapIterator(value) {\n return ObjectToString(value) === '[object Map Iterator]';\n}\nexports.isMapIterator = isMapIterator;\n\nfunction isSetIterator(value) {\n return ObjectToString(value) === '[object Set Iterator]';\n}\nexports.isSetIterator = isSetIterator;\n\nfunction isGeneratorObject(value) {\n return ObjectToString(value) === '[object Generator]';\n}\nexports.isGeneratorObject = isGeneratorObject;\n\nfunction isWebAssemblyCompiledModule(value) {\n return ObjectToString(value) === '[object WebAssembly.Module]';\n}\nexports.isWebAssemblyCompiledModule = isWebAssemblyCompiledModule;\n\nfunction isNumberObject(value) {\n return checkBoxedPrimitive(value, numberValue);\n}\nexports.isNumberObject = isNumberObject;\n\nfunction isStringObject(value) {\n return checkBoxedPrimitive(value, stringValue);\n}\nexports.isStringObject = isStringObject;\n\nfunction isBooleanObject(value) {\n return checkBoxedPrimitive(value, booleanValue);\n}\nexports.isBooleanObject = isBooleanObject;\n\nfunction isBigIntObject(value) {\n return BigIntSupported && checkBoxedPrimitive(value, bigIntValue);\n}\nexports.isBigIntObject = isBigIntObject;\n\nfunction isSymbolObject(value) {\n return SymbolSupported && checkBoxedPrimitive(value, symbolValue);\n}\nexports.isSymbolObject = isSymbolObject;\n\nfunction isBoxedPrimitive(value) {\n return (\n isNumberObject(value) ||\n isStringObject(value) ||\n isBooleanObject(value) ||\n isBigIntObject(value) ||\n isSymbolObject(value)\n );\n}\nexports.isBoxedPrimitive = isBoxedPrimitive;\n\nfunction isAnyArrayBuffer(value) {\n return typeof Uint8Array !== 'undefined' && (\n isArrayBuffer(value) ||\n isSharedArrayBuffer(value)\n );\n}\nexports.isAnyArrayBuffer = isAnyArrayBuffer;\n\n['isProxy', 'isExternal', 'isModuleNamespaceObject'].forEach(function(method) {\n Object.defineProperty(exports, method, {\n enumerable: false,\n value: function() {\n throw new Error(method + ' is not supported in userland');\n }\n });\n});\n","// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\nvar getOwnPropertyDescriptors = Object.getOwnPropertyDescriptors ||\n function getOwnPropertyDescriptors(obj) {\n var keys = Object.keys(obj);\n var descriptors = {};\n for (var i = 0; i < keys.length; i++) {\n descriptors[keys[i]] = Object.getOwnPropertyDescriptor(obj, keys[i]);\n }\n return descriptors;\n };\n\nvar formatRegExp = /%[sdj%]/g;\nexports.format = function(f) {\n if (!isString(f)) {\n var objects = [];\n for (var i = 0; i < arguments.length; i++) {\n objects.push(inspect(arguments[i]));\n }\n return objects.join(' ');\n }\n\n var i = 1;\n var args = arguments;\n var len = args.length;\n var str = String(f).replace(formatRegExp, function(x) {\n if (x === '%%') return '%';\n if (i >= len) return x;\n switch (x) {\n case '%s': return String(args[i++]);\n case '%d': return Number(args[i++]);\n case '%j':\n try {\n return JSON.stringify(args[i++]);\n } catch (_) {\n return '[Circular]';\n }\n default:\n return x;\n }\n });\n for (var x = args[i]; i < len; x = args[++i]) {\n if (isNull(x) || !isObject(x)) {\n str += ' ' + x;\n } else {\n str += ' ' + inspect(x);\n }\n }\n return str;\n};\n\n\n// Mark that a method should not be used.\n// Returns a modified function which warns once by default.\n// If --no-deprecation is set, then it is a no-op.\nexports.deprecate = function(fn, msg) {\n if (typeof process !== 'undefined' && process.noDeprecation === true) {\n return fn;\n }\n\n // Allow for deprecating things in the process of starting up.\n if (typeof process === 'undefined') {\n return function() {\n return exports.deprecate(fn, msg).apply(this, arguments);\n };\n }\n\n var warned = false;\n function deprecated() {\n if (!warned) {\n if (process.throwDeprecation) {\n throw new Error(msg);\n } else if (process.traceDeprecation) {\n console.trace(msg);\n } else {\n console.error(msg);\n }\n warned = true;\n }\n return fn.apply(this, arguments);\n }\n\n return deprecated;\n};\n\n\nvar debugs = {};\nvar debugEnvRegex = /^$/;\n\nif (process.env.NODE_DEBUG) {\n var debugEnv = process.env.NODE_DEBUG;\n debugEnv = debugEnv.replace(/[|\\\\{}()[\\]^$+?.]/g, '\\\\$&')\n .replace(/\\*/g, '.*')\n .replace(/,/g, '$|^')\n .toUpperCase();\n debugEnvRegex = new RegExp('^' + debugEnv + '$', 'i');\n}\nexports.debuglog = function(set) {\n set = set.toUpperCase();\n if (!debugs[set]) {\n if (debugEnvRegex.test(set)) {\n var pid = process.pid;\n debugs[set] = function() {\n var msg = exports.format.apply(exports, arguments);\n console.error('%s %d: %s', set, pid, msg);\n };\n } else {\n debugs[set] = function() {};\n }\n }\n return debugs[set];\n};\n\n\n/**\n * Echos the value of a value. Trys to print the value out\n * in the best way possible given the different types.\n *\n * @param {Object} obj The object to print out.\n * @param {Object} opts Optional options object that alters the output.\n */\n/* legacy: obj, showHidden, depth, colors*/\nfunction inspect(obj, opts) {\n // default options\n var ctx = {\n seen: [],\n stylize: stylizeNoColor\n };\n // legacy...\n if (arguments.length >= 3) ctx.depth = arguments[2];\n if (arguments.length >= 4) ctx.colors = arguments[3];\n if (isBoolean(opts)) {\n // legacy...\n ctx.showHidden = opts;\n } else if (opts) {\n // got an \"options\" object\n exports._extend(ctx, opts);\n }\n // set default options\n if (isUndefined(ctx.showHidden)) ctx.showHidden = false;\n if (isUndefined(ctx.depth)) ctx.depth = 2;\n if (isUndefined(ctx.colors)) ctx.colors = false;\n if (isUndefined(ctx.customInspect)) ctx.customInspect = true;\n if (ctx.colors) ctx.stylize = stylizeWithColor;\n return formatValue(ctx, obj, ctx.depth);\n}\nexports.inspect = inspect;\n\n\n// http://en.wikipedia.org/wiki/ANSI_escape_code#graphics\ninspect.colors = {\n 'bold' : [1, 22],\n 'italic' : [3, 23],\n 'underline' : [4, 24],\n 'inverse' : [7, 27],\n 'white' : [37, 39],\n 'grey' : [90, 39],\n 'black' : [30, 39],\n 'blue' : [34, 39],\n 'cyan' : [36, 39],\n 'green' : [32, 39],\n 'magenta' : [35, 39],\n 'red' : [31, 39],\n 'yellow' : [33, 39]\n};\n\n// Don't use 'blue' not visible on cmd.exe\ninspect.styles = {\n 'special': 'cyan',\n 'number': 'yellow',\n 'boolean': 'yellow',\n 'undefined': 'grey',\n 'null': 'bold',\n 'string': 'green',\n 'date': 'magenta',\n // \"name\": intentionally not styling\n 'regexp': 'red'\n};\n\n\nfunction stylizeWithColor(str, styleType) {\n var style = inspect.styles[styleType];\n\n if (style) {\n return '\\u001b[' + inspect.colors[style][0] + 'm' + str +\n '\\u001b[' + inspect.colors[style][1] + 'm';\n } else {\n return str;\n }\n}\n\n\nfunction stylizeNoColor(str, styleType) {\n return str;\n}\n\n\nfunction arrayToHash(array) {\n var hash = {};\n\n array.forEach(function(val, idx) {\n hash[val] = true;\n });\n\n return hash;\n}\n\n\nfunction formatValue(ctx, value, recurseTimes) {\n // Provide a hook for user-specified inspect functions.\n // Check that value is an object with an inspect function on it\n if (ctx.customInspect &&\n value &&\n isFunction(value.inspect) &&\n // Filter out the util module, it's inspect function is special\n value.inspect !== exports.inspect &&\n // Also filter out any prototype objects using the circular check.\n !(value.constructor && value.constructor.prototype === value)) {\n var ret = value.inspect(recurseTimes, ctx);\n if (!isString(ret)) {\n ret = formatValue(ctx, ret, recurseTimes);\n }\n return ret;\n }\n\n // Primitive types cannot have properties\n var primitive = formatPrimitive(ctx, value);\n if (primitive) {\n return primitive;\n }\n\n // Look up the keys of the object.\n var keys = Object.keys(value);\n var visibleKeys = arrayToHash(keys);\n\n if (ctx.showHidden) {\n keys = Object.getOwnPropertyNames(value);\n }\n\n // IE doesn't make error fields non-enumerable\n // http://msdn.microsoft.com/en-us/library/ie/dww52sbt(v=vs.94).aspx\n if (isError(value)\n && (keys.indexOf('message') >= 0 || keys.indexOf('description') >= 0)) {\n return formatError(value);\n }\n\n // Some type of object without properties can be shortcutted.\n if (keys.length === 0) {\n if (isFunction(value)) {\n var name = value.name ? ': ' + value.name : '';\n return ctx.stylize('[Function' + name + ']', 'special');\n }\n if (isRegExp(value)) {\n return ctx.stylize(RegExp.prototype.toString.call(value), 'regexp');\n }\n if (isDate(value)) {\n return ctx.stylize(Date.prototype.toString.call(value), 'date');\n }\n if (isError(value)) {\n return formatError(value);\n }\n }\n\n var base = '', array = false, braces = ['{', '}'];\n\n // Make Array say that they are Array\n if (isArray(value)) {\n array = true;\n braces = ['[', ']'];\n }\n\n // Make functions say that they are functions\n if (isFunction(value)) {\n var n = value.name ? ': ' + value.name : '';\n base = ' [Function' + n + ']';\n }\n\n // Make RegExps say that they are RegExps\n if (isRegExp(value)) {\n base = ' ' + RegExp.prototype.toString.call(value);\n }\n\n // Make dates with properties first say the date\n if (isDate(value)) {\n base = ' ' + Date.prototype.toUTCString.call(value);\n }\n\n // Make error with message first say the error\n if (isError(value)) {\n base = ' ' + formatError(value);\n }\n\n if (keys.length === 0 && (!array || value.length == 0)) {\n return braces[0] + base + braces[1];\n }\n\n if (recurseTimes < 0) {\n if (isRegExp(value)) {\n return ctx.stylize(RegExp.prototype.toString.call(value), 'regexp');\n } else {\n return ctx.stylize('[Object]', 'special');\n }\n }\n\n ctx.seen.push(value);\n\n var output;\n if (array) {\n output = formatArray(ctx, value, recurseTimes, visibleKeys, keys);\n } else {\n output = keys.map(function(key) {\n return formatProperty(ctx, value, recurseTimes, visibleKeys, key, array);\n });\n }\n\n ctx.seen.pop();\n\n return reduceToSingleString(output, base, braces);\n}\n\n\nfunction formatPrimitive(ctx, value) {\n if (isUndefined(value))\n return ctx.stylize('undefined', 'undefined');\n if (isString(value)) {\n var simple = '\\'' + JSON.stringify(value).replace(/^\"|\"$/g, '')\n .replace(/'/g, \"\\\\'\")\n .replace(/\\\\\"/g, '\"') + '\\'';\n return ctx.stylize(simple, 'string');\n }\n if (isNumber(value))\n return ctx.stylize('' + value, 'number');\n if (isBoolean(value))\n return ctx.stylize('' + value, 'boolean');\n // For some reason typeof null is \"object\", so special case here.\n if (isNull(value))\n return ctx.stylize('null', 'null');\n}\n\n\nfunction formatError(value) {\n return '[' + Error.prototype.toString.call(value) + ']';\n}\n\n\nfunction formatArray(ctx, value, recurseTimes, visibleKeys, keys) {\n var output = [];\n for (var i = 0, l = value.length; i < l; ++i) {\n if (hasOwnProperty(value, String(i))) {\n output.push(formatProperty(ctx, value, recurseTimes, visibleKeys,\n String(i), true));\n } else {\n output.push('');\n }\n }\n keys.forEach(function(key) {\n if (!key.match(/^\\d+$/)) {\n output.push(formatProperty(ctx, value, recurseTimes, visibleKeys,\n key, true));\n }\n });\n return output;\n}\n\n\nfunction formatProperty(ctx, value, recurseTimes, visibleKeys, key, array) {\n var name, str, desc;\n desc = Object.getOwnPropertyDescriptor(value, key) || { value: value[key] };\n if (desc.get) {\n if (desc.set) {\n str = ctx.stylize('[Getter/Setter]', 'special');\n } else {\n str = ctx.stylize('[Getter]', 'special');\n }\n } else {\n if (desc.set) {\n str = ctx.stylize('[Setter]', 'special');\n }\n }\n if (!hasOwnProperty(visibleKeys, key)) {\n name = '[' + key + ']';\n }\n if (!str) {\n if (ctx.seen.indexOf(desc.value) < 0) {\n if (isNull(recurseTimes)) {\n str = formatValue(ctx, desc.value, null);\n } else {\n str = formatValue(ctx, desc.value, recurseTimes - 1);\n }\n if (str.indexOf('\\n') > -1) {\n if (array) {\n str = str.split('\\n').map(function(line) {\n return ' ' + line;\n }).join('\\n').slice(2);\n } else {\n str = '\\n' + str.split('\\n').map(function(line) {\n return ' ' + line;\n }).join('\\n');\n }\n }\n } else {\n str = ctx.stylize('[Circular]', 'special');\n }\n }\n if (isUndefined(name)) {\n if (array && key.match(/^\\d+$/)) {\n return str;\n }\n name = JSON.stringify('' + key);\n if (name.match(/^\"([a-zA-Z_][a-zA-Z_0-9]*)\"$/)) {\n name = name.slice(1, -1);\n name = ctx.stylize(name, 'name');\n } else {\n name = name.replace(/'/g, \"\\\\'\")\n .replace(/\\\\\"/g, '\"')\n .replace(/(^\"|\"$)/g, \"'\");\n name = ctx.stylize(name, 'string');\n }\n }\n\n return name + ': ' + str;\n}\n\n\nfunction reduceToSingleString(output, base, braces) {\n var numLinesEst = 0;\n var length = output.reduce(function(prev, cur) {\n numLinesEst++;\n if (cur.indexOf('\\n') >= 0) numLinesEst++;\n return prev + cur.replace(/\\u001b\\[\\d\\d?m/g, '').length + 1;\n }, 0);\n\n if (length > 60) {\n return braces[0] +\n (base === '' ? '' : base + '\\n ') +\n ' ' +\n output.join(',\\n ') +\n ' ' +\n braces[1];\n }\n\n return braces[0] + base + ' ' + output.join(', ') + ' ' + braces[1];\n}\n\n\n// NOTE: These type checking functions intentionally don't use `instanceof`\n// because it is fragile and can be easily faked with `Object.create()`.\nexports.types = require('./support/types');\n\nfunction isArray(ar) {\n return Array.isArray(ar);\n}\nexports.isArray = isArray;\n\nfunction isBoolean(arg) {\n return typeof arg === 'boolean';\n}\nexports.isBoolean = isBoolean;\n\nfunction isNull(arg) {\n return arg === null;\n}\nexports.isNull = isNull;\n\nfunction isNullOrUndefined(arg) {\n return arg == null;\n}\nexports.isNullOrUndefined = isNullOrUndefined;\n\nfunction isNumber(arg) {\n return typeof arg === 'number';\n}\nexports.isNumber = isNumber;\n\nfunction isString(arg) {\n return typeof arg === 'string';\n}\nexports.isString = isString;\n\nfunction isSymbol(arg) {\n return typeof arg === 'symbol';\n}\nexports.isSymbol = isSymbol;\n\nfunction isUndefined(arg) {\n return arg === void 0;\n}\nexports.isUndefined = isUndefined;\n\nfunction isRegExp(re) {\n return isObject(re) && objectToString(re) === '[object RegExp]';\n}\nexports.isRegExp = isRegExp;\nexports.types.isRegExp = isRegExp;\n\nfunction isObject(arg) {\n return typeof arg === 'object' && arg !== null;\n}\nexports.isObject = isObject;\n\nfunction isDate(d) {\n return isObject(d) && objectToString(d) === '[object Date]';\n}\nexports.isDate = isDate;\nexports.types.isDate = isDate;\n\nfunction isError(e) {\n return isObject(e) &&\n (objectToString(e) === '[object Error]' || e instanceof Error);\n}\nexports.isError = isError;\nexports.types.isNativeError = isError;\n\nfunction isFunction(arg) {\n return typeof arg === 'function';\n}\nexports.isFunction = isFunction;\n\nfunction isPrimitive(arg) {\n return arg === null ||\n typeof arg === 'boolean' ||\n typeof arg === 'number' ||\n typeof arg === 'string' ||\n typeof arg === 'symbol' || // ES6 symbol\n typeof arg === 'undefined';\n}\nexports.isPrimitive = isPrimitive;\n\nexports.isBuffer = require('./support/isBuffer');\n\nfunction objectToString(o) {\n return Object.prototype.toString.call(o);\n}\n\n\nfunction pad(n) {\n return n < 10 ? '0' + n.toString(10) : n.toString(10);\n}\n\n\nvar months = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep',\n 'Oct', 'Nov', 'Dec'];\n\n// 26 Feb 16:19:34\nfunction timestamp() {\n var d = new Date();\n var time = [pad(d.getHours()),\n pad(d.getMinutes()),\n pad(d.getSeconds())].join(':');\n return [d.getDate(), months[d.getMonth()], time].join(' ');\n}\n\n\n// log is just a thin wrapper to console.log that prepends a timestamp\nexports.log = function() {\n console.log('%s - %s', timestamp(), exports.format.apply(exports, arguments));\n};\n\n\n/**\n * Inherit the prototype methods from one constructor into another.\n *\n * The Function.prototype.inherits from lang.js rewritten as a standalone\n * function (not on Function.prototype). NOTE: If this file is to be loaded\n * during bootstrapping this function needs to be rewritten using some native\n * functions as prototype setup using normal JavaScript does not work as\n * expected during bootstrapping (see mirror.js in r114903).\n *\n * @param {function} ctor Constructor function which needs to inherit the\n * prototype.\n * @param {function} superCtor Constructor function to inherit prototype from.\n */\nexports.inherits = require('inherits');\n\nexports._extend = function(origin, add) {\n // Don't do anything if add isn't an object\n if (!add || !isObject(add)) return origin;\n\n var keys = Object.keys(add);\n var i = keys.length;\n while (i--) {\n origin[keys[i]] = add[keys[i]];\n }\n return origin;\n};\n\nfunction hasOwnProperty(obj, prop) {\n return Object.prototype.hasOwnProperty.call(obj, prop);\n}\n\nvar kCustomPromisifiedSymbol = typeof Symbol !== 'undefined' ? Symbol('util.promisify.custom') : undefined;\n\nexports.promisify = function promisify(original) {\n if (typeof original !== 'function')\n throw new TypeError('The \"original\" argument must be of type Function');\n\n if (kCustomPromisifiedSymbol && original[kCustomPromisifiedSymbol]) {\n var fn = original[kCustomPromisifiedSymbol];\n if (typeof fn !== 'function') {\n throw new TypeError('The \"util.promisify.custom\" argument must be of type Function');\n }\n Object.defineProperty(fn, kCustomPromisifiedSymbol, {\n value: fn, enumerable: false, writable: false, configurable: true\n });\n return fn;\n }\n\n function fn() {\n var promiseResolve, promiseReject;\n var promise = new Promise(function (resolve, reject) {\n promiseResolve = resolve;\n promiseReject = reject;\n });\n\n var args = [];\n for (var i = 0; i < arguments.length; i++) {\n args.push(arguments[i]);\n }\n args.push(function (err, value) {\n if (err) {\n promiseReject(err);\n } else {\n promiseResolve(value);\n }\n });\n\n try {\n original.apply(this, args);\n } catch (err) {\n promiseReject(err);\n }\n\n return promise;\n }\n\n Object.setPrototypeOf(fn, Object.getPrototypeOf(original));\n\n if (kCustomPromisifiedSymbol) Object.defineProperty(fn, kCustomPromisifiedSymbol, {\n value: fn, enumerable: false, writable: false, configurable: true\n });\n return Object.defineProperties(\n fn,\n getOwnPropertyDescriptors(original)\n );\n}\n\nexports.promisify.custom = kCustomPromisifiedSymbol\n\nfunction callbackifyOnRejected(reason, cb) {\n // `!reason` guard inspired by bluebird (Ref: https://goo.gl/t5IS6M).\n // Because `null` is a special error value in callbacks which means \"no error\n // occurred\", we error-wrap so the callback consumer can distinguish between\n // \"the promise rejected with null\" or \"the promise fulfilled with undefined\".\n if (!reason) {\n var newReason = new Error('Promise was rejected with a falsy value');\n newReason.reason = reason;\n reason = newReason;\n }\n return cb(reason);\n}\n\nfunction callbackify(original) {\n if (typeof original !== 'function') {\n throw new TypeError('The \"original\" argument must be of type Function');\n }\n\n // We DO NOT return the promise as it gives the user a false sense that\n // the promise is actually somehow related to the callback's execution\n // and that the callback throwing will reject the promise.\n function callbackified() {\n var args = [];\n for (var i = 0; i < arguments.length; i++) {\n args.push(arguments[i]);\n }\n\n var maybeCb = args.pop();\n if (typeof maybeCb !== 'function') {\n throw new TypeError('The last argument must be of type Function');\n }\n var self = this;\n var cb = function() {\n return maybeCb.apply(self, arguments);\n };\n // In true node style we process the callback on `nextTick` with all the\n // implications (stack, `uncaughtException`, `async_hooks`)\n original.apply(this, args)\n .then(function(ret) { process.nextTick(cb.bind(null, null, ret)) },\n function(rej) { process.nextTick(callbackifyOnRejected.bind(null, rej, cb)) });\n }\n\n Object.setPrototypeOf(callbackified, Object.getPrototypeOf(original));\n Object.defineProperties(callbackified,\n getOwnPropertyDescriptors(original));\n return callbackified;\n}\nexports.callbackify = callbackify;\n","/*!\n * Vue.js v2.7.15\n * (c) 2014-2023 Evan You\n * Released under the MIT License.\n */\nvar emptyObject = Object.freeze({});\nvar isArray = Array.isArray;\n// These helpers produce better VM code in JS engines due to their\n// explicitness and function inlining.\nfunction isUndef(v) {\n return v === undefined || v === null;\n}\nfunction isDef(v) {\n return v !== undefined && v !== null;\n}\nfunction isTrue(v) {\n return v === true;\n}\nfunction isFalse(v) {\n return v === false;\n}\n/**\n * Check if value is primitive.\n */\nfunction isPrimitive(value) {\n return (typeof value === 'string' ||\n typeof value === 'number' ||\n // $flow-disable-line\n typeof value === 'symbol' ||\n typeof value === 'boolean');\n}\nfunction isFunction(value) {\n return typeof value === 'function';\n}\n/**\n * Quick object check - this is primarily used to tell\n * objects from primitive values when we know the value\n * is a JSON-compliant type.\n */\nfunction isObject(obj) {\n return obj !== null && typeof obj === 'object';\n}\n/**\n * Get the raw type string of a value, e.g., [object Object].\n */\nvar _toString = Object.prototype.toString;\nfunction toRawType(value) {\n return _toString.call(value).slice(8, -1);\n}\n/**\n * Strict object type check. Only returns true\n * for plain JavaScript objects.\n */\nfunction isPlainObject(obj) {\n return _toString.call(obj) === '[object Object]';\n}\nfunction isRegExp(v) {\n return _toString.call(v) === '[object RegExp]';\n}\n/**\n * Check if val is a valid array index.\n */\nfunction isValidArrayIndex(val) {\n var n = parseFloat(String(val));\n return n >= 0 && Math.floor(n) === n && isFinite(val);\n}\nfunction isPromise(val) {\n return (isDef(val) &&\n typeof val.then === 'function' &&\n typeof val.catch === 'function');\n}\n/**\n * Convert a value to a string that is actually rendered.\n */\nfunction toString(val) {\n return val == null\n ? ''\n : Array.isArray(val) || (isPlainObject(val) && val.toString === _toString)\n ? JSON.stringify(val, null, 2)\n : String(val);\n}\n/**\n * Convert an input value to a number for persistence.\n * If the conversion fails, return original string.\n */\nfunction toNumber(val) {\n var n = parseFloat(val);\n return isNaN(n) ? val : n;\n}\n/**\n * Make a map and return a function for checking if a key\n * is in that map.\n */\nfunction makeMap(str, expectsLowerCase) {\n var map = Object.create(null);\n var list = str.split(',');\n for (var i = 0; i < list.length; i++) {\n map[list[i]] = true;\n }\n return expectsLowerCase ? function (val) { return map[val.toLowerCase()]; } : function (val) { return map[val]; };\n}\n/**\n * Check if a tag is a built-in tag.\n */\nvar isBuiltInTag = makeMap('slot,component', true);\n/**\n * Check if an attribute is a reserved attribute.\n */\nvar isReservedAttribute = makeMap('key,ref,slot,slot-scope,is');\n/**\n * Remove an item from an array.\n */\nfunction remove$2(arr, item) {\n var len = arr.length;\n if (len) {\n // fast path for the only / last item\n if (item === arr[len - 1]) {\n arr.length = len - 1;\n return;\n }\n var index = arr.indexOf(item);\n if (index > -1) {\n return arr.splice(index, 1);\n }\n }\n}\n/**\n * Check whether an object has the property.\n */\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nfunction hasOwn(obj, key) {\n return hasOwnProperty.call(obj, key);\n}\n/**\n * Create a cached version of a pure function.\n */\nfunction cached(fn) {\n var cache = Object.create(null);\n return function cachedFn(str) {\n var hit = cache[str];\n return hit || (cache[str] = fn(str));\n };\n}\n/**\n * Camelize a hyphen-delimited string.\n */\nvar camelizeRE = /-(\\w)/g;\nvar camelize = cached(function (str) {\n return str.replace(camelizeRE, function (_, c) { return (c ? c.toUpperCase() : ''); });\n});\n/**\n * Capitalize a string.\n */\nvar capitalize = cached(function (str) {\n return str.charAt(0).toUpperCase() + str.slice(1);\n});\n/**\n * Hyphenate a camelCase string.\n */\nvar hyphenateRE = /\\B([A-Z])/g;\nvar hyphenate = cached(function (str) {\n return str.replace(hyphenateRE, '-$1').toLowerCase();\n});\n/**\n * Simple bind polyfill for environments that do not support it,\n * e.g., PhantomJS 1.x. Technically, we don't need this anymore\n * since native bind is now performant enough in most browsers.\n * But removing it would mean breaking code that was able to run in\n * PhantomJS 1.x, so this must be kept for backward compatibility.\n */\n/* istanbul ignore next */\nfunction polyfillBind(fn, ctx) {\n function boundFn(a) {\n var l = arguments.length;\n return l\n ? l > 1\n ? fn.apply(ctx, arguments)\n : fn.call(ctx, a)\n : fn.call(ctx);\n }\n boundFn._length = fn.length;\n return boundFn;\n}\nfunction nativeBind(fn, ctx) {\n return fn.bind(ctx);\n}\n// @ts-expect-error bind cannot be `undefined`\nvar bind = Function.prototype.bind ? nativeBind : polyfillBind;\n/**\n * Convert an Array-like object to a real Array.\n */\nfunction toArray(list, start) {\n start = start || 0;\n var i = list.length - start;\n var ret = new Array(i);\n while (i--) {\n ret[i] = list[i + start];\n }\n return ret;\n}\n/**\n * Mix properties into target object.\n */\nfunction extend(to, _from) {\n for (var key in _from) {\n to[key] = _from[key];\n }\n return to;\n}\n/**\n * Merge an Array of Objects into a single Object.\n */\nfunction toObject(arr) {\n var res = {};\n for (var i = 0; i < arr.length; i++) {\n if (arr[i]) {\n extend(res, arr[i]);\n }\n }\n return res;\n}\n/* eslint-disable no-unused-vars */\n/**\n * Perform no operation.\n * Stubbing args to make Flow happy without leaving useless transpiled code\n * with ...rest (https://flow.org/blog/2017/05/07/Strict-Function-Call-Arity/).\n */\nfunction noop(a, b, c) { }\n/**\n * Always return false.\n */\nvar no = function (a, b, c) { return false; };\n/* eslint-enable no-unused-vars */\n/**\n * Return the same value.\n */\nvar identity = function (_) { return _; };\n/**\n * Check if two values are loosely equal - that is,\n * if they are plain objects, do they have the same shape?\n */\nfunction looseEqual(a, b) {\n if (a === b)\n return true;\n var isObjectA = isObject(a);\n var isObjectB = isObject(b);\n if (isObjectA && isObjectB) {\n try {\n var isArrayA = Array.isArray(a);\n var isArrayB = Array.isArray(b);\n if (isArrayA && isArrayB) {\n return (a.length === b.length &&\n a.every(function (e, i) {\n return looseEqual(e, b[i]);\n }));\n }\n else if (a instanceof Date && b instanceof Date) {\n return a.getTime() === b.getTime();\n }\n else if (!isArrayA && !isArrayB) {\n var keysA = Object.keys(a);\n var keysB = Object.keys(b);\n return (keysA.length === keysB.length &&\n keysA.every(function (key) {\n return looseEqual(a[key], b[key]);\n }));\n }\n else {\n /* istanbul ignore next */\n return false;\n }\n }\n catch (e) {\n /* istanbul ignore next */\n return false;\n }\n }\n else if (!isObjectA && !isObjectB) {\n return String(a) === String(b);\n }\n else {\n return false;\n }\n}\n/**\n * Return the first index at which a loosely equal value can be\n * found in the array (if value is a plain object, the array must\n * contain an object of the same shape), or -1 if it is not present.\n */\nfunction looseIndexOf(arr, val) {\n for (var i = 0; i < arr.length; i++) {\n if (looseEqual(arr[i], val))\n return i;\n }\n return -1;\n}\n/**\n * Ensure a function is called only once.\n */\nfunction once(fn) {\n var called = false;\n return function () {\n if (!called) {\n called = true;\n fn.apply(this, arguments);\n }\n };\n}\n// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is#polyfill\nfunction hasChanged(x, y) {\n if (x === y) {\n return x === 0 && 1 / x !== 1 / y;\n }\n else {\n return x === x || y === y;\n }\n}\n\nvar SSR_ATTR = 'data-server-rendered';\nvar ASSET_TYPES = ['component', 'directive', 'filter'];\nvar LIFECYCLE_HOOKS = [\n 'beforeCreate',\n 'created',\n 'beforeMount',\n 'mounted',\n 'beforeUpdate',\n 'updated',\n 'beforeDestroy',\n 'destroyed',\n 'activated',\n 'deactivated',\n 'errorCaptured',\n 'serverPrefetch',\n 'renderTracked',\n 'renderTriggered'\n];\n\nvar config = {\n /**\n * Option merge strategies (used in core/util/options)\n */\n // $flow-disable-line\n optionMergeStrategies: Object.create(null),\n /**\n * Whether to suppress warnings.\n */\n silent: false,\n /**\n * Show production mode tip message on boot?\n */\n productionTip: process.env.NODE_ENV !== 'production',\n /**\n * Whether to enable devtools\n */\n devtools: process.env.NODE_ENV !== 'production',\n /**\n * Whether to record perf\n */\n performance: false,\n /**\n * Error handler for watcher errors\n */\n errorHandler: null,\n /**\n * Warn handler for watcher warns\n */\n warnHandler: null,\n /**\n * Ignore certain custom elements\n */\n ignoredElements: [],\n /**\n * Custom user key aliases for v-on\n */\n // $flow-disable-line\n keyCodes: Object.create(null),\n /**\n * Check if a tag is reserved so that it cannot be registered as a\n * component. This is platform-dependent and may be overwritten.\n */\n isReservedTag: no,\n /**\n * Check if an attribute is reserved so that it cannot be used as a component\n * prop. This is platform-dependent and may be overwritten.\n */\n isReservedAttr: no,\n /**\n * Check if a tag is an unknown element.\n * Platform-dependent.\n */\n isUnknownElement: no,\n /**\n * Get the namespace of an element\n */\n getTagNamespace: noop,\n /**\n * Parse the real tag name for the specific platform.\n */\n parsePlatformTagName: identity,\n /**\n * Check if an attribute must be bound using property, e.g. value\n * Platform-dependent.\n */\n mustUseProp: no,\n /**\n * Perform updates asynchronously. Intended to be used by Vue Test Utils\n * This will significantly reduce performance if set to false.\n */\n async: true,\n /**\n * Exposed for legacy reasons\n */\n _lifecycleHooks: LIFECYCLE_HOOKS\n};\n\n/**\n * unicode letters used for parsing html tags, component names and property paths.\n * using https://www.w3.org/TR/html53/semantics-scripting.html#potentialcustomelementname\n * skipping \\u10000-\\uEFFFF due to it freezing up PhantomJS\n */\nvar unicodeRegExp = /a-zA-Z\\u00B7\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u203F-\\u2040\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD/;\n/**\n * Check if a string starts with $ or _\n */\nfunction isReserved(str) {\n var c = (str + '').charCodeAt(0);\n return c === 0x24 || c === 0x5f;\n}\n/**\n * Define a property.\n */\nfunction def(obj, key, val, enumerable) {\n Object.defineProperty(obj, key, {\n value: val,\n enumerable: !!enumerable,\n writable: true,\n configurable: true\n });\n}\n/**\n * Parse simple path.\n */\nvar bailRE = new RegExp(\"[^\".concat(unicodeRegExp.source, \".$_\\\\d]\"));\nfunction parsePath(path) {\n if (bailRE.test(path)) {\n return;\n }\n var segments = path.split('.');\n return function (obj) {\n for (var i = 0; i < segments.length; i++) {\n if (!obj)\n return;\n obj = obj[segments[i]];\n }\n return obj;\n };\n}\n\n// can we use __proto__?\nvar hasProto = '__proto__' in {};\n// Browser environment sniffing\nvar inBrowser = typeof window !== 'undefined';\nvar UA = inBrowser && window.navigator.userAgent.toLowerCase();\nvar isIE = UA && /msie|trident/.test(UA);\nvar isIE9 = UA && UA.indexOf('msie 9.0') > 0;\nvar isEdge = UA && UA.indexOf('edge/') > 0;\nUA && UA.indexOf('android') > 0;\nvar isIOS = UA && /iphone|ipad|ipod|ios/.test(UA);\nUA && /chrome\\/\\d+/.test(UA) && !isEdge;\nUA && /phantomjs/.test(UA);\nvar isFF = UA && UA.match(/firefox\\/(\\d+)/);\n// Firefox has a \"watch\" function on Object.prototype...\n// @ts-expect-error firebox support\nvar nativeWatch = {}.watch;\nvar supportsPassive = false;\nif (inBrowser) {\n try {\n var opts = {};\n Object.defineProperty(opts, 'passive', {\n get: function () {\n /* istanbul ignore next */\n supportsPassive = true;\n }\n }); // https://github.com/facebook/flow/issues/285\n window.addEventListener('test-passive', null, opts);\n }\n catch (e) { }\n}\n// this needs to be lazy-evaled because vue may be required before\n// vue-server-renderer can set VUE_ENV\nvar _isServer;\nvar isServerRendering = function () {\n if (_isServer === undefined) {\n /* istanbul ignore if */\n if (!inBrowser && typeof global !== 'undefined') {\n // detect presence of vue-server-renderer and avoid\n // Webpack shimming the process\n _isServer =\n global['process'] && global['process'].env.VUE_ENV === 'server';\n }\n else {\n _isServer = false;\n }\n }\n return _isServer;\n};\n// detect devtools\nvar devtools = inBrowser && window.__VUE_DEVTOOLS_GLOBAL_HOOK__;\n/* istanbul ignore next */\nfunction isNative(Ctor) {\n return typeof Ctor === 'function' && /native code/.test(Ctor.toString());\n}\nvar hasSymbol = typeof Symbol !== 'undefined' &&\n isNative(Symbol) &&\n typeof Reflect !== 'undefined' &&\n isNative(Reflect.ownKeys);\nvar _Set; // $flow-disable-line\n/* istanbul ignore if */ if (typeof Set !== 'undefined' && isNative(Set)) {\n // use native Set when available.\n _Set = Set;\n}\nelse {\n // a non-standard Set polyfill that only works with primitive keys.\n _Set = /** @class */ (function () {\n function Set() {\n this.set = Object.create(null);\n }\n Set.prototype.has = function (key) {\n return this.set[key] === true;\n };\n Set.prototype.add = function (key) {\n this.set[key] = true;\n };\n Set.prototype.clear = function () {\n this.set = Object.create(null);\n };\n return Set;\n }());\n}\n\nvar currentInstance = null;\n/**\n * This is exposed for compatibility with v3 (e.g. some functions in VueUse\n * relies on it). Do not use this internally, just use `currentInstance`.\n *\n * @internal this function needs manual type declaration because it relies\n * on previously manually authored types from Vue 2\n */\nfunction getCurrentInstance() {\n return currentInstance && { proxy: currentInstance };\n}\n/**\n * @internal\n */\nfunction setCurrentInstance(vm) {\n if (vm === void 0) { vm = null; }\n if (!vm)\n currentInstance && currentInstance._scope.off();\n currentInstance = vm;\n vm && vm._scope.on();\n}\n\n/**\n * @internal\n */\nvar VNode = /** @class */ (function () {\n function VNode(tag, data, children, text, elm, context, componentOptions, asyncFactory) {\n this.tag = tag;\n this.data = data;\n this.children = children;\n this.text = text;\n this.elm = elm;\n this.ns = undefined;\n this.context = context;\n this.fnContext = undefined;\n this.fnOptions = undefined;\n this.fnScopeId = undefined;\n this.key = data && data.key;\n this.componentOptions = componentOptions;\n this.componentInstance = undefined;\n this.parent = undefined;\n this.raw = false;\n this.isStatic = false;\n this.isRootInsert = true;\n this.isComment = false;\n this.isCloned = false;\n this.isOnce = false;\n this.asyncFactory = asyncFactory;\n this.asyncMeta = undefined;\n this.isAsyncPlaceholder = false;\n }\n Object.defineProperty(VNode.prototype, \"child\", {\n // DEPRECATED: alias for componentInstance for backwards compat.\n /* istanbul ignore next */\n get: function () {\n return this.componentInstance;\n },\n enumerable: false,\n configurable: true\n });\n return VNode;\n}());\nvar createEmptyVNode = function (text) {\n if (text === void 0) { text = ''; }\n var node = new VNode();\n node.text = text;\n node.isComment = true;\n return node;\n};\nfunction createTextVNode(val) {\n return new VNode(undefined, undefined, undefined, String(val));\n}\n// optimized shallow clone\n// used for static nodes and slot nodes because they may be reused across\n// multiple renders, cloning them avoids errors when DOM manipulations rely\n// on their elm reference.\nfunction cloneVNode(vnode) {\n var cloned = new VNode(vnode.tag, vnode.data, \n // #7975\n // clone children array to avoid mutating original in case of cloning\n // a child.\n vnode.children && vnode.children.slice(), vnode.text, vnode.elm, vnode.context, vnode.componentOptions, vnode.asyncFactory);\n cloned.ns = vnode.ns;\n cloned.isStatic = vnode.isStatic;\n cloned.key = vnode.key;\n cloned.isComment = vnode.isComment;\n cloned.fnContext = vnode.fnContext;\n cloned.fnOptions = vnode.fnOptions;\n cloned.fnScopeId = vnode.fnScopeId;\n cloned.asyncMeta = vnode.asyncMeta;\n cloned.isCloned = true;\n return cloned;\n}\n\n/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n\r\nvar __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n };\r\n return __assign.apply(this, arguments);\r\n};\n\nvar uid$2 = 0;\nvar pendingCleanupDeps = [];\nvar cleanupDeps = function () {\n for (var i = 0; i < pendingCleanupDeps.length; i++) {\n var dep = pendingCleanupDeps[i];\n dep.subs = dep.subs.filter(function (s) { return s; });\n dep._pending = false;\n }\n pendingCleanupDeps.length = 0;\n};\n/**\n * A dep is an observable that can have multiple\n * directives subscribing to it.\n * @internal\n */\nvar Dep = /** @class */ (function () {\n function Dep() {\n // pending subs cleanup\n this._pending = false;\n this.id = uid$2++;\n this.subs = [];\n }\n Dep.prototype.addSub = function (sub) {\n this.subs.push(sub);\n };\n Dep.prototype.removeSub = function (sub) {\n // #12696 deps with massive amount of subscribers are extremely slow to\n // clean up in Chromium\n // to workaround this, we unset the sub for now, and clear them on\n // next scheduler flush.\n this.subs[this.subs.indexOf(sub)] = null;\n if (!this._pending) {\n this._pending = true;\n pendingCleanupDeps.push(this);\n }\n };\n Dep.prototype.depend = function (info) {\n if (Dep.target) {\n Dep.target.addDep(this);\n if (process.env.NODE_ENV !== 'production' && info && Dep.target.onTrack) {\n Dep.target.onTrack(__assign({ effect: Dep.target }, info));\n }\n }\n };\n Dep.prototype.notify = function (info) {\n // stabilize the subscriber list first\n var subs = this.subs.filter(function (s) { return s; });\n if (process.env.NODE_ENV !== 'production' && !config.async) {\n // subs aren't sorted in scheduler if not running async\n // we need to sort them now to make sure they fire in correct\n // order\n subs.sort(function (a, b) { return a.id - b.id; });\n }\n for (var i = 0, l = subs.length; i < l; i++) {\n var sub = subs[i];\n if (process.env.NODE_ENV !== 'production' && info) {\n sub.onTrigger &&\n sub.onTrigger(__assign({ effect: subs[i] }, info));\n }\n sub.update();\n }\n };\n return Dep;\n}());\n// The current target watcher being evaluated.\n// This is globally unique because only one watcher\n// can be evaluated at a time.\nDep.target = null;\nvar targetStack = [];\nfunction pushTarget(target) {\n targetStack.push(target);\n Dep.target = target;\n}\nfunction popTarget() {\n targetStack.pop();\n Dep.target = targetStack[targetStack.length - 1];\n}\n\n/*\n * not type checking this file because flow doesn't play well with\n * dynamically accessing methods on Array prototype\n */\nvar arrayProto = Array.prototype;\nvar arrayMethods = Object.create(arrayProto);\nvar methodsToPatch = [\n 'push',\n 'pop',\n 'shift',\n 'unshift',\n 'splice',\n 'sort',\n 'reverse'\n];\n/**\n * Intercept mutating methods and emit events\n */\nmethodsToPatch.forEach(function (method) {\n // cache original method\n var original = arrayProto[method];\n def(arrayMethods, method, function mutator() {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n var result = original.apply(this, args);\n var ob = this.__ob__;\n var inserted;\n switch (method) {\n case 'push':\n case 'unshift':\n inserted = args;\n break;\n case 'splice':\n inserted = args.slice(2);\n break;\n }\n if (inserted)\n ob.observeArray(inserted);\n // notify change\n if (process.env.NODE_ENV !== 'production') {\n ob.dep.notify({\n type: \"array mutation\" /* TriggerOpTypes.ARRAY_MUTATION */,\n target: this,\n key: method\n });\n }\n else {\n ob.dep.notify();\n }\n return result;\n });\n});\n\nvar arrayKeys = Object.getOwnPropertyNames(arrayMethods);\nvar NO_INITIAL_VALUE = {};\n/**\n * In some cases we may want to disable observation inside a component's\n * update computation.\n */\nvar shouldObserve = true;\nfunction toggleObserving(value) {\n shouldObserve = value;\n}\n// ssr mock dep\nvar mockDep = {\n notify: noop,\n depend: noop,\n addSub: noop,\n removeSub: noop\n};\n/**\n * Observer class that is attached to each observed\n * object. Once attached, the observer converts the target\n * object's property keys into getter/setters that\n * collect dependencies and dispatch updates.\n */\nvar Observer = /** @class */ (function () {\n function Observer(value, shallow, mock) {\n if (shallow === void 0) { shallow = false; }\n if (mock === void 0) { mock = false; }\n this.value = value;\n this.shallow = shallow;\n this.mock = mock;\n // this.value = value\n this.dep = mock ? mockDep : new Dep();\n this.vmCount = 0;\n def(value, '__ob__', this);\n if (isArray(value)) {\n if (!mock) {\n if (hasProto) {\n value.__proto__ = arrayMethods;\n /* eslint-enable no-proto */\n }\n else {\n for (var i = 0, l = arrayKeys.length; i < l; i++) {\n var key = arrayKeys[i];\n def(value, key, arrayMethods[key]);\n }\n }\n }\n if (!shallow) {\n this.observeArray(value);\n }\n }\n else {\n /**\n * Walk through all properties and convert them into\n * getter/setters. This method should only be called when\n * value type is Object.\n */\n var keys = Object.keys(value);\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n defineReactive(value, key, NO_INITIAL_VALUE, undefined, shallow, mock);\n }\n }\n }\n /**\n * Observe a list of Array items.\n */\n Observer.prototype.observeArray = function (value) {\n for (var i = 0, l = value.length; i < l; i++) {\n observe(value[i], false, this.mock);\n }\n };\n return Observer;\n}());\n// helpers\n/**\n * Attempt to create an observer instance for a value,\n * returns the new observer if successfully observed,\n * or the existing observer if the value already has one.\n */\nfunction observe(value, shallow, ssrMockReactivity) {\n if (value && hasOwn(value, '__ob__') && value.__ob__ instanceof Observer) {\n return value.__ob__;\n }\n if (shouldObserve &&\n (ssrMockReactivity || !isServerRendering()) &&\n (isArray(value) || isPlainObject(value)) &&\n Object.isExtensible(value) &&\n !value.__v_skip /* ReactiveFlags.SKIP */ &&\n !isRef(value) &&\n !(value instanceof VNode)) {\n return new Observer(value, shallow, ssrMockReactivity);\n }\n}\n/**\n * Define a reactive property on an Object.\n */\nfunction defineReactive(obj, key, val, customSetter, shallow, mock) {\n var dep = new Dep();\n var property = Object.getOwnPropertyDescriptor(obj, key);\n if (property && property.configurable === false) {\n return;\n }\n // cater for pre-defined getter/setters\n var getter = property && property.get;\n var setter = property && property.set;\n if ((!getter || setter) &&\n (val === NO_INITIAL_VALUE || arguments.length === 2)) {\n val = obj[key];\n }\n var childOb = !shallow && observe(val, false, mock);\n Object.defineProperty(obj, key, {\n enumerable: true,\n configurable: true,\n get: function reactiveGetter() {\n var value = getter ? getter.call(obj) : val;\n if (Dep.target) {\n if (process.env.NODE_ENV !== 'production') {\n dep.depend({\n target: obj,\n type: \"get\" /* TrackOpTypes.GET */,\n key: key\n });\n }\n else {\n dep.depend();\n }\n if (childOb) {\n childOb.dep.depend();\n if (isArray(value)) {\n dependArray(value);\n }\n }\n }\n return isRef(value) && !shallow ? value.value : value;\n },\n set: function reactiveSetter(newVal) {\n var value = getter ? getter.call(obj) : val;\n if (!hasChanged(value, newVal)) {\n return;\n }\n if (process.env.NODE_ENV !== 'production' && customSetter) {\n customSetter();\n }\n if (setter) {\n setter.call(obj, newVal);\n }\n else if (getter) {\n // #7981: for accessor properties without setter\n return;\n }\n else if (!shallow && isRef(value) && !isRef(newVal)) {\n value.value = newVal;\n return;\n }\n else {\n val = newVal;\n }\n childOb = !shallow && observe(newVal, false, mock);\n if (process.env.NODE_ENV !== 'production') {\n dep.notify({\n type: \"set\" /* TriggerOpTypes.SET */,\n target: obj,\n key: key,\n newValue: newVal,\n oldValue: value\n });\n }\n else {\n dep.notify();\n }\n }\n });\n return dep;\n}\nfunction set(target, key, val) {\n if (process.env.NODE_ENV !== 'production' && (isUndef(target) || isPrimitive(target))) {\n warn(\"Cannot set reactive property on undefined, null, or primitive value: \".concat(target));\n }\n if (isReadonly(target)) {\n process.env.NODE_ENV !== 'production' && warn(\"Set operation on key \\\"\".concat(key, \"\\\" failed: target is readonly.\"));\n return;\n }\n var ob = target.__ob__;\n if (isArray(target) && isValidArrayIndex(key)) {\n target.length = Math.max(target.length, key);\n target.splice(key, 1, val);\n // when mocking for SSR, array methods are not hijacked\n if (ob && !ob.shallow && ob.mock) {\n observe(val, false, true);\n }\n return val;\n }\n if (key in target && !(key in Object.prototype)) {\n target[key] = val;\n return val;\n }\n if (target._isVue || (ob && ob.vmCount)) {\n process.env.NODE_ENV !== 'production' &&\n warn('Avoid adding reactive properties to a Vue instance or its root $data ' +\n 'at runtime - declare it upfront in the data option.');\n return val;\n }\n if (!ob) {\n target[key] = val;\n return val;\n }\n defineReactive(ob.value, key, val, undefined, ob.shallow, ob.mock);\n if (process.env.NODE_ENV !== 'production') {\n ob.dep.notify({\n type: \"add\" /* TriggerOpTypes.ADD */,\n target: target,\n key: key,\n newValue: val,\n oldValue: undefined\n });\n }\n else {\n ob.dep.notify();\n }\n return val;\n}\nfunction del(target, key) {\n if (process.env.NODE_ENV !== 'production' && (isUndef(target) || isPrimitive(target))) {\n warn(\"Cannot delete reactive property on undefined, null, or primitive value: \".concat(target));\n }\n if (isArray(target) && isValidArrayIndex(key)) {\n target.splice(key, 1);\n return;\n }\n var ob = target.__ob__;\n if (target._isVue || (ob && ob.vmCount)) {\n process.env.NODE_ENV !== 'production' &&\n warn('Avoid deleting properties on a Vue instance or its root $data ' +\n '- just set it to null.');\n return;\n }\n if (isReadonly(target)) {\n process.env.NODE_ENV !== 'production' &&\n warn(\"Delete operation on key \\\"\".concat(key, \"\\\" failed: target is readonly.\"));\n return;\n }\n if (!hasOwn(target, key)) {\n return;\n }\n delete target[key];\n if (!ob) {\n return;\n }\n if (process.env.NODE_ENV !== 'production') {\n ob.dep.notify({\n type: \"delete\" /* TriggerOpTypes.DELETE */,\n target: target,\n key: key\n });\n }\n else {\n ob.dep.notify();\n }\n}\n/**\n * Collect dependencies on array elements when the array is touched, since\n * we cannot intercept array element access like property getters.\n */\nfunction dependArray(value) {\n for (var e = void 0, i = 0, l = value.length; i < l; i++) {\n e = value[i];\n if (e && e.__ob__) {\n e.__ob__.dep.depend();\n }\n if (isArray(e)) {\n dependArray(e);\n }\n }\n}\n\nfunction reactive(target) {\n makeReactive(target, false);\n return target;\n}\n/**\n * Return a shallowly-reactive copy of the original object, where only the root\n * level properties are reactive. It also does not auto-unwrap refs (even at the\n * root level).\n */\nfunction shallowReactive(target) {\n makeReactive(target, true);\n def(target, \"__v_isShallow\" /* ReactiveFlags.IS_SHALLOW */, true);\n return target;\n}\nfunction makeReactive(target, shallow) {\n // if trying to observe a readonly proxy, return the readonly version.\n if (!isReadonly(target)) {\n if (process.env.NODE_ENV !== 'production') {\n if (isArray(target)) {\n warn(\"Avoid using Array as root value for \".concat(shallow ? \"shallowReactive()\" : \"reactive()\", \" as it cannot be tracked in watch() or watchEffect(). Use \").concat(shallow ? \"shallowRef()\" : \"ref()\", \" instead. This is a Vue-2-only limitation.\"));\n }\n var existingOb = target && target.__ob__;\n if (existingOb && existingOb.shallow !== shallow) {\n warn(\"Target is already a \".concat(existingOb.shallow ? \"\" : \"non-\", \"shallow reactive object, and cannot be converted to \").concat(shallow ? \"\" : \"non-\", \"shallow.\"));\n }\n }\n var ob = observe(target, shallow, isServerRendering() /* ssr mock reactivity */);\n if (process.env.NODE_ENV !== 'production' && !ob) {\n if (target == null || isPrimitive(target)) {\n warn(\"value cannot be made reactive: \".concat(String(target)));\n }\n if (isCollectionType(target)) {\n warn(\"Vue 2 does not support reactive collection types such as Map or Set.\");\n }\n }\n }\n}\nfunction isReactive(value) {\n if (isReadonly(value)) {\n return isReactive(value[\"__v_raw\" /* ReactiveFlags.RAW */]);\n }\n return !!(value && value.__ob__);\n}\nfunction isShallow(value) {\n return !!(value && value.__v_isShallow);\n}\nfunction isReadonly(value) {\n return !!(value && value.__v_isReadonly);\n}\nfunction isProxy(value) {\n return isReactive(value) || isReadonly(value);\n}\nfunction toRaw(observed) {\n var raw = observed && observed[\"__v_raw\" /* ReactiveFlags.RAW */];\n return raw ? toRaw(raw) : observed;\n}\nfunction markRaw(value) {\n // non-extensible objects won't be observed anyway\n if (Object.isExtensible(value)) {\n def(value, \"__v_skip\" /* ReactiveFlags.SKIP */, true);\n }\n return value;\n}\n/**\n * @internal\n */\nfunction isCollectionType(value) {\n var type = toRawType(value);\n return (type === 'Map' || type === 'WeakMap' || type === 'Set' || type === 'WeakSet');\n}\n\n/**\n * @internal\n */\nvar RefFlag = \"__v_isRef\";\nfunction isRef(r) {\n return !!(r && r.__v_isRef === true);\n}\nfunction ref$1(value) {\n return createRef(value, false);\n}\nfunction shallowRef(value) {\n return createRef(value, true);\n}\nfunction createRef(rawValue, shallow) {\n if (isRef(rawValue)) {\n return rawValue;\n }\n var ref = {};\n def(ref, RefFlag, true);\n def(ref, \"__v_isShallow\" /* ReactiveFlags.IS_SHALLOW */, shallow);\n def(ref, 'dep', defineReactive(ref, 'value', rawValue, null, shallow, isServerRendering()));\n return ref;\n}\nfunction triggerRef(ref) {\n if (process.env.NODE_ENV !== 'production' && !ref.dep) {\n warn(\"received object is not a triggerable ref.\");\n }\n if (process.env.NODE_ENV !== 'production') {\n ref.dep &&\n ref.dep.notify({\n type: \"set\" /* TriggerOpTypes.SET */,\n target: ref,\n key: 'value'\n });\n }\n else {\n ref.dep && ref.dep.notify();\n }\n}\nfunction unref(ref) {\n return isRef(ref) ? ref.value : ref;\n}\nfunction proxyRefs(objectWithRefs) {\n if (isReactive(objectWithRefs)) {\n return objectWithRefs;\n }\n var proxy = {};\n var keys = Object.keys(objectWithRefs);\n for (var i = 0; i < keys.length; i++) {\n proxyWithRefUnwrap(proxy, objectWithRefs, keys[i]);\n }\n return proxy;\n}\nfunction proxyWithRefUnwrap(target, source, key) {\n Object.defineProperty(target, key, {\n enumerable: true,\n configurable: true,\n get: function () {\n var val = source[key];\n if (isRef(val)) {\n return val.value;\n }\n else {\n var ob = val && val.__ob__;\n if (ob)\n ob.dep.depend();\n return val;\n }\n },\n set: function (value) {\n var oldValue = source[key];\n if (isRef(oldValue) && !isRef(value)) {\n oldValue.value = value;\n }\n else {\n source[key] = value;\n }\n }\n });\n}\nfunction customRef(factory) {\n var dep = new Dep();\n var _a = factory(function () {\n if (process.env.NODE_ENV !== 'production') {\n dep.depend({\n target: ref,\n type: \"get\" /* TrackOpTypes.GET */,\n key: 'value'\n });\n }\n else {\n dep.depend();\n }\n }, function () {\n if (process.env.NODE_ENV !== 'production') {\n dep.notify({\n target: ref,\n type: \"set\" /* TriggerOpTypes.SET */,\n key: 'value'\n });\n }\n else {\n dep.notify();\n }\n }), get = _a.get, set = _a.set;\n var ref = {\n get value() {\n return get();\n },\n set value(newVal) {\n set(newVal);\n }\n };\n def(ref, RefFlag, true);\n return ref;\n}\nfunction toRefs(object) {\n if (process.env.NODE_ENV !== 'production' && !isReactive(object)) {\n warn(\"toRefs() expects a reactive object but received a plain one.\");\n }\n var ret = isArray(object) ? new Array(object.length) : {};\n for (var key in object) {\n ret[key] = toRef(object, key);\n }\n return ret;\n}\nfunction toRef(object, key, defaultValue) {\n var val = object[key];\n if (isRef(val)) {\n return val;\n }\n var ref = {\n get value() {\n var val = object[key];\n return val === undefined ? defaultValue : val;\n },\n set value(newVal) {\n object[key] = newVal;\n }\n };\n def(ref, RefFlag, true);\n return ref;\n}\n\nvar rawToReadonlyFlag = \"__v_rawToReadonly\";\nvar rawToShallowReadonlyFlag = \"__v_rawToShallowReadonly\";\nfunction readonly(target) {\n return createReadonly(target, false);\n}\nfunction createReadonly(target, shallow) {\n if (!isPlainObject(target)) {\n if (process.env.NODE_ENV !== 'production') {\n if (isArray(target)) {\n warn(\"Vue 2 does not support readonly arrays.\");\n }\n else if (isCollectionType(target)) {\n warn(\"Vue 2 does not support readonly collection types such as Map or Set.\");\n }\n else {\n warn(\"value cannot be made readonly: \".concat(typeof target));\n }\n }\n return target;\n }\n if (process.env.NODE_ENV !== 'production' && !Object.isExtensible(target)) {\n warn(\"Vue 2 does not support creating readonly proxy for non-extensible object.\");\n }\n // already a readonly object\n if (isReadonly(target)) {\n return target;\n }\n // already has a readonly proxy\n var existingFlag = shallow ? rawToShallowReadonlyFlag : rawToReadonlyFlag;\n var existingProxy = target[existingFlag];\n if (existingProxy) {\n return existingProxy;\n }\n var proxy = Object.create(Object.getPrototypeOf(target));\n def(target, existingFlag, proxy);\n def(proxy, \"__v_isReadonly\" /* ReactiveFlags.IS_READONLY */, true);\n def(proxy, \"__v_raw\" /* ReactiveFlags.RAW */, target);\n if (isRef(target)) {\n def(proxy, RefFlag, true);\n }\n if (shallow || isShallow(target)) {\n def(proxy, \"__v_isShallow\" /* ReactiveFlags.IS_SHALLOW */, true);\n }\n var keys = Object.keys(target);\n for (var i = 0; i < keys.length; i++) {\n defineReadonlyProperty(proxy, target, keys[i], shallow);\n }\n return proxy;\n}\nfunction defineReadonlyProperty(proxy, target, key, shallow) {\n Object.defineProperty(proxy, key, {\n enumerable: true,\n configurable: true,\n get: function () {\n var val = target[key];\n return shallow || !isPlainObject(val) ? val : readonly(val);\n },\n set: function () {\n process.env.NODE_ENV !== 'production' &&\n warn(\"Set operation on key \\\"\".concat(key, \"\\\" failed: target is readonly.\"));\n }\n });\n}\n/**\n * Returns a reactive-copy of the original object, where only the root level\n * properties are readonly, and does NOT unwrap refs nor recursively convert\n * returned properties.\n * This is used for creating the props proxy object for stateful components.\n */\nfunction shallowReadonly(target) {\n return createReadonly(target, true);\n}\n\nfunction computed(getterOrOptions, debugOptions) {\n var getter;\n var setter;\n var onlyGetter = isFunction(getterOrOptions);\n if (onlyGetter) {\n getter = getterOrOptions;\n setter = process.env.NODE_ENV !== 'production'\n ? function () {\n warn('Write operation failed: computed value is readonly');\n }\n : noop;\n }\n else {\n getter = getterOrOptions.get;\n setter = getterOrOptions.set;\n }\n var watcher = isServerRendering()\n ? null\n : new Watcher(currentInstance, getter, noop, { lazy: true });\n if (process.env.NODE_ENV !== 'production' && watcher && debugOptions) {\n watcher.onTrack = debugOptions.onTrack;\n watcher.onTrigger = debugOptions.onTrigger;\n }\n var ref = {\n // some libs rely on the presence effect for checking computed refs\n // from normal refs, but the implementation doesn't matter\n effect: watcher,\n get value() {\n if (watcher) {\n if (watcher.dirty) {\n watcher.evaluate();\n }\n if (Dep.target) {\n if (process.env.NODE_ENV !== 'production' && Dep.target.onTrack) {\n Dep.target.onTrack({\n effect: Dep.target,\n target: ref,\n type: \"get\" /* TrackOpTypes.GET */,\n key: 'value'\n });\n }\n watcher.depend();\n }\n return watcher.value;\n }\n else {\n return getter();\n }\n },\n set value(newVal) {\n setter(newVal);\n }\n };\n def(ref, RefFlag, true);\n def(ref, \"__v_isReadonly\" /* ReactiveFlags.IS_READONLY */, onlyGetter);\n return ref;\n}\n\nvar WATCHER = \"watcher\";\nvar WATCHER_CB = \"\".concat(WATCHER, \" callback\");\nvar WATCHER_GETTER = \"\".concat(WATCHER, \" getter\");\nvar WATCHER_CLEANUP = \"\".concat(WATCHER, \" cleanup\");\n// Simple effect.\nfunction watchEffect(effect, options) {\n return doWatch(effect, null, options);\n}\nfunction watchPostEffect(effect, options) {\n return doWatch(effect, null, (process.env.NODE_ENV !== 'production'\n ? __assign(__assign({}, options), { flush: 'post' }) : { flush: 'post' }));\n}\nfunction watchSyncEffect(effect, options) {\n return doWatch(effect, null, (process.env.NODE_ENV !== 'production'\n ? __assign(__assign({}, options), { flush: 'sync' }) : { flush: 'sync' }));\n}\n// initial value for watchers to trigger on undefined initial values\nvar INITIAL_WATCHER_VALUE = {};\n// implementation\nfunction watch(source, cb, options) {\n if (process.env.NODE_ENV !== 'production' && typeof cb !== 'function') {\n warn(\"`watch(fn, options?)` signature has been moved to a separate API. \" +\n \"Use `watchEffect(fn, options?)` instead. `watch` now only \" +\n \"supports `watch(source, cb, options?) signature.\");\n }\n return doWatch(source, cb, options);\n}\nfunction doWatch(source, cb, _a) {\n var _b = _a === void 0 ? emptyObject : _a, immediate = _b.immediate, deep = _b.deep, _c = _b.flush, flush = _c === void 0 ? 'pre' : _c, onTrack = _b.onTrack, onTrigger = _b.onTrigger;\n if (process.env.NODE_ENV !== 'production' && !cb) {\n if (immediate !== undefined) {\n warn(\"watch() \\\"immediate\\\" option is only respected when using the \" +\n \"watch(source, callback, options?) signature.\");\n }\n if (deep !== undefined) {\n warn(\"watch() \\\"deep\\\" option is only respected when using the \" +\n \"watch(source, callback, options?) signature.\");\n }\n }\n var warnInvalidSource = function (s) {\n warn(\"Invalid watch source: \".concat(s, \". A watch source can only be a getter/effect \") +\n \"function, a ref, a reactive object, or an array of these types.\");\n };\n var instance = currentInstance;\n var call = function (fn, type, args) {\n if (args === void 0) { args = null; }\n return invokeWithErrorHandling(fn, null, args, instance, type);\n };\n var getter;\n var forceTrigger = false;\n var isMultiSource = false;\n if (isRef(source)) {\n getter = function () { return source.value; };\n forceTrigger = isShallow(source);\n }\n else if (isReactive(source)) {\n getter = function () {\n source.__ob__.dep.depend();\n return source;\n };\n deep = true;\n }\n else if (isArray(source)) {\n isMultiSource = true;\n forceTrigger = source.some(function (s) { return isReactive(s) || isShallow(s); });\n getter = function () {\n return source.map(function (s) {\n if (isRef(s)) {\n return s.value;\n }\n else if (isReactive(s)) {\n return traverse(s);\n }\n else if (isFunction(s)) {\n return call(s, WATCHER_GETTER);\n }\n else {\n process.env.NODE_ENV !== 'production' && warnInvalidSource(s);\n }\n });\n };\n }\n else if (isFunction(source)) {\n if (cb) {\n // getter with cb\n getter = function () { return call(source, WATCHER_GETTER); };\n }\n else {\n // no cb -> simple effect\n getter = function () {\n if (instance && instance._isDestroyed) {\n return;\n }\n if (cleanup) {\n cleanup();\n }\n return call(source, WATCHER, [onCleanup]);\n };\n }\n }\n else {\n getter = noop;\n process.env.NODE_ENV !== 'production' && warnInvalidSource(source);\n }\n if (cb && deep) {\n var baseGetter_1 = getter;\n getter = function () { return traverse(baseGetter_1()); };\n }\n var cleanup;\n var onCleanup = function (fn) {\n cleanup = watcher.onStop = function () {\n call(fn, WATCHER_CLEANUP);\n };\n };\n // in SSR there is no need to setup an actual effect, and it should be noop\n // unless it's eager\n if (isServerRendering()) {\n // we will also not call the invalidate callback (+ runner is not set up)\n onCleanup = noop;\n if (!cb) {\n getter();\n }\n else if (immediate) {\n call(cb, WATCHER_CB, [\n getter(),\n isMultiSource ? [] : undefined,\n onCleanup\n ]);\n }\n return noop;\n }\n var watcher = new Watcher(currentInstance, getter, noop, {\n lazy: true\n });\n watcher.noRecurse = !cb;\n var oldValue = isMultiSource ? [] : INITIAL_WATCHER_VALUE;\n // overwrite default run\n watcher.run = function () {\n if (!watcher.active) {\n return;\n }\n if (cb) {\n // watch(source, cb)\n var newValue = watcher.get();\n if (deep ||\n forceTrigger ||\n (isMultiSource\n ? newValue.some(function (v, i) {\n return hasChanged(v, oldValue[i]);\n })\n : hasChanged(newValue, oldValue))) {\n // cleanup before running cb again\n if (cleanup) {\n cleanup();\n }\n call(cb, WATCHER_CB, [\n newValue,\n // pass undefined as the old value when it's changed for the first time\n oldValue === INITIAL_WATCHER_VALUE ? undefined : oldValue,\n onCleanup\n ]);\n oldValue = newValue;\n }\n }\n else {\n // watchEffect\n watcher.get();\n }\n };\n if (flush === 'sync') {\n watcher.update = watcher.run;\n }\n else if (flush === 'post') {\n watcher.post = true;\n watcher.update = function () { return queueWatcher(watcher); };\n }\n else {\n // pre\n watcher.update = function () {\n if (instance && instance === currentInstance && !instance._isMounted) {\n // pre-watcher triggered before\n var buffer = instance._preWatchers || (instance._preWatchers = []);\n if (buffer.indexOf(watcher) < 0)\n buffer.push(watcher);\n }\n else {\n queueWatcher(watcher);\n }\n };\n }\n if (process.env.NODE_ENV !== 'production') {\n watcher.onTrack = onTrack;\n watcher.onTrigger = onTrigger;\n }\n // initial run\n if (cb) {\n if (immediate) {\n watcher.run();\n }\n else {\n oldValue = watcher.get();\n }\n }\n else if (flush === 'post' && instance) {\n instance.$once('hook:mounted', function () { return watcher.get(); });\n }\n else {\n watcher.get();\n }\n return function () {\n watcher.teardown();\n };\n}\n\nvar activeEffectScope;\nvar EffectScope = /** @class */ (function () {\n function EffectScope(detached) {\n if (detached === void 0) { detached = false; }\n this.detached = detached;\n /**\n * @internal\n */\n this.active = true;\n /**\n * @internal\n */\n this.effects = [];\n /**\n * @internal\n */\n this.cleanups = [];\n this.parent = activeEffectScope;\n if (!detached && activeEffectScope) {\n this.index =\n (activeEffectScope.scopes || (activeEffectScope.scopes = [])).push(this) - 1;\n }\n }\n EffectScope.prototype.run = function (fn) {\n if (this.active) {\n var currentEffectScope = activeEffectScope;\n try {\n activeEffectScope = this;\n return fn();\n }\n finally {\n activeEffectScope = currentEffectScope;\n }\n }\n else if (process.env.NODE_ENV !== 'production') {\n warn(\"cannot run an inactive effect scope.\");\n }\n };\n /**\n * This should only be called on non-detached scopes\n * @internal\n */\n EffectScope.prototype.on = function () {\n activeEffectScope = this;\n };\n /**\n * This should only be called on non-detached scopes\n * @internal\n */\n EffectScope.prototype.off = function () {\n activeEffectScope = this.parent;\n };\n EffectScope.prototype.stop = function (fromParent) {\n if (this.active) {\n var i = void 0, l = void 0;\n for (i = 0, l = this.effects.length; i < l; i++) {\n this.effects[i].teardown();\n }\n for (i = 0, l = this.cleanups.length; i < l; i++) {\n this.cleanups[i]();\n }\n if (this.scopes) {\n for (i = 0, l = this.scopes.length; i < l; i++) {\n this.scopes[i].stop(true);\n }\n }\n // nested scope, dereference from parent to avoid memory leaks\n if (!this.detached && this.parent && !fromParent) {\n // optimized O(1) removal\n var last = this.parent.scopes.pop();\n if (last && last !== this) {\n this.parent.scopes[this.index] = last;\n last.index = this.index;\n }\n }\n this.parent = undefined;\n this.active = false;\n }\n };\n return EffectScope;\n}());\nfunction effectScope(detached) {\n return new EffectScope(detached);\n}\n/**\n * @internal\n */\nfunction recordEffectScope(effect, scope) {\n if (scope === void 0) { scope = activeEffectScope; }\n if (scope && scope.active) {\n scope.effects.push(effect);\n }\n}\nfunction getCurrentScope() {\n return activeEffectScope;\n}\nfunction onScopeDispose(fn) {\n if (activeEffectScope) {\n activeEffectScope.cleanups.push(fn);\n }\n else if (process.env.NODE_ENV !== 'production') {\n warn(\"onScopeDispose() is called when there is no active effect scope\" +\n \" to be associated with.\");\n }\n}\n\nfunction provide(key, value) {\n if (!currentInstance) {\n if (process.env.NODE_ENV !== 'production') {\n warn(\"provide() can only be used inside setup().\");\n }\n }\n else {\n // TS doesn't allow symbol as index type\n resolveProvided(currentInstance)[key] = value;\n }\n}\nfunction resolveProvided(vm) {\n // by default an instance inherits its parent's provides object\n // but when it needs to provide values of its own, it creates its\n // own provides object using parent provides object as prototype.\n // this way in `inject` we can simply look up injections from direct\n // parent and let the prototype chain do the work.\n var existing = vm._provided;\n var parentProvides = vm.$parent && vm.$parent._provided;\n if (parentProvides === existing) {\n return (vm._provided = Object.create(parentProvides));\n }\n else {\n return existing;\n }\n}\nfunction inject(key, defaultValue, treatDefaultAsFactory) {\n if (treatDefaultAsFactory === void 0) { treatDefaultAsFactory = false; }\n // fallback to `currentRenderingInstance` so that this can be called in\n // a functional component\n var instance = currentInstance;\n if (instance) {\n // #2400\n // to support `app.use` plugins,\n // fallback to appContext's `provides` if the instance is at root\n var provides = instance.$parent && instance.$parent._provided;\n if (provides && key in provides) {\n // TS doesn't allow symbol as index type\n return provides[key];\n }\n else if (arguments.length > 1) {\n return treatDefaultAsFactory && isFunction(defaultValue)\n ? defaultValue.call(instance)\n : defaultValue;\n }\n else if (process.env.NODE_ENV !== 'production') {\n warn(\"injection \\\"\".concat(String(key), \"\\\" not found.\"));\n }\n }\n else if (process.env.NODE_ENV !== 'production') {\n warn(\"inject() can only be used inside setup() or functional components.\");\n }\n}\n\nvar normalizeEvent = cached(function (name) {\n var passive = name.charAt(0) === '&';\n name = passive ? name.slice(1) : name;\n var once = name.charAt(0) === '~'; // Prefixed last, checked first\n name = once ? name.slice(1) : name;\n var capture = name.charAt(0) === '!';\n name = capture ? name.slice(1) : name;\n return {\n name: name,\n once: once,\n capture: capture,\n passive: passive\n };\n});\nfunction createFnInvoker(fns, vm) {\n function invoker() {\n var fns = invoker.fns;\n if (isArray(fns)) {\n var cloned = fns.slice();\n for (var i = 0; i < cloned.length; i++) {\n invokeWithErrorHandling(cloned[i], null, arguments, vm, \"v-on handler\");\n }\n }\n else {\n // return handler return value for single handlers\n return invokeWithErrorHandling(fns, null, arguments, vm, \"v-on handler\");\n }\n }\n invoker.fns = fns;\n return invoker;\n}\nfunction updateListeners(on, oldOn, add, remove, createOnceHandler, vm) {\n var name, cur, old, event;\n for (name in on) {\n cur = on[name];\n old = oldOn[name];\n event = normalizeEvent(name);\n if (isUndef(cur)) {\n process.env.NODE_ENV !== 'production' &&\n warn(\"Invalid handler for event \\\"\".concat(event.name, \"\\\": got \") + String(cur), vm);\n }\n else if (isUndef(old)) {\n if (isUndef(cur.fns)) {\n cur = on[name] = createFnInvoker(cur, vm);\n }\n if (isTrue(event.once)) {\n cur = on[name] = createOnceHandler(event.name, cur, event.capture);\n }\n add(event.name, cur, event.capture, event.passive, event.params);\n }\n else if (cur !== old) {\n old.fns = cur;\n on[name] = old;\n }\n }\n for (name in oldOn) {\n if (isUndef(on[name])) {\n event = normalizeEvent(name);\n remove(event.name, oldOn[name], event.capture);\n }\n }\n}\n\nfunction mergeVNodeHook(def, hookKey, hook) {\n if (def instanceof VNode) {\n def = def.data.hook || (def.data.hook = {});\n }\n var invoker;\n var oldHook = def[hookKey];\n function wrappedHook() {\n hook.apply(this, arguments);\n // important: remove merged hook to ensure it's called only once\n // and prevent memory leak\n remove$2(invoker.fns, wrappedHook);\n }\n if (isUndef(oldHook)) {\n // no existing hook\n invoker = createFnInvoker([wrappedHook]);\n }\n else {\n /* istanbul ignore if */\n if (isDef(oldHook.fns) && isTrue(oldHook.merged)) {\n // already a merged invoker\n invoker = oldHook;\n invoker.fns.push(wrappedHook);\n }\n else {\n // existing plain hook\n invoker = createFnInvoker([oldHook, wrappedHook]);\n }\n }\n invoker.merged = true;\n def[hookKey] = invoker;\n}\n\nfunction extractPropsFromVNodeData(data, Ctor, tag) {\n // we are only extracting raw values here.\n // validation and default values are handled in the child\n // component itself.\n var propOptions = Ctor.options.props;\n if (isUndef(propOptions)) {\n return;\n }\n var res = {};\n var attrs = data.attrs, props = data.props;\n if (isDef(attrs) || isDef(props)) {\n for (var key in propOptions) {\n var altKey = hyphenate(key);\n if (process.env.NODE_ENV !== 'production') {\n var keyInLowerCase = key.toLowerCase();\n if (key !== keyInLowerCase && attrs && hasOwn(attrs, keyInLowerCase)) {\n tip(\"Prop \\\"\".concat(keyInLowerCase, \"\\\" is passed to component \") +\n \"\".concat(formatComponentName(\n // @ts-expect-error tag is string\n tag || Ctor), \", but the declared prop name is\") +\n \" \\\"\".concat(key, \"\\\". \") +\n \"Note that HTML attributes are case-insensitive and camelCased \" +\n \"props need to use their kebab-case equivalents when using in-DOM \" +\n \"templates. You should probably use \\\"\".concat(altKey, \"\\\" instead of \\\"\").concat(key, \"\\\".\"));\n }\n }\n checkProp(res, props, key, altKey, true) ||\n checkProp(res, attrs, key, altKey, false);\n }\n }\n return res;\n}\nfunction checkProp(res, hash, key, altKey, preserve) {\n if (isDef(hash)) {\n if (hasOwn(hash, key)) {\n res[key] = hash[key];\n if (!preserve) {\n delete hash[key];\n }\n return true;\n }\n else if (hasOwn(hash, altKey)) {\n res[key] = hash[altKey];\n if (!preserve) {\n delete hash[altKey];\n }\n return true;\n }\n }\n return false;\n}\n\n// The template compiler attempts to minimize the need for normalization by\n// statically analyzing the template at compile time.\n//\n// For plain HTML markup, normalization can be completely skipped because the\n// generated render function is guaranteed to return Array. There are\n// two cases where extra normalization is needed:\n// 1. When the children contains components - because a functional component\n// may return an Array instead of a single root. In this case, just a simple\n// normalization is needed - if any child is an Array, we flatten the whole\n// thing with Array.prototype.concat. It is guaranteed to be only 1-level deep\n// because functional components already normalize their own children.\nfunction simpleNormalizeChildren(children) {\n for (var i = 0; i < children.length; i++) {\n if (isArray(children[i])) {\n return Array.prototype.concat.apply([], children);\n }\n }\n return children;\n}\n// 2. When the children contains constructs that always generated nested Arrays,\n// e.g.